2025年3月,两起供应链攻击事件相继发生,攻击者将恶意软件植入热门开源工具,并借此从数万乃至更多组织中窃取敏感凭证。事件的完整影响范围预计还需数月才能完全评估。
两起攻击均以被大量组织广泛使用、并被整合进无数软件产品、应用程序及开发环境的开源项目为目标。
首先遭到攻击的是漏洞扫描工具Trivy,该工具拥有逾10万名用户和贡献者,并被嵌入数千条CI/CD流水线。随后受害的是开源JavaScript库Axios,该库每周下载量约达1亿次,运行于80%的云端及代码环境之中。
Mandiant咨询公司首席技术官查尔斯·卡马卡尔(Charles Carmakal)告诉《The Register》:"这两起事件的影响将在未来数月内持续发酵。几周前被窃取的数据,本周、下周乃至未来数月都可能被利用,波及范围将持续扩大。"
尽管两起攻击出自不同的幕后黑手——Axios攻击与朝鲜关联组织有关,Trivy攻击则源于一个被称为TeamPCP的松散黑客团伙——但二者目标相似,均展现出对开发者环境的深入了解以及高超的社会工程技术。
安全专家指出,这两起事件预示着供应链攻击的未来演变方向。
Cisco Talos外联负责人尼克·比亚西尼(Nick Biasini)表示:"我们看到越来越多的开发者成为此类攻击的目标。攻击者开始深入研究供应链和开源软件包,寻找入侵开发者的途径,以传播恶意软件或窃取数据。"
他还补充道,随着攻击者借助AI技术打造更具说服力、更具针对性的社会工程攻击,此类事件将愈发频繁。"在当今这个AI盛行的时代,加之人们普遍拥有大量公开的个人信息,构建攻击变得越来越容易。只要有足够的利益驱动,就会有大批人蜂拥而至。这次的成功,只会引来更多的效仿者。"
TeamPCP的"横冲直撞"式攻击
TeamPCP于2月下旬入侵了由Aqua Security维护的开源漏洞扫描器Trivy,并于3月16日通过二进制文件、GitHub Actions及容器镜像向其注入凭证窃取恶意软件。该恶意软件大肆收割CI/CD密钥、云端凭证、SSH密钥及Kubernetes配置文件,并在开发者机器上植入持久性后门,同时为攻击者进入其他多个开源工具提供了初始立足点。
3月23日,同一团伙利用从Trivy攻击中窃取的CI/CD密钥,将相同恶意软件注入由Checkmarx维护的开源静态分析工具KICS。数日后,TeamPCP又向Python软件包索引(PyPI)发布了LiteLLM和Telnyx的恶意版本,这两个项目均在其CI/CD流水线中使用了Trivy。
Wiz网络威胁情报团队负责人本·里德(Ben Read)表示:"我认为他们是故意盯上安全工具的。这或许是在向安全社区挑衅,又或许是他们发现了一个可乘之机——安全环境中会发生一些不寻常的事情,而这些异常往往不会被仔细审查。但更关键的一点是:这些攻击手段其实非常容易实施。"
TeamPCP最早于2025年底进入网络犯罪领域,专门针对云环境实施数据窃取和勒索攻击,风格鲜明——行动迅猛,以"横冲直撞"式的速度为核心,大量抓取数据后迅速撤离。
威胁暴露管理服务商Flare的研究人员是最早拉响警报的团队之一。去年12月,Flare详细披露了该黑客组织如何利用配置不当的Docker API、Kubernetes API、Ray面板、Redis服务器及存在漏洞的React/Next.js应用程序实施攻击。在攻陷单个工作负载后,攻击者利用所获权限在整个集群中横向移动,将窃取的数据用于勒索,并将暴露的基础设施用于挖矿、代理网络、扫描及数据托管。
安全研究人员认为,TeamPCP是一个松散的年轻人团体,以英语母语者为主,其行事风格深受网红文化和YouTube趋势影响。他们喜欢在Telegram和Discord频道上炫耀战绩,与The Com、Lapsus$、Scattered Spider及ShinyHunters等攻击团伙如出一辙。
"他们的沟通风格明显受Lapsus$影响,"里德说道,并指出该团伙在其恶意域名中嵌入了一段Rickroll恶搞视频,还在基于区块链的命令与控制基础设施中隐藏了一段秘密信息,内容写道:"感谢你不是个'氛围感研究员'。"
"他们知道有人在盯着他们看,而且他们乐在其中,刻意构建这种自我形象,"里德补充道。此外,从该团伙12月的攻击和对Trivy的入侵来看,TeamPCP"对开发者环境显然相当熟悉,而且很明显他们在借助大语言模型辅助编写部分代码"。
开发者环境通常有完善的文档记录,这使其非常适合借助大语言模型协助发现配置错误,以及编写并注入恶意代码。
"在所有四起开源项目被攻陷的案例中,他们的风格都是'横冲直撞',"里德说,"所有案例均在不到12小时内被发现。他们并不打算掩盖踪迹,也不试图找到某个高价值目标后悄然撤离。核心就是速度——拼命抓取一切,然后迅速跑路。"
逾万家组织受到波及
尽管这些攻击并不精妙,却仍积累了海量凭证——"数量之大,以至于攻击者开始主动向其他多个威胁行为者寻求协助,共同处置这批被盗凭证,"卡马卡尔说道。
据卡马卡尔透露,TeamPCP共计窃取了逾1万家组织的凭证,但这并不意味着他们已经入侵了同等数量的环境并实施了数据窃取或其他恶意行为。"逾万家组织很可能已受到波及,"他说,"令人震惊的是,这些人从大量被攻陷的端点中成功获取了数量如此庞大的凭证。"
卡马卡尔认为该团伙的攻势尚未终结。"只要他们持续利用这些凭证和密钥,就很可能继续入侵更多环境。随着每一次新的入侵,他们又能获取更多密钥和凭证,如此循环往复,直到他们主动收手、执法部门介入,或遭遇其他形式的干扰为止。"
UNC1069对Axios发动的精密攻击
就在Trivy事件发生两周后,另一起供应链攻击针对不同的开源库接踵而至。
3月31日,npm生态中使用最为广泛的HTTP客户端库之一Axios,在约三小时内沦为恶意软件的传播载体——攻击者劫持了一名维护者的账号,并将一个远程访问木马(RAT)悄然植入两个表面合法的版本发布中。
谷歌威胁情报小组(GTIG)将此次攻击归因于一个其追踪代号为UNC1069的朝鲜关联威胁行为者。
GTIG首席分析师约翰·赫尔特奎斯特(John Hultquist)表示:"朝鲜黑客在供应链攻击方面积累了丰富经验,历史上曾多次利用此类手段窃取加密货币。此次事件的完整影响范围仍不明朗,但鉴于被攻陷软件包的广泛使用程度,我们预计其影响将相当深远。"
Axios主要维护者贾森·萨曼(Jason Saayman)随后发布了一篇详细的事后复盘报告,指出此次攻击手法与谷歌今年2月发布的关于UNC1069的分析报告高度吻合,即利用AI辅助的社会工程手段,针对加密货币公司实施定制化恶意软件攻击。
攻击者冒充某公司创始人主动联系萨曼,并提前创建了该真实公司及其创始人的数字克隆。他们还搭建了一个逼真的Slack工作区,配备完整的员工资料和帖子内容,并邀请萨曼加入。
"最初联系的那位受害者收到了一份协作邀请,"里德说,"这本应是互联网应有的运作方式:来自全球各地的两个人共同协作,为更多人开发有价值的项目。但幕后操盘的,却是朝鲜。"
在取得萨曼的信任后,攻击者将其引导至一场Teams在线会议。然而当他尝试加入时,Teams提示其软件版本过旧,需要安装更新才能继续。萨曼在复盘报告中写道:"那个更新,就是远程访问木马本身。"
该恶意软件使UNC1069获得了对萨曼机器的访问权限,并借此向Axios项目推送了恶意更新。在约三小时的时间窗口内安装了被污染软件包的系统,均会下载一个窃取程序,该程序会将用户的私钥和凭证外泄至攻击者控制的服务器。
受影响的下游用户数量目前尚不明确。
比亚西尼表示:"这是一次非常复杂精密的攻击活动。攻击者为攻陷这名特定受害者付出了大量心血,而且几乎没有任何迹象能让受害者察觉到有什么不对劲。"
朝鲜犯罪团伙将开发者列为长期攻击目标
多年来,朝鲜犯罪团伙持续将开发者及有意招募开发者的公司作为打击目标,实施的国家支持的网络攻击行动涵盖加密货币盗窃、勒索软件与敲诈勒索攻击,以及IT从业者身份欺诈等多种形式。近期,他们更开始直接针对开发者个人下手,以求职面试、在线会议等为诱饵,攻陷受害者设备并窃取凭证及加密货币钱包。
里德指出:"朝鲜已经形成了一套深层次的认知飞轮——他们既有渗透进真实企业的IT工作者,也从技术层面深入理解了开发者环境的运作机制。从我们已掌握的情况以及我们对客户的预警来看:这类事件会持续发生,不会停止。"
两起供应链攻击的共同启示
这两起供应链攻击共同揭示了一个规律:攻击者永远会选择阻力最小的路径,无论是直接使用被盗凭证登录,还是对开源项目的唯一维护者实施社会工程攻击。
比亚西尼表示:"他们意识到,与其费力地硬攻这些公司,不如去针对那一两个维护某个支撑着整个互联网运转的开源软件包的个人,这样划算得多。通过攻陷这些软件包,他们就能在广泛的领域创造出大量可乘之机。"
如果说这两起事件还有什么积极意义,那便是它们"让大家对这个所有人都正在面临的被污染软件包问题产生了广泛的认知,"卡马卡尔说,"这也重新引发了关于SBOM(软件物料清单)的讨论。"SBOM本质上是一份软件组件的"成分清单",涵盖开源、第三方及自研代码。
"最关键的一步,是搞清楚自己的风险究竟在哪里,"比亚西尼表示,"一旦供应链攻击发生,你应该能够迅速判断:这个软件包在我们的环境中被用在哪里?我们潜在的感染点在哪里?作为防御者,最重要的事情是确保你拥有这些SBOM,清楚地知道这些软件包的分布情况,并尽可能快速地完成分级响应。"
比亚西尼还建议借助AI智能体来协助完成这项工作。"这正是发挥AI价值的绝佳场景,"他说,"开始部署AI智能体,用于识别这些开源项目在你们环境中的分布情况。"
关于快速检测与主动防御
所有受访安全专家均对上述供应链攻击的快速检测速度给予了肯定。"在大多数案例中,12小时以内,"里德说,"这些攻击并没有长期潜伏,悄无声息地埋伏着。"
在供应链攻击中,代码被污染与被发现之间始终存在一段时间窗口,而这段窗口恰恰为组织提供了避免将恶意软件下载到自身系统的机会。
"如果你在开发环境中设置一条规则,规定不下载任何发布时间不足24小时的版本,你就能完全绕过这些攻击,"里德说,"这说起来简单,但要持续执行却相当困难——尤其是在负责财务的Jim也开始用Claude、人人都变成了开发者的今天。"
尽管如此,结合一定时间的延迟策略、SBOM管理、清楚掌握哪些软件运行在哪些机器上以及密钥的存储位置,仍然能够帮助组织更高效地"响应和优先级排序",他补充道。
比亚西尼最后警告:"社会工程攻击不会消失,而且随着深度伪造、声音克隆和视频克隆技术的发展,情况只会越来越糟。各组织现在就应该着手规划安全口令、安全实物等身份验证机制"——他所说的"实物",是指你桌上的一件真实物品,可以在视频通话中拿起来向对方证明你的身份。
"务必现在就建立好相应的应对机制,因为很快你就会在视频通话中看到你的CEO或上司出现,要求你执行某项看似奇怪的指令。如果这些防护措施还没有到位,到时候临时搭建将会非常困难。"
Q&A
Q1:TeamPCP是如何通过Trivy发动供应链攻击的?
A:TeamPCP于2月下旬入侵了Trivy,并于3月16日通过二进制文件、GitHub Actions和容器镜像注入凭证窃取恶意软件,大肆收割CI/CD密钥、云端凭证、SSH密钥及Kubernetes配置文件,同时在开发者机器上植入持久性后门。随后,该团伙又利用从Trivy窃取的CI/CD密钥,相继攻陷了KICS、LiteLLM和Telnyx等开源项目,共计窃取了逾1万家组织的凭证。
Q2:Axios供应链攻击是怎么实施的,攻击者用了哪些手段?
A:朝鲜关联组织UNC1069冒充某公司创始人接触Axios维护者贾森·萨曼,并创建了伪造的公司数字克隆和逼真的Slack工作区。取得信任后,攻击者邀请萨曼参加Teams会议,会议中伪造"软件更新"提示,诱导其安装了远程访问木马(RAT)。攻击者随后借此推送恶意Axios版本,在约三小时内窃取了下载被污染软件包的用户的私钥和凭证。
Q3:企业如何防范开源供应链攻击?
A:安全专家建议从以下几点入手:一是建立SBOM(软件物料清单),清楚掌握各开源组件在环境中的分布情况;二是在开发环境中设置延迟策略,避免自动下载发布时间不足24小时的新版本;三是部署AI智能体,快速识别受影响软件包的使用范围;四是一旦发生攻击,能够迅速完成分级响应,确定感染点。此外,还应针对日益猖獗的社会工程攻击提前规划安全口令和实物身份验证机制。
热门跟贴