{"id":"CVE-2026-3059","aliases":["EUVD-2026-11557","GHSA-3cp7-c6q2-94xr","GHSA-rgq9-fqf5-fv58","PYSEC-2026-539"],"status":"published","title":"CVE-2026-3059","description":"SGLang's multimodal generation module is vulnerable to unauthenticated remote code execution through the ZMQ broker, which deserializes untrusted data using pickle.loads() without authentication.","severity":{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"adp","from":"cve"},"epss":{"day":"2026-11-09","score":0.01762,"percentile":0.78188,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-502"],"published":"2026-03-12T11:37:25Z","modified":"2026-10-28T02:30:41Z","fixes":[{"ecosystem":"PyPI","package":"sglang","fixed_in":["0.5.10"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"sglang","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"0.5.9"},{"fixed":"0.5.10"}]}]},{"source":"osv","ecosystem":"PyPI","package":"sglang","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.5.10"}]}],"versions":["0.1.10","0.1.11","0.1.12","0.1.13","0.1.14","0.1.15","0.1.16","0.1.17","0.1.18","0.1.19","0.1.20","0.1.21","0.1.22","0.1.24","0.1.25","0.1.26","0.1.3","0.1.4","0.1.5","0.1.6","0.1.7","0.1.9","0.2.0","0.2.1","0.2.10","0.2.11","0.2.12","0.2.13","0.2.14","0.2.14.post1","0.2.14.post2","0.2.15","0.2.2","0.2.3","0.2.4","0.2.5","0.2.6","0.2.7","0.2.8","0.2.9","0.2.9.post1","0.3.0","0.3.1","0.3.1.post1","0.3.1.post2","0.3.1.post3","0.3.2","0.3.3","0.3.3.post1","0.3.4","0.3.4.post1","0.3.4.post2","0.3.5","0.3.5.post1","0.3.5.post2","0.3.6","0.3.6.post1","0.3.6.post2","0.3.6.post3","0.4.0","0.4.0.post1","0.4.0.post2","0.4.1","0.4.1.post1","0.4.1.post2","0.4.1.post3","0.4.1.post4","0.4.1.post5","0.4.1.post6","0.4.1.post7","0.4.10","0.4.10.post1","0.4.10.post2","0.4.2","0.4.2.post1","0.4.2.post2","0.4.2.post3","0.4.2.post4","0.4.3","0.4.3.post1","0.4.3.post2","0.4.3.post3","0.4.3.post4","0.4.4","0.4.4.post1","0.4.4.post2","0.4.4.post3","0.4.4.post4","0.4.5","0.4.5.post1","0.4.5.post2","0.4.5.post3","0.4.6","0.4.6.post1","0.4.6.post2","0.4.6.post3","0.4.6.post4","0.4.6.post5","0.4.7","0.4.7.post1","0.4.8","0.4.8.post1","0.4.9","0.4.9.post1","0.4.9.post2","0.4.9.post3","0.4.9.post4","0.4.9.post5","0.4.9.post6","0.5.0rc0","0.5.0rc1","0.5.0rc2","0.5.1","0.5.1.post1","0.5.1.post2","0.5.1.post3","0.5.10rc0","0.5.2","0.5.2rc0","0.5.2rc1","0.5.2rc2","0.5.3","0.5.3.post1","0.5.3.post2","0.5.3.post3","0.5.3rc0","0.5.3rc2","0.5.4","0.5.4.post1","0.5.4.post2","0.5.4.post3","0.5.5","0.5.5.post1","0.5.5.post2","0.5.5.post3","0.5.6","0.5.6.post1","0.5.6.post2","0.5.7","0.5.8","0.5.8.post1","0.5.9"]},{"source":"osv","ecosystem":"PyPI","package":"sglang","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.5.10"}]}],"versions":["0.1.10","0.1.11","0.1.12","0.1.13","0.1.14","0.1.15","0.1.16","0.1.17","0.1.18","0.1.19","0.1.20","0.1.21","0.1.22","0.1.24","0.1.25","0.1.26","0.1.3","0.1.4","0.1.5","0.1.6","0.1.7","0.1.9","0.2.0","0.2.1","0.2.10","0.2.11","0.2.12","0.2.13","0.2.14","0.2.14.post1","0.2.14.post2","0.2.15","0.2.2","0.2.3","0.2.4","0.2.5","0.2.6","0.2.7","0.2.8","0.2.9","0.2.9.post1","0.3.0","0.3.1","0.3.1.post1","0.3.1.post2","0.3.1.post3","0.3.2","0.3.3","0.3.3.post1","0.3.4","0.3.4.post1","0.3.4.post2","0.3.5","0.3.5.post1","0.3.5.post2","0.3.6","0.3.6.post1","0.3.6.post2","0.3.6.post3","0.4.0","0.4.0.post1","0.4.0.post2","0.4.1","0.4.1.post1","0.4.1.post2","0.4.1.post3","0.4.1.post4","0.4.1.post5","0.4.1.post6","0.4.1.post7","0.4.10","0.4.10.post1","0.4.10.post2","0.4.2","0.4.2.post1","0.4.2.post2","0.4.2.post3","0.4.2.post4","0.4.3","0.4.3.post1","0.4.3.post2","0.4.3.post3","0.4.3.post4","0.4.4","0.4.4.post1","0.4.4.post2","0.4.4.post3","0.4.4.post4","0.4.5","0.4.5.post1","0.4.5.post2","0.4.5.post3","0.4.6","0.4.6.post1","0.4.6.post2","0.4.6.post3","0.4.6.post4","0.4.6.post5","0.4.7","0.4.7.post1","0.4.8","0.4.8.post1","0.4.9","0.4.9.post1","0.4.9.post2","0.4.9.post3","0.4.9.post4","0.4.9.post5","0.4.9.post6","0.5.0rc0","0.5.0rc1","0.5.0rc2","0.5.1","0.5.1.post1","0.5.1.post2","0.5.1.post3","0.5.10rc0","0.5.2","0.5.2rc0","0.5.2rc1","0.5.2rc2","0.5.3","0.5.3.post1","0.5.3.post2","0.5.3.post3","0.5.3rc0","0.5.3rc2","0.5.4","0.5.4.post1","0.5.4.post2","0.5.4.post3","0.5.5","0.5.5.post1","0.5.5.post2","0.5.5.post3","0.5.6","0.5.6.post1","0.5.6.post2","0.5.7","0.5.8","0.5.8.post1","0.5.9"]}],"products":[{"vendor":"lmsys","product":"sglang"},{"vendor":"sgl-project","product":"sglang"},{"vendor":"sglang","product":"sglang"}],"references":[{"url":"https://github.com/sgl-project/sglang/security/advisories/GHSA-3cp7-c6q2-94xr","tags":["Broken Link","advisory","web"]},{"url":"https://github.com/sgl-project/sglang/blob/main/python/sglang/multimodal_gen/runtime/scheduler_client.py","tags":["Product","web"]},{"url":"https://orca.security/resources/blog/sglang-llm-framework-rce-vulnerabilities/","tags":["Exploit","Mitigation","Third Party Advisory","article"]},{"url":"https://github.com/sgl-project/sglang/pull/20904","tags":["fix","web"]},{"url":"https://github.com/sgl-project/sglang/releases/tag/v0.5.10","tags":["web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-3059","tags":["advisory"]},{"url":"https://orca.security/resources/blog/sglang-llm-framework-rce-vulnerabilities","tags":["web"]},{"url":"https://github.com/advisories/GHSA-rgq9-fqf5-fv58","tags":["advisory"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/3xxx/CVE-2026-3059.json","tags":["advisory"]},{"url":"https://github.com/sgl-project/sglang","tags":["package"]},{"url":"https://pypi.org/project/sglang","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2026-3059","title":"CVE-2026-3059","description":"SGLang's multimodal generation module is vulnerable to unauthenticated remote code execution through the ZMQ broker, which deserializes untrusted data using pickle.loads() without authentication.","status":"published","published":"2026-03-12T11:37:25.713Z","modified":"2026-04-07T18:46:03.195Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"adp"}],"cwes":["CWE-502"],"updated_at":"2026-11-02T13:49:09.229322Z"}],"euvd":[{"id":"EUVD-2026-11557","description":"SGLang's multimodal generation module is vulnerable to unauthenticated remote code execution through the ZMQ broker, which deserializes untrusted data using pickle.loads() without authentication.","status":"published","published":"2026-03-12T11:37:25Z","modified":"2026-04-07T18:46:03Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T19:25:12.431163Z"}],"ghsa":[{"id":"GHSA-rgq9-fqf5-fv58","title":"SGLang's multimodal generation module is vulnerable to unauthenticated remote code execution through the ZMQ broker","description":"SGLang's multimodal generation module is vulnerable to unauthenticated remote code execution through the ZMQ broker, which deserializes untrusted data using pickle.loads() without authentication.","status":"published","published":"2026-03-12T12:30:29Z","modified":"2026-04-07T22:14:25Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"cwes":["CWE-502"],"updated_at":"2026-11-02T14:39:51.193071Z"}],"nvd":[{"id":"CVE-2026-3059","description":"SGLang's multimodal generation module is vulnerable to unauthenticated remote code execution through the ZMQ broker, which deserializes untrusted data using pickle.loads() without authentication.","status":"published","published":"2026-03-12T12:15:59.42Z","modified":"2026-06-17T10:42:58.617Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"secondary"}],"cwes":["CWE-502"],"updated_at":"2026-11-02T14:12:09.358914Z"}],"osv":[{"id":"CVE-2026-3059","title":"CVE-2026-3059","description":"SGLang's multimodal generation module is vulnerable to unauthenticated remote code execution through the ZMQ broker, which deserializes untrusted data using pickle.loads() without authentication.","status":"published","published":"2026-03-12T11:37:25.713Z","modified":"2026-10-28T02:30:41.361751567Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T15:45:00.530889Z"},{"id":"GHSA-rgq9-fqf5-fv58","title":"SGLang's multimodal generation module is vulnerable to unauthenticated remote code execution through the ZMQ broker","description":"SGLang's multimodal generation module is vulnerable to unauthenticated remote code execution through the ZMQ broker, which deserializes untrusted data using pickle.loads() without authentication.","status":"published","published":"2026-03-12T12:30:29Z","modified":"2026-06-29T12:26:50.712384581Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"cwes":["CWE-502"],"updated_at":"2026-11-02T15:46:55.877614Z"},{"id":"PYSEC-2026-539","title":"SGLang's multimodal generation module is vulnerable to unauthenticated remote code execution through the ZMQ broker","description":"SGLang's multimodal generation module is vulnerable to unauthenticated remote code execution through the ZMQ broker, which deserializes untrusted data using pickle.loads() without authentication.","status":"published","published":"2026-06-29T11:50:45.317059Z","modified":"2026-07-13T16:15:33.436475286Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T15:52:57.671918Z"}]}}
