![]()
两个版本的LiteLLM因遭受供应链攻击而被从Python包索引(PyPI)中移除。LiteLLM是一个开源接口,用于访问多个大语言模型。
具体来说,LiteLLM v1.82.7和v1.82.8版本已被下架,因为它们在组件文件litellm_init.pth中包含了恶意的凭证窃取代码。
维护LiteLLM的Berri AI公司首席执行官Krrish Dholakia在网上发帖称,此次攻击似乎源于该项目CI/CD流水线中使用的Trivy。
Trivy是由Aqua Security维护的开源漏洞扫描器,许多其他项目都将其作为安全措施。根据Aqua Security的说明,这一恶意软件活动始于2月下旬,攻击者利用Trivy GitHub Actions环境中的错误配置窃取了一个特权访问令牌,从而能够操控CI/CD流程。
软件在3月19日被篡改,当时被称为TeamPCP的攻击者使用被盗凭证发布了恶意Trivy版本(v0.69.4),3月22日又发布了恶意Trivy版本v0.69.5和v0.69.6作为DockerHub镜像。
但Aqua Security解释说,攻击者采用的方法比仅仅上传新的恶意Trivy版本更为复杂。
"通过修改与GitHub Action脚本trivy-action相关的现有版本标签,他们将恶意代码注入到组织已经运行的工作流中,"该公司表示。"由于许多CI/CD流水线依赖版本标签而不是固定提交,这些流水线继续执行,而没有任何迹象表明底层代码已经发生变化。"
Dholakia说,LiteLLM的PYPI_PUBLISH令牌作为.env变量存储在项目的GitHub仓库中,被发送到Trivy,攻击者获得了该令牌,然后用它推送新的LiteLLM代码。
"我们已经删除了所有PyPI发布令牌,"他说。"我们的账户启用了双因素认证,所以这是一个糟糕的令牌问题。我们正在审查我们的账户,看看如何让它更安全(通过JWT令牌进行可信发布,迁移到不同的PyPI账户等)。"
另一个令人意外的发展是,GitHub漏洞报告似乎遭到了垃圾信息攻击,旨在分散注意力并模糊有关报告的有用评论。在太平洋夏令时上午5:44,数十条推测是AI生成的"谢谢,这很有帮助!"的变体涌入了仓库。根据安全研究员Rami McCarthy的说法,用于发布的25个账户中有19个也被用于Trivy垃圾信息活动。
Python打包管理局(PyPA)已发布关于LiteLLM攻击的安全公告。
"任何安装并运行该项目的人都应该假设LiteLLM环境中可用的任何凭证可能已被泄露,并相应地撤销/轮换它们,"公告说。
Q&A
Q1:LiteLLM是什么?为什么会被攻击?
A:LiteLLM是一个开源接口,用于访问多个大语言模型。它遭受攻击是因为项目CI/CD流水线中使用的Trivy漏洞扫描器被恶意篡改,攻击者通过这个途径获取了项目的发布令牌。
Q2:这次供应链攻击是如何实施的?
A:攻击者首先利用Trivy GitHub Actions环境的错误配置窃取特权访问令牌,然后修改现有版本标签注入恶意代码。由于很多CI/CD流水线依赖版本标签而不是固定提交,恶意代码得以在不被察觉的情况下执行。
Q3:用户如果使用了受影响的LiteLLM版本应该怎么办?
A:根据Python打包管理局的安全公告,任何安装并运行LiteLLM v1.82.7和v1.82.8版本的用户都应该假设其环境中的凭证可能已被泄露,需要立即撤销和轮换所有相关凭证。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.