开源大型语言模型推理框架SGLang被发现存在严重远程代码执行(RCE)漏洞CVE-2026-5760。攻击者可构造包含恶意Jinja2模板注入载荷的GGUF模型文件,受害者一旦加载该模型,且有请求进入/v1/rerank端点,攻击者便可能在目标服务器上执行任意代码。
美国卡内基梅隆大学软件工程研究所旗下的CERT协调中心(CERT/CC)于2026年4月20日公告该漏洞,并在GitHub上公开了概念验证代码。CERT/CC表示,截至公告发布时,SGLang项目维护者尚未回应,也未提供补丁。
SGLang是一套用于部署大型语言模型与多模态模型的开源推理框架,兼容OpenAI API规范,支持Qwen、DeepSeek、Mistral和Skywork等主流模型,在开源LLM推理基础设施领域具有一定影响力。
此次漏洞出现在SGLang的重排序(Reranking)功能端点/v1/rerank。该端点在处理相关请求时,会创建Jinja2模板的执行环境,但采用了未经沙箱限制的配置。这使得模型文件中的chat_template在应用时,可能脱离原有执行限制,在服务器上执行任意Python代码。
攻击者可先在GGUF格式模型文件的tokenizer.chat_template字段中植入恶意Jinja2服务器端模板注入(SSTI)载荷,并加入特定触发内容,诱导请求进入存在漏洞的处理流程。受害者若从Hugging Face等模型平台下载并加载该恶意模型,只要后续有请求发送至/v1/rerank端点,SGLang就可能读取并应用模型内的chat_template,导致恶意载荷在服务器上执行。攻击者一旦成功利用此漏洞,便可能获取SGLang服务的执行权限,引发主机被入侵、横向移动、数据泄露或拒绝服务(DoS)等风险。
CERT/CC建议,应将_get_jinja_env()函数中的jinja2.Environment()替换为ImmutableSandboxedEnvironment,以阻断任意代码执行的可能性。凡是将/v1/rerank端点暴露给外部或不可信网络的SGLang部署,均属于高风险环境,应优先采取缓解措施,或评估暂时关闭该端点。