Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach exposed /generate HTTP endpoint
-
DeliverySend request with crafted pd_kv_trans_params field
-
Exploitpickle.loads fails in InferSamplingParams
-
ExecutionInference worker thread dies while /health stays up
-
ImpactAll later requests hang until restart
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V1 - Encoding and Sanitization Safe deserialization, type allowlists
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires network reachability to the LightLLM HTTP API and the ability to submit the internal pd_kv_trans_params parameter to the /generate endpoint - the description indicates this works against LightLLM through 1.2.0 without authentication and without special configuration, so any exposed instance is affected. The primary limiting factor is deployment topology rather than access control: these inference workers are commonly bound to internal or trusted networks, so practical exploitation depends on whether the /generate endpoint is reachable by the attacker. No user interaction, credentials, or non-default feature toggle is required; a single malformed request triggers the pickle.loads failure that kills the inference thread. |
| Impact | This is a credible, actionable availability threat despite having no confidentiality or integrity impact. The provided CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H) describes a network-reachable, low-complexity, unauthenticated attack with high availability impact only, consistent with a single-request denial of service - the score of 8.7 is driven entirely by the VA:H availability dimension. A public exploit exists (referenced LightLLM GitHub issue #1629 and VulnCheck advisory), which raises practical risk above a theoretical CVSS-only finding. There is no CISA KEV listing and no EPSS score was supplied in the input, so while exploit code is public there is no evidence of active in-the-wild exploitation at this time; POC availability and active exploitation are distinct signals and should not be conflated. The signals are internally consistent (network vector in CVSS matches the description's /generate HTTP endpoint and unauthenticated access), so no contradiction needs flagging; the main unknown is real-world exposure, since these inference servers are frequently deployed on internal or trusted networks rather than the public internet, which would reduce the effective AV:N reachability. |
| Exploit ScenarioDerived | An attacker who can reach the LightLLM inference server's HTTP API sends a single crafted POST to /generate that includes the internal pd_kv_trans_params field with a value that causes pickle.loads to fail inside InferSamplingParams, killing the inference worker thread. The /health endpoint keeps reporting healthy while all subsequent generation requests hang indefinitely until an operator restarts the service, denying the model-serving capability to all users. Public exploit code for this technique is available via the referenced GitHub issue and VulnCheck advisory. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 15, 2026
Unauthenticated denial of service in LightLLM through 1.2.0 lets any remote attacker who can reach the /generate endpoint take down the inference worker with a single crafted request: supplying the internal pd_kv_trans_params field causes a pickle.loads failure in InferSamplingParams that kills the inference thread. Because the /health endpoint keeps responding normally, monitoring will not detect the failure, and every subsequent request hangs until the process is restarted. Publicly available exploit code exists (referenced in the upstream GitHub issue), and no CISA KEV entry or EPSS data was provided; the assessed impact is availability-only with no confidentiality or integrity loss.
RemediationAI
No vendor-released patch was identified at time of analysis; affected deployments run LightLLM through 1.2.0 and should track https://github.com/ModelTC/LightLLM and issue https://github.com/ModelTC/LightLLM/issues/1629 for an upstream fix, along with the VulnCheck advisory https://www.vulncheck.com/advisories/lightllm-through-1.2.0-unauthenticated-dos-via-pd-kv-trans-params-deserialization. Until a patched release is available, the highest-value control is exposure reduction: bind the LightLLM HTTP API to localhost or an internal interface and place it behind an authenticating reverse proxy so that only trusted callers can reach /generate, accepting that this changes your deployment topology and breaks any existing public-facing inference clients. As a second layer, filter request bodies at the reverse proxy or WAF (nginx, Envoy, or an application-layer gateway) to reject or strip any payload containing the internal pd_kv_trans_params key, since legitimate clients should never send this internal transport field; the trade-off is that body-inspection rules can be bypassed by encoding tricks and may break if a future release legitimately exposes similarly named parameters. Because /health remains green during the outage, replace health-check-only supervision with a watchdog that exercises /generate with a short timeout and automatically restarts the worker on hang, or use process-level liveness monitoring for the inference thread; this does not prevent the crash, only shortens the denial-of-service window. Finally, rate-limit unauthenticated requests and alert on single-request worker terminations, which are the observable signature of this attack.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is a CWE-502 deserialization issue in LightLLM's inference server. The /generate HTTP handler (lightllm/server/api_lightllm.py) forwards request fields into the sampling-parameter construction path, where InferSamplingParams (lightllm/server/core/objs/sampling_params.py) and the batch inference path (lightllm/server/router/model_infer/infer_batch.py) call pickle.loads on the attacker-controlled pd_kv_trans_params value. That field is intended to be an internal, trusted transport object rather than a client-facing parameter, so no validation or trust boundary exists between the HTTP request body and the deserialization call. When the supplied value is not a valid pickle stream, the exception is raised inside the inference worker thread, terminating the thread rather than being contained by request-level error handling; the HTTP service itself and its /health probe stay alive, so the process appears healthy while no further inference work can be scheduled. Although CWE-502 deserialization classes can theoretically be turned into code execution when a valid, attacker-built pickle is accepted, the assessed impact for this CVE is availability-only (C:N/I:N/A:H), and the demonstrated exploitation path is a worker crash. The affected product is identified by CPE cpe:2.3:a:modeltc:lightllm:*:*:*:*:*:*:*:*, a wildcard range consistent with the vendor advisory covering all releases through 1.2.0.
Know when Lightllm gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Unauthenticated single network request (AV:N/AC:L/PR:N/UI:N) crashes the inference worker with no confidentiality or integrity effect, giving C:N/I:N and A:H.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
LightLLM through 1.2.0 contains a denial of service vulnerability that allows unauthenticated attackers to crash the inference worker by supplying the internal pd_kv_trans_params field to the /generate endpoint. Attackers can send a single request whose parameters cause pickle.loads to fail in InferSamplingParams, killing the inference thread while /health stays up and all later requests hang until restart.
Technical POC Analysis
CWE-502 (Deserialization of Untrusted Data).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Latest POC
1 public PoC link from github
Sign in to open the public PoC links collected for this CVE.
Executive ViewAI
A high-severity availability flaw affects all LightLLM releases through 1.2.0: a single crafted request to the /generate endpoint terminates the inference worker, and because the service's /health endpoint keeps returning normally, existing monitoring will not detect the outage. Production teams should expect every in-flight and subsequent inference request to hang until the process is manually restarted, making this an immediate operational risk for any organization running LightLLM as a customer-facing or internal inference service. With public exploit code available and no vendor-released patch, exposure is real today and depends entirely on network reachability to the endpoint.
No vendor-released patch identified at time of analysis; publicly available exploit code exists. Interim mitigations: restrict /generate to trusted networks or clients via firewall, reverse proxy, or API gateway allowlists; filter or reject requests carrying the pd_kv_trans_params field at the edge; rate-limit and throttle per client; deploy functional liveness probes that exercise a real inference request instead of relying on /health; enable automatic process restart on hang; alert on inference latency and queue depth; and isolate inference workers from general-purpose networks until a patched release is available.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Insecure deserialization occurs when an application converts serialized data (a stream of bytes representing an object's state) back into a living object without proper validation.
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Unauthenticated remote code execution affects ModelTC's LightLLM LLM inference framework in all versions through 1.2.0,
Unauthenticated attackers who can reach the PD Master's /pd_register WebSocket endpoint can register arbitrary nodes in
Unauthenticated remote code execution affects LightLLM through 1.2.0 when it is deployed in visual_only (multimodal/visi
Unauthenticated remote code execution affects ModelTC LightLLM through version 1.2.0 when it is run in a multimodal depl
Remote code execution in LightLLM through 1.2.0 allows unauthenticated attackers to run arbitrary code on the host when
Remote code execution affects LightLLM deployments through version 1.2.0 that run the KV-transfer worker with the non-de
Memory exhaustion in LightLLM through 1.2.0 lets unauthenticated remote attackers crash KV-transfer worker processes whe
Unauthenticated HTTP requests to LightLLM through 1.2.0 can halt and wedge inference workers on any deployment started w
LightLLM through version 1.2.0 accepts image_url and audio_url parameters on its multimodal inference endpoints without
EUVD-2026-102287
NVD
CVE.org
EPSS
GitHub
Exploit-DB