一名开发者在V2EX详细复盘了其GitHub账号在过去一年内遭遇四次入侵的经历,揭示了软件供应链攻击的隐蔽性与复杂性。首起事件中,攻击者植入恶意GitHub Action窃取Secret;第三起攻击最为典型,黑客在`package.json`中植入`postinstall`恶意脚本,并利用AI生成上下文相关的合法测试脚本作为掩护,极大地增加了检测难度。最终导致账号被GitHub官方暂停,关联的Gemini API Key因被滥用而停服。经诊断,攻击源于GitHub Personal Access Token (PAT) 或 SSH密钥泄露。为根治问题,作者重构了安全架构:在依赖管理层面,配置`.npmrc`延迟新包安装以避开恶意版本的存活窗口;在权限管理层面,将SSH Key从账号级降级为仓库级Deploy Key,并禁用服务器密码登录;在自动化集成层面,彻底放弃“无限期全权限”的PAT,转而开发基于GitHub App和MCP协议的自建服务,利用短期JWT令牌实现最小权限访问。这一整套措施为开发者防御AI时代的供应链攻击提供了实战范本。
事件分析
💡 核心观点:告别“一把钥匙走天下”的开发习惯,拥抱最小权限原则和细粒度鉴权架构,是应对AI辅助供应链攻击的必由之路。
原文链接:V2EX 分享发现





