| Title | SGLang Project (sgl-project) SGLang 0.5.19 Denial of Service |
|---|
| Description | SGLang 0.5.19 exposes expert-distribution recording endpoints that can terminate the entire inference server when the expert-distribution recorder is not enabled. A client able to access these endpoints can trigger a process-wide denial of service with a single HTTP request, without an API key.
The affected endpoints are /start_expert_distribution_record, /stop_expert_distribution_record, and /dump_expert_distribution_record. They accept GET and POST requests and remain registered when the server is launched ***without*** --expert-distribution-recorder-mode.
In that configuration, the recorder's start_record, stop_record, and dump_record methods invoke _on_not_implemented, which raises an exception stating that expert_distribution_recorder_mode must be configured. Scheduler.expert_distribution_handle calls these methods without checking whether the recorder is enabled or containing the exception. The exception escapes the scheduler's request-processing loop, terminating the scheduler child process. The parent process subsequently receives SIGQUIT and exits.
The reported reproduction used SGLang 0.5.19, Qwen/Qwen3-0.6B, and one NVIDIA RTX 4090. After the server began serving requests, a single POST request with no body to /dump_expert_distribution_record triggered the exception and server shutdown. Subsequent requests failed, and /health became unreachable. The start and stop endpoints invoke the same exception-raising implementation when recording is disabled.
The endpoints use AuthLevel.ADMIN_OPTIONAL. No credentials are required when neither --api-key nor --admin-api-key is configured. When only --api-key is configured, that key is required. When --admin-api-key is configured, the admin key is required. Remote exploitation requires network access to the affected endpoint; this finding does not demonstrate an authentication bypass.
The impact is loss of availability for all clients using the affected server instance until the service is restarted. No confidentiality or integrity impact has been demonstrated. |
|---|
| Source | ⚠️ https://github.com/sgl-project/sglang/issues/42071 |
|---|
| User | Zyz3366 (UID 97230) |
|---|
| Submission | 10/01/2026 16:29 (24 days ago) |
|---|
| Moderation | 10/18/2026 16:24 (17 days later) |
|---|
| Status | Accepted |
|---|
| VulDB entry | 421761 [sgl-project SGLang up to 0.5.19 Expert-Distribution Recording Endpoint expert_distribution.py Scheduler.expert_distribution_handle denial of service] |
|---|
| Points | 20 |
|---|