취약점  ·  2026-06-10

CVE-2026-7304 — SGLang 안전하지 않은 dill.loads 역직렬화를 통한 인증되지 않은 RCE (Custom Logit Processor)

취약점High 영향도GlobalCVE-2026-7304
광범위하게 배포된 오픈소스 LLM 추론 서버 중 하나인 SGLang(DeepSeek-R1, GLM-4 및 기타 인기 모델에 사용됨)은 --enable-custom-logit-processor 기능 플래그가 설정되었을 때 dill.loads()를 통해 공격자가 제어하는 바이트를 역직렬화합니다. dill이 역직렬화 중에 모든 객체의 __reduce__ 메서드를 실행하기 때문에, 제작된 sampling_params.custom_logit_processor 필드를 포함한 /generate 엔드포인트에 대한 단일 HTTP POST는 토큰이 샘플링되기 전에 GPU 추론 워커 내에서 임의의 OS 명령 실행을 트리거합니다. 인증이 필요하지 않습니다. Docker, SkyPilot 및 AWS SageMaker의 DeepSeek-R1에 대한 공식 배포 가이드는 --host 0.0.0.0과 기능 플래그를 권장하므로, 많은 프로덕션 인스턴스가 인터넷에 직접 노출되어 있습니다.
공격자는 sampling_params.custom_logit_processor에 16진법으로 인코딩된 dill 페이로드를 포함하여 /generate(또는 OpenAI 호환 /v1/completions 엔드포인트)에 HTTP POST를 한 번 보냅니다. 페이로드는 프롬프트 처리 전에 역직렬화 시 실행되며, 인증, 속도 제한 또는 기본 인터넷 노출 배포의 시스템에 대한 사전 액세스가 필요하지 않습니다.
--enable-custom-logit-processor로 시작한 SGLang 추론 서버. 특히 위험: 공식 문서를 따르는 프로덕션 DeepSeek-R1 및 GLM-4 배포; Docker Compose 예제에서 권장하는 모든 인터페이스에 노출된 연구 클러스터 및 클라우드 GPU 인스턴스. 공격자는 추론 워커 프로세스의 권한(컨테이너에서는 종종 root)을 획득합니다.
엄격히 필요하지 않으면 --enable-custom-logit-processor를 비활성화합니다. 필요한 경우: 신뢰할 수 있는 호출자만 액세스할 수 있도록 인증 및 네트워크 제어 뒤에 /generate 엔드포인트를 제한합니다. dill 역직렬화를 허용 목록, 서명 검증 및 길이 제한이 있는 프로세서 로딩 메커니즘으로 교체합니다. 포트 30000에서의 인터넷 노출에 대해 모든 SGLang 배포를 감시합니다.
출처
SecureLayer7 — CVE-2026-7304: SGLang Unauthenticated RCE via dill.loadsNVD — CVE-2026-7304
라이브 피드에서 보기 AI 보안 및 거버넌스 관련 소식을 더 살펴보세요 — 매일 아침 업데이트.
피드 열기 →