开源供应链安全
开源供应链安全是指保护开源软件从开发、分发到使用的整个链条免受恶意攻击的实践和框架。随着开源软件成为现代软件基础设施的基石,供应链攻击已成为最严重的安全威胁之一。
威胁模型
开源供应链攻击的核心手法是:通过攻破上游软件(如[[axios]])的发布流程,向下游所有用户分发恶意代码。2026年3月的Axios投毒事件是典型例子——攻击者通过[[定向社交工程攻击]]盗取核心维护者账号,发布包含远控木马(RAT)的恶意版本。
关键脆弱点
- 核心维护者账号:单点故障,一旦被攻破,整个供应链面临风险
- 本地长期凭证:开发者电脑上的Token和Session是主要攻击目标
- 自动化发布流程:CI/CD流水线可能被恶意利用
- 开源社区的开放文化:与安全要求之间存在根本张力
防御最佳实践
- 废除本地长期凭证:全面拥抱[[oidc]](OpenID Connect),使用短期、基于密码学签名的认证
- 强制硬件密钥:使用[[fido2]]/YubiKey,防止远程木马静默执行
- 流水线不可变与多签机制:发版必须是自动化的、不可变的流水线操作,需要多人批准
- 零信任心态:对任何主动接触保持高度警惕
- 快速响应机制:建立跨层级沟通渠道,确保在发现攻击后能迅速下架恶意版本
相关概念
- [[npm安全]] — NPM平台相关的安全事件和最佳实践
- [[定向社交工程攻击]] — 针对开发者的社交工程攻击手法
- [[会话劫持]] — 攻击者窃取登录凭证绕过认证的技术
- [[零信任心态]] — 默认不信任任何请求的安全理念