一项在流行的Python包llamacpppython中发现的严重漏洞,可能会影响超过6000个模型,并可能导致供应链攻击。这个开源包被发现存在服务器端模板注入漏洞,这可能导致远程代码执行RCE。这一漏洞被追踪为CVE202434359,由安全研究员Patrick Peng在线名retro0reg发现。
llamacpppython包为广受欢迎的llamacpp库提供了Python绑定;而llamacpp是一个用于在个人电脑上运行Meta的LLaMA等大语言模型LLMs以及Mitral AI模型的C库。llamacpppython包更是使得开发者能够将这些开源模型集成到Python环境中。
白鲸加速器app下载安装CVE202434359的CVSS评分高达97,因Jinja2模板引擎的不当实现而导致RCE风险。该漏洞允许存储在元数据中的聊天模板被Jinja2解析而不进行消毒或沙盒处理,给攻击者注入恶意模板留下了可乘之机,Peng在他的博客中解释。
Peng在Hugging Face上上传了一个漏洞概念证明的利用实例,展示了如何利用恶意模板的模型在加载或启动聊天会话时执行任意代码。Peng的博客还描述了如何将恶意代码注入作为ggu文件下载的模型,该文件格式在Hugging Face等开源平台上分享自然语言处理NLP模型时相当常见。
根据Checkmarx的报告,Hugging Face上超过6000个模型使用了llamacpppython、Jinja2及gguf格式。威胁行为者可能通过下载受影响模型,将自己的恶意模板注入ggu文件的元数据中,并重新分发该模型,以进行针对毫不知情的AI开发者的供应链攻击。
上周,llamacpppython的版本0272已修复CVE202434359漏洞。此版本在渲染模板时增加了输入验证和沙盒措施。
Checkmarx博客最后指出:“CVE202434359的发现提醒我们,AI与供应链安全交汇处可能产生的漏洞。这强调了在AI系统及其组件生命周期中,需要保持警惕的安全实践。随着AI技术越来越多地嵌入到关键应用中,确保这些系统在构建和维护时采用安全优先的方法至关重要,以防止潜在威胁破坏该技术的优势。”