Description
LightLLM through 1.2.0 visual_only deployments expose an unauthenticated RPyC service with allow_pickle enabled that deserializes attacker-supplied arguments in the remote_infer_images method. Attackers can reach the visual RPyC port and pass objects with __reduce__ methods to execute arbitrary code with service account privileges.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| ModelTC | LightLLM | ≤ 1.2.0 | — |
References
- GitHub Issue #1610 issue-tracking
- https://github.com/ModelTC/lightllm/blob/v1.2.0/lightllm/server/visualserver/objs.py#L6-L11 technical-description
- https://github.com/ModelTC/lightllm/blob/v1.2.0/lightllm/server/visualserver/visual_only_manager.py#L138-L140 technical-description
- https://github.com/ModelTC/LightLLM product
- VulnCheck Advisory: LightLLM through 1.2.0 Unauthenticated Remote Code Execution via Visual-Only RPyC Service third-party-advisory