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

    Threat Intelligence

    Exploit Maturity
    Proof of concept
    EPSS
    0.09% (38th 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 ID SNYK-PYTHON-AIOHTTP-6057353
  • published 15 Nov 2023
  • disclosed 14 Nov 2023
  • credit Ben Kallus

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
Expand this section

Snyk

Recommended
5.3 medium
  • Attack Vector (AV)
    Network
  • Attack Complexity (AC)
    Low
  • Privileges Required (PR)
    None
  • User Interaction (UI)
    None
  • Scope (S)
    Unchanged
  • Confidentiality (C)
    None
  • Integrity (I)
    Low
  • Availability (A)
    None
Expand this section

NVD

7.5 high
Expand this section

SUSE

5.3 medium
Expand this section

Red Hat

7.5 high