| Title | SGLang Project (sgl-project) SGLang 0.5.19 Denial of Service |
|---|
| Description | SGLang 0.5.19 can terminate the entire inference server when a client submits a request to /send_weights_to_remote_instance referencing a weight-transfer group that has not been initialized. A client able to access this endpoint can trigger a process-wide denial of service with a single HTTP POST request.
In python/sglang/srt/model_executor/model_runner_components/weight_exporter.py, WeightExporter.send_weights_to_remote_instance checks whether a transfer group exists using self._weights_send_group[group_name] is not None. Because _weights_send_group is a dictionary, an absent group raises KeyError during the lookup. This prevents execution of the intended error-handling branch, which would otherwise return a failure message instructing the caller to initialize the group first.
The exception propagates through the model runner and tensor-parallel worker into Scheduler.send_weights_to_remote_instance. It 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. No weight-transfer group was initialized. A request containing only master_address and ports was sufficient because group_name has a default value. The server logged KeyError: 'weight_send_group_29500_0', followed by SIGQUIT.
The endpoint uses 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/42073 |
|---|
| User | Zyz3366 (UID 97230) |
|---|
| Submission | 10/01/2026 16:31 (23 days ago) |
|---|
| Moderation | 10/18/2026 16:26 (17 days later) |
|---|
| Status | Accepted |
|---|
| VulDB entry | 421762 [sgl-project SGLang up to 0.5.19 Weight Exporter weight_exporter.py WeightExporter.send_weights_to_remote_instance group_name denial of service] |
|---|
| Points | 20 |
|---|