<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://vulnerability.circl.lu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Mon, 28 Sep 2026 19:36:05 +0000</lastBuildDate>
    <item>
      <title>CVE-2023-47627 — Request smuggling in aiohttp</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2023-47627</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; aio-libs aiohttp&lt;/p&gt;
&lt;p&gt;aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. The HTTP parser in AIOHTTP has numerous problems with header parsing, which could lead to request smuggling. This parser is only used when AIOHTTP_NO_EXTENSIONS is enabled (or not using a prebuilt wheel). These bugs have been addressed in commit `d5c12ba89` which has been included in release version 3.8.6. Users are advised to upgrade. There are no known workarounds for these issues.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; aio-libs aiohttp&lt;/p&gt;
&lt;p&gt;aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. The HTTP parser in AIOHTTP has numerous problems with header parsing, which could lead to request smuggling. This parser is only used when AIOHTTP_NO_EXTENSIONS is enabled (or not using a prebuilt wheel). These bugs have been addressed in commit `d5c12ba89` which has been included in release version 3.8.6. Users are advised to upgrade. There are no known workarounds for these issues.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2023-47627</guid>
    </item>
    <item>
      <title>GHSA-gfw2-4jvh-wgfg — AIOHTTP has problems in HTTP parser (the python one, not llhttp)</title>
      <link>https://vulnerability.circl.lu/vuln/ghsa-gfw2-4jvh-wgfg</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: aiohttp&lt;/p&gt;
&lt;p&gt;# Summary
The HTTP parser in AIOHTTP has numerous problems with header parsing, which could lead to request smuggling.
This parser is only used when `AIOHTTP_NO_EXTENSIONS` is enabled (or not using a prebuilt wheel).
 
# Details&lt;/p&gt;
&lt;p&gt;## Bug 1: Bad parsing of `Content-Length` values&lt;/p&gt;
&lt;p&gt;### Description
RFC 9110 says this:
&amp;gt; `Content-Length = 1*DIGIT`&lt;/p&gt;
&lt;p&gt;AIOHTTP does not enforce this rule, presumably because of an incorrect usage of the builtin `int` constructor. Because the `int` constructor accepts `+` and `-` prefixes, and digit-separating underscores, using `int` to parse CL values leads AIOHTTP to significant misinterpretation.&lt;/p&gt;
&lt;p&gt;### Examples
```
GET / HTTP/1.1\r\n
Content-Length: -0\r\n
\r\n
X
```
```
GET / HTTP/1.1\r\n
Content-Length: +0_1\r\n
\r\n
X
```&lt;/p&gt;
&lt;p&gt;### Suggested action
Verify that a `Content-Length` value consists only of ASCII digits before parsing, as the standard requires.&lt;/p&gt;
&lt;p&gt;## Bug 2: Improper handling of NUL, CR, and LF in header values&lt;/p&gt;
&lt;p&gt;### Description
RFC 9110 says this:
&amp;gt; Field values containing CR, LF, or NUL characters are invalid and dangerous, due to the varying ways that implementations might parse and interpret those characters; a recipient of CR, LF, or NUL within a field value MUST either reject the message or replace each of those characters with SP before further processing or forwarding of that message.&lt;/p&gt;
&lt;p&gt;AIOHTTP&amp;#39;s HTTP parser does not enforce this rule, and will happily process header values containing these three forbidden characters without replacing the…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: aiohttp&lt;/p&gt;
&lt;p&gt;# Summary
The HTTP parser in AIOHTTP has numerous problems with header parsing, which could lead to request smuggling.
This parser is only used when `AIOHTTP_NO_EXTENSIONS` is enabled (or not using a prebuilt wheel).
 
# Details&lt;/p&gt;
&lt;p&gt;## Bug 1: Bad parsing of `Content-Length` values&lt;/p&gt;
&lt;p&gt;### Description
RFC 9110 says this:
&amp;gt; `Content-Length = 1*DIGIT`&lt;/p&gt;
&lt;p&gt;AIOHTTP does not enforce this rule, presumably because of an incorrect usage of the builtin `int` constructor. Because the `int` constructor accepts `+` and `-` prefixes, and digit-separating underscores, using `int` to parse CL values leads AIOHTTP to significant misinterpretation.&lt;/p&gt;
&lt;p&gt;### Examples
```
GET / HTTP/1.1\r\n
Content-Length: -0\r\n
\r\n
X
```
```
GET / HTTP/1.1\r\n
Content-Length: +0_1\r\n
\r\n
X
```&lt;/p&gt;
&lt;p&gt;### Suggested action
Verify that a `Content-Length` value consists only of ASCII digits before parsing, as the standard requires.&lt;/p&gt;
&lt;p&gt;## Bug 2: Improper handling of NUL, CR, and LF in header values&lt;/p&gt;
&lt;p&gt;### Description
RFC 9110 says this:
&amp;gt; Field values containing CR, LF, or NUL characters are invalid and dangerous, due to the varying ways that implementations might parse and interpret those characters; a recipient of CR, LF, or NUL within a field value MUST either reject the message or replace each of those characters with SP before further processing or forwarding of that message.&lt;/p&gt;
&lt;p&gt;AIOHTTP&amp;#39;s HTTP parser does not enforce this rule, and will happily process header values containing these three forbidden characters without replacing the…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/ghsa-gfw2-4jvh-wgfg</guid>
    </item>
    <item>
      <title>PYSEC-2023-246</title>
      <link>https://vulnerability.circl.lu/vuln/pysec-2023-246</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: aiohttp&lt;/p&gt;
&lt;p&gt;aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. The HTTP parser in AIOHTTP has numerous problems with header parsing, which could lead to request smuggling. This parser is only used when AIOHTTP_NO_EXTENSIONS is enabled (or not using a prebuilt wheel). These bugs have been addressed in commit `d5c12ba89` which has been included in release version 3.8.6. Users are advised to upgrade. There are no known workarounds for these issues.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: aiohttp&lt;/p&gt;
&lt;p&gt;aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. The HTTP parser in AIOHTTP has numerous problems with header parsing, which could lead to request smuggling. This parser is only used when AIOHTTP_NO_EXTENSIONS is enabled (or not using a prebuilt wheel). These bugs have been addressed in commit `d5c12ba89` which has been included in release version 3.8.6. Users are advised to upgrade. There are no known workarounds for these issues.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/pysec-2023-246</guid>
    </item>
  </channel>
</rss>
