🔍 CVE-2026-22807

8.8
CVSS Score
HIGH
2026-01-21
2026-07-21 12:17
✅ 완료

🇰🇷 한글 설명

vLLM은 대규모 언어 모델(LLM)의 추론 및 제공 엔진입니다. 버전 0.10.1부터 0.14.0 이전 버전까지, vLLM은 모델 해상도 동안 Hugging Face `auto_map` 동적 모듈을 `trust_remote_code`에 대한 게이트 없이 로드하여 공격자 제어의 Python 코드를 모델 저장소/경로에 실행하도록 허용합니다. 모델 저장소/경로(로컬 디렉토리 또는 원격 Hugging Face 저장소)에 영향을 미치는 공격자는 모델 로드 시 vLLM 호스트에서 임의의 코드 실행을 달성할 수 있습니다. 이는 요청 처리 전에 발생하며 API 접근이 필요하지 않습니다. 버전 0.14.0에서 이 문제가 해결되었습니다.

💡 쉬운 설명

vLLM은 모델을 로드할 때 원격 코드를 실행할 수 있으므로 공격자가 임의의 코드를 실행할 수 있습니다. 이는 모델을 로드하는 초기 단계에서 발생하므로 API 접근이 필요하지 않습니다. 버전 0.14.0 이상으로 업데이트하면 이 문제가 해결됩니다.

🇺🇸 원문 (English)

vLLM is an inference and serving engine for large language models (LLMs). Starting in version 0.10.1 and prior to version 0.14.0, vLLM loads Hugging Face `auto_map` dynamic modules during model resolution without gating on `trust_remote_code`, allowing attacker-controlled Python code in a model repo/path to execute at server startup. An attacker who can influence the model repo/path (local directory or remote Hugging Face repo) can achieve arbitrary code execution on the vLLM host during model load. This happens before any request handling and does not require API access. Version 0.14.0 fixes the issue.

📍 영향받는 시스템

vLLM 버전 0.10.1부터 0.14.0 이전 버전

⚔️ 공격 벡터

모델 저장소/경로를 조작하여 공격자 제어의 Python 코드를 실행

🛡️ 대응 방법

vLLM을 버전 0.14.0 이상으로 업데이트하여 이 문제를 해결

🔧 검증 코드

이 코드는 로컬 시스템의 pip 패키지 매니저를 사용하여 vLLM의 버전을 확인합니다. 코드를 실행하기 전에 Python과 pip가 설치되어 있어야 하며, 관리자 권한이 필요하지 않습니다. 코드를 실행하면 vLLM의 버전을 확인하여 취약점 여부를 판단합니다.

Shell / Script
import subprocess
result = subprocess.run(['pip', 'show', 'vllm'], capture_output=True, text=True)
if 'Version: 0.14.0' in result.stdout:
    print({"result": "양호", "reason": "vLLM 버전이 0.14.0 이상"})
else:
    print({"result": "취약", "reason": "vLLM 버전이 0.14.0 미만"})

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Python