攻击的核心并非PHP代码本身;这些PHP库依然是无害的,没有安装钩子或恶意网络活动 。相反,攻击者向开发者的源代码仓库中注入了583个恶意GitHub Actions工作流文件(.github/workflows/*.yml)。每个受影响的包版本包含55到62个此类工作流文件 。GitHub Actions工作流是定义自动化任务(如运行测试或部署代码)的YAML文件。攻击者重新利用了这一合法的自动化基础设施。
一旦受感染仓库的分支或副本触发了工作流(例如,在push事件时),恶意的.yml文件会指示GitHub托管的Ubuntu运行器 :
43[.]228[.]157[.]68的命令与控制(C2)服务器下载扫描和利用载荷。这实际上将每个被触发的工作流变成了一个扫描和利用节点,利用GitHub的免费基础设施作为分布式攻击平台 。
此次攻击的目标是cPanel和WebHost Manager (WHM) 中的CVE-2026-41940关键漏洞 。
cpsrvd基本认证处理器中存在CRLF(回车换行)注入漏洞 。未经认证的攻击者可以发送一个包含原始换行符的精心构造的Authorization头部。这使其能够将任意属性注入到会话文件中,例如user=root和hasroot=1,从而有效在无需有效密码的情况下获得WHM接口的root级管理访问权限 。一旦在被攻陷的cPanel/WHM服务器上成功利用漏洞,后利用载荷旨在收集广泛的凭证和秘密。主要目标包括 :
窃取如此广泛的凭证表明这是一次与数据无关、机会主义地攫取受感染服务器上任何有价值访问令牌的行动 。
10个Packagist包中的583个工作流文件仅仅是初步发现。通过针对共享的DNSHook回调域名等攻击者指标和代码复用模式进行横向移动,研究人员发现了规模大得多的行动 :
这一巨大的数量差异有力地表明,攻击者攻陷了更多开发者账户和仓库,而不仅仅是单一的dinushchathurya账户 。这次攻击并非单一节点的失败,而是一次协调的、多账户的操作。The Hacker News报道了2026年5月另一起独立的、攻陷了8个包的Packagist供应链攻击,其中包含相关的恶意元素 ,这进一步凸显了该生态系统的脆弱性。
由于攻击者的基础设施并未被完全清除,该攻击活动构成了持续的威胁。攻击活动可能通过以下方式持续下去 :
43[.]228[.]157[.]68)可能仍在运行并积极接收数据 。尽管原始开发者的Packagist账户已被暂停,但匹配工作流文件的巨大数量(高达约16,000个)意味着该行动具有难以彻底清除的广泛足迹 。
基于已发布的分析,组织和开发者应立即采取以下行动 :
push或workflow_dispatch触发器上运行的。43[.]228[.]157[.]68)和已知的DNSHook回调域名的网络连接 。.github/workflows/文件,因为PHP代码本身可能干净,而攻击完全存在于CI/CD配置中 。