TeamPCP利用窃取的CI凭证入侵Checkmarx GitHub Actions工作流

TeamPCP威胁组织使用凭据窃取恶意软件入侵了Checkmarx公司维护的两个GitHub Actions工作流程。该恶意软件能够窃取SSH密钥、云服务凭据、CI/CD配置等敏感信息,并通过伪造域名进行数据泄露。攻击者利用被盗凭据实现级联式供应链攻击,建议用户立即轮换所有密钥和凭据,并审计工作流程日志以发现可疑活动。

云原生网络犯罪组织TeamPCP再次发起攻击,通过凭证窃取恶意软件入侵了两个新的GitHub Actions工作流。该组织此前曾发起Trivy供应链攻击。

此次被入侵的工作流均由供应链安全公司Checkmarx维护,具体包括:

checkmarx/ast-github-action

checkmarx/kics-github-action

云安全公司Sysdig报告称,在2026年3月19日入侵事件发生约四天后,他们观察到了与TeamPCP针对Aqua Security的Trivy漏洞扫描器及其相关GitHub Actions攻击中使用的相同凭证窃取程序。Trivy供应链入侵事件被追踪为CVE-2026-33634(CVSS评分:9.4)。

Sysdig表示:"这表明从Trivy入侵中窃取的凭证被用于在受影响的存储库中毒害其他操作。"

该窃取程序被称为"TeamPCP Cloud stealer",专门设计用于窃取与SSH密钥、Git、Amazon Web Services(AWS)、Google Cloud、Microsoft Azure、Kubernetes、Docker、.env文件、数据库和VPN相关的凭证和密钥,以及CI/CD配置、加密货币钱包数据和Slack、Discord webhook URL。

与Trivy案例类似,威胁行为者通过强制推送标签到包含窃取程序有效载荷("setup.sh")的恶意提交中。窃取的数据以加密档案("tpcp.tar.gz")的形式被泄露到域名"checkmarx[.]zone"(IP地址:83.142.209[.]11:443)。

新版本使用受害者的GITHUB_TOKEN创建了一个"docs-tpcp"存储库,作为在服务器泄露失败时暂存窃取数据的备份方法。在Trivy事件中,威胁行为者使用的存储库名称是"tpcp-docs"。

Sysdig指出:"对每个被毒害操作使用特定供应商的域名欺骗是一种故意的欺骗技术。分析师在审查CI/CD日志时会看到curl流量指向看似该操作自身供应商域名的地址,这降低了手动检测的可能性。"

该窃取程序的主要功能是从CI运行器内存中收集凭证,这使得操作者能够在受感染的Trivy操作在工作流中执行时提取GitHub个人访问令牌(PATs)和其他密钥。更糟糕的是,如果这些令牌对同时使用Checkmarx操作的存储库具有写入访问权限,攻击者可以利用它们推送恶意代码。

这反过来为级联供应链入侵打开了大门,其中一个被毒害的操作捕获的密钥被用于促进其他操作的毒害。

Sysdig指出:"相同的有效载荷、加密方案和tpcp.tar.gz命名约定证实这是同一威胁行为者将其影响范围扩展到初始Trivy入侵之外。代码审查和依赖扫描在这里失败了,因为恶意代码被注入到源头的可信操作中。"

根据Wiz的报告,攻击似乎是通过入侵"cx-plugins-releases"服务账户进行的,攻击者还发布了"ast-results"(版本2.53.0)和"cx-dev-assist"(版本1.7.0)Open VSX扩展的木马化版本。VS Code Marketplace版本未受影响。

扩展激活后,恶意有效载荷会检查受害者是否拥有至少一个云服务提供商的凭证,如GitHub、AWS、Google Cloud和Microsoft Azure。如果检测到任何凭证,它会从同一域名("checkmarx[.]zone")获取下一阶段的有效载荷。

Wiz研究人员Rami McCarthy、James Haughom和Benjamin Read表示:"有效载荷尝试通过npx、bunx、pnpx或yarn dlx执行。这涵盖了主要的JavaScript包管理器。检索到的包包含一个全面的凭证窃取程序。收集到的凭证随后被加密,使用与此次攻击活动其他部分相同的密钥,并以tpcp.tar.gz的形式泄露到'checkmarx[.]zone/vsx'。"

"在非CI系统上,恶意软件通过systemd用户服务安装持久性。持久性脚本每50分钟轮询一次https://checkmarx[.]zone/raw以获取额外有效载荷,如果响应包含'youtube',则有一个终止开关会中止操作。目前,该链接重定向到Queen的《The Show Must Go On》。"

为减轻威胁,建议用户立即执行以下操作:

轮换在受影响时间窗口内CI运行器可访问的所有密钥、令牌和云凭证。

审核GitHub Actions工作流运行日志中对tpcp.tar.gz、scan.aquasecurity[.]org或checkmarx[.]zone的任何引用。

搜索GitHub组织中名为"tpcp-docs"或"docs-tpcp"的存储库,这些表明通过备用机制成功泄露。

将GitHub Actions固定到完整提交SHA而不是版本标签,因为标签可以被强制推送。

监控CI运行器到可疑域名的出站网络连接。

使用IMDSv2限制CI运行器容器对实例元数据服务(IMDS)的访问。

在初始入侵后的几天里,TeamPCP行为者推送了包含相同窃取程序的恶意Trivy Docker镜像,并劫持了该公司的"aquasec-com"GitHub组织以篡改数十个内部存储库。

他们还被观察到使用恶意shell脚本针对Kubernetes集群,当检测到与伊朗时区和区域设置匹配的系统时会清除所有机器,这突出了该组织作案手法的新升级。

Q&A

Q1:TeamPCP是什么组织?他们主要做什么?

A:TeamPCP是一个云原生网络犯罪组织,专门通过凭证窃取恶意软件攻击供应链安全。他们曾发起过Trivy供应链攻击,现在又入侵了Checkmarx的GitHub Actions工作流。

Q2:TeamPCP Cloud stealer窃取程序有什么功能?

A:TeamPCP Cloud stealer专门设计用于窃取SSH密钥、Git、AWS、Google Cloud、Azure、Kubernetes、Docker等各种云服务凭证,以及CI/CD配置、加密货币钱包数据和通讯工具的webhook URL。

Q3:如何防护TeamPCP的攻击?

A:主要防护措施包括:轮换所有可能泄露的凭证和令牌,审核工作流日志查找可疑引用,将GitHub Actions固定到完整提交SHA,监控可疑网络连接,并使用IMDSv2限制元数据服务访问。

来源:The Hacker News

0赞

好文章,需要你的鼓励

2026

03/25

10:06

分享

点赞

邮件订阅