05:25:27 阅读量:104

警惕供应链投毒:伪造 Braintree NuGet 包窃取支付凭证与敏感数据

#供应链攻击 #NuGet投毒 #Braintree #支付安全 #应急响应

事件背景:供应链投毒的新变种

近期,在 .NET 开发生态中出现了一起典型的供应链攻击事件。攻击者发布了一个名为“Braintree.Net”的恶意 NuGet 程序包,试图冒充 PayPal 旗下的官方 Braintree SDK。该恶意包不仅在名称上进行混淆,还通过模拟官方 API 接口,诱导开发者在项目中引用,从而在后端静默窃取包括 PAN(主账号)、CVV、支付网关凭证以及各类生产环境敏感数据。

从我们的应急响应经验来看,这类通过“拼写抢注”(Typosquatting)进行的供应链投毒正变得越来越隐蔽。攻击者不仅利用了开发者对知名库的信任,还通过虚假下载量造假来提升恶意包的“可信度”,使得企业在进行第三方组件选型时极易中招。

攻击链深度解析:伪装与静默窃取

本次事件的攻击手法非常成熟,采用了多阶段植入与静默外传策略:

首先是伪装与诱导。攻击者通过发布大量无意义的旧版本(0.0.x)来刷高下载量,使恶意包在搜索结果中更具迷惑性。虽然其 README 文档依然指向官方 GitHub,但对于未仔细核对包名和版本的开发者来说,极易造成误安装。

其次是多维度的信息窃取。恶意包通过三个核心向量进行数据外传: 一是环境侦察,在程序集加载时,利用 DependencyInjector.Core 模块收集系统环境变量、配置文件(appsettings.json)、云服务元数据及凭证; 二是网关凭证窃取,通过钩子(Hook)拦截 BraintreeGateway 的私钥初始化,直接将商户 API 密钥发送至攻击者控制的域名; 三是支付流监控,通过 CardOperationLogger 拦截支付接口,实时抓取用户的信用卡信息。

这一环节是很多企业容易忽视的,即恶意代码往往通过“静默异常处理”来隐藏痕迹。攻击者使用了空的 catch 块,确保即使外传请求失败,程序依然能正常运行,从而避免了前端业务的报错告警。

技术手法透视

攻击者为了逃避检测,采用了多种对抗手段:

  1. XOR 混淆:部分遥测端点经过 XOR 加密,增加了静态分析的难度。
  2. 模块初始化器(Module Initializer):在代码加载阶段就完成恶意逻辑的注入,绕过了一些依赖于特定函数调用的检测机制。
  3. 关联攻击:攻击者不仅针对 Braintree,还利用相同的发布账号发布了一系列伪造的 SIPSorcery 生态组件,形成了一套完整的恶意包矩阵。

从我们的溯源分析来看,类似攻击近年来明显增加,攻击者利用 Cloudflare 等 CDN 服务隐藏真实后端 IP,使得溯源和阻断变得更加复杂。

安全建议与 Solar 经验分享

针对此类供应链攻击,Solar 应急响应团队建议企业采取以下防御措施:

  1. 严格依赖锁定:在项目中使用 NuGet 时,务必明确官方包 ID(Braintree 由 braintreepayments 发布),禁止使用来源不明的相似命名包。
  2. 强化依赖审计:定期对项目中的直接与间接依赖进行扫描,特别是关注那些版本号异常或发布时间不合理的包。
  3. 敏感信息隔离:生产环境的 API 密钥及敏感凭证应通过密钥管理服务(KMS)进行动态加载,而非直接硬编码在配置文件中,以防被恶意代码读取。
  4. 异常行为监控:重点关注生产环境中出现的非预期的出站网络连接,特别是指向未知域名的 POST 请求,这往往是数据外传的直接表现。

如果您想了解勒索病毒的最新发展趋势,或在实际业务中遇到类似安全事件,欢迎关注“Solar应急响应团队”。

全国热线:400-613-6816 官网:www.solarsecurity.cn / www.sierting.com