TanStack供应链攻击时间线——开源依赖的连锁风险
2025年曝光的TanStack供应链攻击事件,是开源软件供应链安全领域的又一起标志性案例。攻击者通过向广泛使用的JavaScript开源项目TanStack的官方npm包中植入后门代码,在全球范围内影响了数以万计的企业级应用。这起攻击的完整时间线为所有依赖开源组件的企业敲响了警钟,供应链安全已经不再是可有可无的补充选项,而是企业整体安全体系中不可忽视的核心组成部分。
TanStack是一套极其广泛用于Web应用开发的开源工具集,其React Query、React Table、React Router等组件在全球拥有数百万的周下载量,被大量企业级应用作为核心依赖引入到产品开发中。攻击者利用了开源生态中的一个典型弱点:开源项目的维护者往往面临资源不足、审核流程简化的困境,单个维护者的失误就可能影响整个供应链的安全。攻击者首先通过社交工程手段获取了项目中某个维护者的npm发布权限,随后在看似正常的代码更新提交中混入了伪装良好的恶意代码。
攻击时间线从2025年初开始,整个过程展现了攻击者高超的耐心和策划能力。第一阶段是侦察和渗透。攻击者在多个知名开源项目中长期潜伏,通过观察社区讨论、审阅代码提交记录和分析项目维护日志来深入了解项目的内部运作方式和人员构成。他们经过评估后锁定了TanStack作为攻击目标,因为其用户基数庞大、企业级依赖众多、供应链影响范围极其广泛。第二阶段是权限获取。攻击者通过精心伪造的身份与项目核心维护者建立联系,经过数月的耐心沟通和信任建设,最终通过一次看似无害的合作请求成功获得了项目的发布权限。第三阶段是后门植入。2025年2月,攻击者在一次常规版本更新中注入了一段经过精心伪装的后门代码,该代码设计巧妙,能够在运行时自动检测环境并执行从远程服务器动态下载的恶意payload。受感染的npm包在官方仓库中留存了约三周时间才被安全研究人员偶然发现。在这三周内,该版本的TanStack组件被大量企业的CI/CD流水线自动拉取和集成,下游应用在完全不知情的情况下被植入了后门程序。安全研究人员的发现过程也颇具偶然性:一名安全工程师在日常代码审查中注意到了一段异常格式的Base64编码字符串,进一步的深度逆向分析揭示了完整的攻击链。
这起事件的危害程度远超一般的数据泄露事件。由于TanStack组件在应用构建阶段即被触发,攻击者实际上获得了被感染应用的完整运行环境控制权。攻击者可以利用这个稳固的立足点进行横向移动、窃取敏感凭证、篡改核心业务逻辑或植入持久化的后门程序。对于受影响的企业而言,仅仅回滚版本是远远不够的,他们需要对整个开发环境、所有构建产物和生产运行环境进行全面排查,确保没有留下任何攻击者植入的持久化后门机制。TanStack供应链攻击给企业带来的核心教训是:开源组件的安全性不取决于其受欢迎程度或用户数量,而取决于其维护者的安全实践水平和安全意识的强弱。企业不能盲目假设一个广泛使用的开源项目就一定是安全的。依赖关系审查、构建环境的严格隔离、制品签名的可靠验证以及供应链安全的定期审计,应当成为企业DevOps流程中的标准环节,而不是可选项。
北京企密安信息安全技术有限公司
/ 010-87562232
邮箱:px@baomiwang.com
公众号:Qi-Mi-An






