HTTP Request Smuggling Affecting aiohttp package, versions [,3.8.6)


Severity

Recommended
0.0
medium
0
10

CVSS assessment made by Snyk's Security Team. Learn more

Threat Intelligence

Exploit Maturity
Proof of concept
EPSS
0.15% (52nd percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-PYTHON-AIOHTTP-6057353
  • published15 Nov 2023
  • disclosed14 Nov 2023
  • creditBen Kallus

Introduced: 14 Nov 2023

CVE-2023-47627  (opens in a new tab)
CWE-444  (opens in a new tab)

How to fix?

Upgrade aiohttp to version 3.8.6 or higher.

Overview

Affected versions of this package are vulnerable to HTTP Request Smuggling via the HTTP parser. An attacker can manipulate the header parsing, leading to potential request smuggling by exploiting the incorrect usage of the int constructor for Content-Length values, improper handling of NUL, CR, and LF in header values, and improper stripping of whitespace before colon in HTTP headers.

Note:

This is only exploitable if AIOHTTP_NO_EXTENSIONS is enabled or not using a prebuilt wheel.

Workaround

This vulnerability can be mitigated by verifying that a Content-Length value consists only of ASCII digits before parsing, rejecting all messages with NUL, CR, or LF in a header value, and rejecting all messages with whitespace before a colon in a header field.

CVSS Scores

version 3.1