概要
近期 llama_cpp_python Python 包中披露了一个严重级安全漏洞,攻击者可利用该漏洞来实现任意代码执行。
漏洞编号为 CVE-2024-34359(CVSS 评分:9.7),软件供应链安全公司 Checkmarx 将该漏洞命名代号为 Llama Drama。
关键点
-
ID为 retr0reg 的白帽子在“llama_cpp_python”Python 包中发现了严重漏洞 CVE-2024-34359
-
该漏洞允许攻击者滥用 Jinja2 模板引擎来执行任意代码
-
使用 llama_cpp_python 和 Jinja2 的 HuggingFace 超过 6000 个 AI 模型容易受到攻击
-
该漏洞已在v0.2.72 中修复
-
该漏洞凸显了人工智能系统和软件供应链安全的重要性
漏洞介绍
想象一下,从 Hugging Face 等可信平台下载看似无害的人工智能模型,却发现它为攻击者打开了控制你系统的后门。这就是 CVE-2024-34359 带来的潜在风险。此漏洞影响流行的 llama_cpp_python 包,该包用于将 AI 模型与 Python 集成
如果被利用,攻击者可能会在受害者系统上执行任意代码,从而危及数据与相关操作。 Hugging Face 上的 6,000 多个模型可能会受到攻击。
该漏洞也凸显了人工智能平台和开发人员尚未完全应对供应链安全挑战的事实。
Jinja2
Jinja2:这是一个流行的Python模板渲染工具,主要用于生成HTML。拥有强大的动态内容生成能力,但如果没有正确配置来限制不安全操作,可能会带来重大的安全风险。
llama_cpp_python
llama_cpp_python:该软件包将 Python 的易用性与 C++ 的性能相结合,使其非常适合处理大数据量的复杂人工智能模型。
然而,它使用 Jinja2 来处理模型元数据而没有启用必要的安全保护措施,从而造成模板注入攻击(SSTI)。
漏洞技术细节详见:https://github.com/abetlen/llama-cpp-python/security/advisories/GHSA-56xg-wfcc-g829
以上内容由骨哥翻译并整理。