CVE-2026-53538: python-multipart · Semicolon treated as querystring field separator enables parameter smuggling
Affects mcp-proxySource GCVE Database
Not known to be exploited · CVSS 3.7 Low : upgrade to 0.12.0_2 when convenient.
Data as of 4 Nov 2026, 07:00 UTC
- Patch
- Available – fixed in 0.12.0_2
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:NExploitation evidence
Disclosed: evidence found.
CVE published 22 Jun 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 3 Nov 2026.
What to do
Upgrade mcp-proxy to 0.12.0_2.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
Homebrewmcp-proxypkg:brew/mcp-proxyOther threats | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
AI-suggested
Upgrade python-multipart to version 0.12.0_2 or later. This version corrects the parsing behavior to treat only '&' as a field separator in compliance with the WHATWG URL standard, eliminating the parser differential and preventing parameter smuggling. No other mitigation is required as the fix addresses the root cause.
Description
The python-multipart library's QuerystringParser incorrectly treats the semicolon (';') as a field separator in application/x-www-form-urlencoded bodies, contrary to the WHATWG URL standard which only recognizes '&' as a separator. This discrepancy allows HTTP parameter smuggling, where an attacker can bypass upstream body inspection by injecting extra or overriding form fields that the intermediary does not detect but the backend processes. The issue affects versions from 0.8.2 up to but not including 0.12.0_2 and is fixed in version 0.12.0_2.