事件经过
vLLM 的结构化输出功能将用户提供的正则表达式编译为约束解码语法,但没有任何超时,因此精心构造的正则表达式可以挂起语法编译器并无限期消耗服务器资源,拒绝对共享 vLLM 实例上所有其他请求的服务。
影响分析
vLLM 为许多组织的生产 LLM 推理提供支持;针对核心结构化输出功能的远程未认证 DoS 可以摧毁为许多下游 AI 应用程序同时服务的多租户推理集群。
攻击途径
structured_outputs.regex API 参数将用户提供的正则表达式字符串直接传递给语法编译器后端(例如 xgrammar),未进行编译超时,允许远程未认证调用者提交导致灾难性回溯的正则表达式,该表达式挂起编译器并拒绝对共享推理服务器的服务。
受影响系统
vLLM 推理/服务引擎,0.24.0 版本之前
缓解措施
升级到 vLLM >= 0.24.0,它为结构化输出正则表达式处理添加了编译超时。