CVE-2020-5207 Request smuggling is possible in Ktor when both chunked TE and content length specified
Request smuggling allows bypassing proxy security controls in Ktor when specific header conditions are met.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is CVE-2020-5207?
CVE-2020-5207 is a medium-severity vulnerability in Ktor.io Ktor, published on 27 Jan 2020. Any signed-in user can exploit it over the network, and only if a user opens a file or follows a link.
Official description
In Ktor before 1.3.0, request smuggling is possible when running behind a proxy that doesn't handle Content-Length and Transfer-Encoding properly or doesn't handle \n as a headers separator.
Weakness: CWE-444
Which versions are affected by CVE-2020-5207?
4 open source packages ship an affected version, including io.ktor:ktor-client-cio and io.ktor:ktor-server-cio. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
io.ktor:ktor-client-cio Maven | All versions | 1.3.0 |
io.ktor:ktor-client-cio Maven | All versions | 1.3.0 |
io.ktor:ktor-server-cio Maven | All versions | 1.3.0 |
io.ktor:ktor-server-cio Maven | All versions | 1.3.0 |
Products include Jetbrains Ktor.
How do I fix CVE-2020-5207?
Upgrade io.ktor:ktor-client-cio to 1.3.0 or later.
Is CVE-2020-5207 being exploited?
There is no known exploitation of CVE-2020-5207 in the wild and no public exploit code.
Other vulnerabilities in Ktor.io Ktor
Sources
Also known as GHSA-xrr9-rh8p-433v.