恶意npm包“postmark-mcp”窃取邮件事件分析
事件概述
一款冒充Postmark公司MCP(Model Context Protocol)服务器的恶意npm包“postmark-mcp”,通过在代码中添加单行恶意指令,秘密将外发邮件抄送至攻击者控制的地址,每日可能窃取数千封邮件。
事件详情
恶意包发现过程
- Postmark公司在9月25日的博客中警告用户关于假冒其服务的npm包
- 恶意行为者创建了假冒包,通过15个版本建立信任后,在1.0.16版本中添加后门
- 后门代码秘密将所有邮件BCC发送到“phan@giftshop[.]club”地址
影响范围
- 包被下载约1500次/周,集成到数百个开发者工作流中
- 约300个组织使用受感染的MCP服务器,每日发送10-50封邮件
- 每日有3000至15000封邮件流向攻击者服务器
安全风险分析
MCP生态系统风险
Koi Security联合创始人Idan Dardikman指出:
- MCP协议允许AI系统连接外部工具和数据源
- 用户将“上帝模式”权限交给未知来源的工具
- AI助手会无条件数千次使用这些工具,形成直接敏感数据管道
供应链攻击威胁
- 攻击者从Postmark官方GitHub仓库获取合法代码
- 添加恶意代码后发布到npm,模仿官方仓库
- 再次暴露开源软件包仓库易受投毒攻击的脆弱性
应对措施
用户建议
- 立即移除假冒包
- 检查邮件日志中的可疑活动
- 轮换通过邮件发送的所有凭证
平台改进
GitHub(npm注册表所有者)正在加强安全措施:
- 缩短安全令牌生命周期
- 在“不久的将来”默认启用双因素认证的本地发布
敏感信息暴露
受影响的邮件可能包含:
- 密码重置链接
- 多因素认证代码
- 发票和财务详细信息
- 机密商业文件
- 客户信息
该事件凸显了MCP服务器固有的安全风险和npm软件包供应链攻击的严重性。