
(120BTC.COm)讯:月下载量高达9,700万次的AI开源套件LiteLLM,在24日爆出遭供应链攻击,两个受损版本(v1.82.7、v1.82.8)被植入恶意代码,能系统性窃取加密钱包、SSH金钥、云端凭证等几乎所有机敏信息。
慢雾科技资安长23pds今早于X上引述该消息并发出严重警告。
谁发现的?攻击者是谁?
Future Search工程师Daniel Hnyk是首个揭露该项漏洞的专业人员,他与Callum McMahon在将LiteLLM作为CursorMCP外挂的间接依赖引入时,侦测到异常行为,随即展开逆向分析。
后来发现幕后攻击者为黑客组织TeamPCP。该组织先前已入侵知名开源安全扫描器Trivy的CI/CD管线,借此取得LiteLLM维护者的PyPI帐号凭证,随后上传两个带有后门的恶意版本。
三阶段攻击机制
恶意代码的执行分为三个阶段,环环相扣:
Stage1—凭证收割:安装后,恶意的`.pth`档案(`litellm_init.pth`)会在每一个Python程序启动时自动执行,无需任何`import`指令触发。窃取清单涵盖SSH金钥、`.env`档(含API金钥)、AWS/GCP/Azure云端凭证、Kubernetes配置、Git凭证、Shell指令历史,以及加密货币钱包档案与资料库密码。
Stage2—资料外泄:所有窃得的资料以硬编码的4096-bitRSA公钥搭配AES-256-CBC加密后,打包成tar压缩档,透过POST请求传送至`https://models.litellm.cloud/`——这个域名与LiteLLM官方毫无关联,是攻击者自行架设的渗漏端点。
Stage3—横向移动与持久化:若机器存有Kubernetestoken,恶意程序会读取所有名称空间的secrets,并在每个kube-system节点部署特权`alpine:latest`Pod,挂载主机档案系统。同时于`/root/.config/sysmon/sysmon.py`安装持久后门,并建立systemd使用者服务,确保重开机后仍能存活。
事件时间线
整起事件在不到10小时内快速演进:
3月24日 10:52 UTC:v1.82.8上传至PyPI
12:30 UTC:v1.82.7确认同样受损
13:03 UTC:GitHub上的通报Issue被机器人误判为垃圾讯息,标记为「notplanned」关闭,延误了公开预警时机
20:15 UTC:受损版本终于从PyPI下架,隔离解除
从恶意版本上线到下架,约有9小时的暴露时间。
加密开发者为何是高风险族群?
LiteLLM是目前最热门的AI模型代理套件之一,大量加密与DeFi项目的AI Agent基础设施都依赖它作为模型路由层。这次攻击直接把加密货币钱包档案列入窃取清单,意味着任何在同一台机器上执行LiteLLM并持有加密资产的开发者,资产都面临直接风险。
更值得警惕的是攻击向量本身:透过MCP外挂引入间接依赖,开发者甚至不会察觉自己安装了LiteLLM。这揭示了AIAgent工具链的一个结构性安全盲点:外挂生态的依赖链越复杂,供应链攻击的攻击面就越宽。
紧急修复步骤
曾安装LiteLLM的开发者应立即执行以下检查:
1.`pipshowlitellm`确认目前版本,v1.82.7或v1.82.8为受损版本
2.删除受影响版本并清除pip快取
3.检查`~/.config/sysmon/sysmon.py`与`sysmon.service`是否存在
4.Kubernetes环境:扫描`kube-system`名称空间内是否出现`node-setup-*`Pod
5.所有SSH金钥、云端凭证(AWS/GCP/Azure)、API金钥与加密钱包私钥,必须假设已外泄,立即轮换