OIDC(OpenID Connect)
OIDC(OpenID Connect)是一种基于OAuth 2.0协议的身份验证层,使用基于密码学签名的短时身份验证令牌,用于替代本地长期凭证。在[[开源供应链安全]]领域,OIDC被视为对抗[[会话劫持]]和[[定向社交工程攻击]]的关键防御措施。
在Axios投毒事件中的意义
2026年3月的[[axios]]投毒事件暴露了本地长期凭证的巨大安全隐患。攻击者通过RAT窃取了开发者电脑上的NPM Token和GitHub Session,从而绕过了2FA。OIDC通过以下方式解决这一问题:
- 短期令牌:令牌有效期短,即使被窃取,攻击窗口也极小
- 密码学签名:基于密码学签名,无法伪造
- 无本地凭证:开发者电脑上不存放能直接
npm publish的长期Token
实施建议
将发布权限移交到受信任的CI/CD(如GitHub Actions)中,通过OIDC流程进行交互。这样,即使开发者电脑被攻破,黑客也无法直接发包。
相关概念
- [[fido2]] — 基于硬件的物理安全密钥,与OIDC互补
- [[开源供应链安全]] — OIDC是供应链安全的关键组成部分
- [[会话劫持]] — OIDC旨在防御的攻击手法
- [[npm安全]] — OIDC在NPM生态中的应用