<?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>Tue, 29 Sep 2026 10:47:06 +0000</lastBuildDate>
    <item>
      <title>CVE-2019-16792 — HTTP Request Smuggling: Content-Length Sent Twice in Waitress</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2019-16792</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Pylons Waitress&lt;/p&gt;
&lt;p&gt;Waitress through version 1.3.1 allows request smuggling by sending the Content-Length header twice. Waitress would header fold a double Content-Length header and due to being unable to cast the now comma separated value to an integer would set the Content-Length to 0 internally. If two Content-Length headers are sent in a single request, Waitress would treat the request as having no body, thereby treating the body of the request as a new request in HTTP pipelining. This issue is fixed in Waitress 1.4.0.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Pylons Waitress&lt;/p&gt;
&lt;p&gt;Waitress through version 1.3.1 allows request smuggling by sending the Content-Length header twice. Waitress would header fold a double Content-Length header and due to being unable to cast the now comma separated value to an integer would set the Content-Length to 0 internally. If two Content-Length headers are sent in a single request, Waitress would treat the request as having no body, thereby treating the body of the request as a new request in HTTP pipelining. This issue is fixed in Waitress 1.4.0.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2019-16792</guid>
    </item>
    <item>
      <title>GHSA-4ppp-gpcr-7qf6 — HTTP Request Smuggling: Content-Length Sent Twice in Waitress</title>
      <link>https://vulnerability.circl.lu/vuln/ghsa-4ppp-gpcr-7qf6</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: waitress&lt;/p&gt;
&lt;p&gt;### Impact&lt;/p&gt;
&lt;p&gt;Waitress would header fold a double `Content-Length` header and due to being unable to cast the now comma separated value to an integer would set the `Content-Length` to 0 internally.&lt;/p&gt;
&lt;p&gt;So a request with:&lt;/p&gt;
&lt;p&gt;```
Content-Length: 10
Content-Length: 10
```&lt;/p&gt;
&lt;p&gt;would get transformed to:&lt;/p&gt;
&lt;p&gt;```
Content-Length: 10, 10
```&lt;/p&gt;
&lt;p&gt;Which would Waitress would then internally set to `Content-Lenght: 0`.&lt;/p&gt;
&lt;p&gt;Waitress would then treat the request as having no body, thereby treating the body of the request as a new request in HTTP pipelining.&lt;/p&gt;
&lt;p&gt;### Patches&lt;/p&gt;
&lt;p&gt;This issue is fixed in Waitress 1.4.0. This brings a range of changes to harden Waitress against potential HTTP request confusions, and may change the behaviour of Waitress behind non-conformist proxies.&lt;/p&gt;
&lt;p&gt;The Pylons Project recommends upgrading as soon as possible, while validating that the changes in Waitress don&amp;#39;t cause any changes in behavior.&lt;/p&gt;
&lt;p&gt;### Workarounds&lt;/p&gt;
&lt;p&gt;Various reverse proxies may have protections against sending potentially bad HTTP requests to the backend, and or hardening against potential issues like this. If the reverse proxy doesn&amp;#39;t use HTTP/1.1 for connecting to the backend issues are also somewhat mitigated, as HTTP pipelining does not exist in HTTP/1.0 and Waitress will close the connection after every single request (unless the Keep Alive header is explicitly sent... so this is not a fool proof security method).&lt;/p&gt;
&lt;p&gt;### Issues/more security issues:&lt;/p&gt;
&lt;p&gt;* open an issue at https://github.com/Pylons/waitress/issues (if not sensi…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: waitress&lt;/p&gt;
&lt;p&gt;### Impact&lt;/p&gt;
&lt;p&gt;Waitress would header fold a double `Content-Length` header and due to being unable to cast the now comma separated value to an integer would set the `Content-Length` to 0 internally.&lt;/p&gt;
&lt;p&gt;So a request with:&lt;/p&gt;
&lt;p&gt;```
Content-Length: 10
Content-Length: 10
```&lt;/p&gt;
&lt;p&gt;would get transformed to:&lt;/p&gt;
&lt;p&gt;```
Content-Length: 10, 10
```&lt;/p&gt;
&lt;p&gt;Which would Waitress would then internally set to `Content-Lenght: 0`.&lt;/p&gt;
&lt;p&gt;Waitress would then treat the request as having no body, thereby treating the body of the request as a new request in HTTP pipelining.&lt;/p&gt;
&lt;p&gt;### Patches&lt;/p&gt;
&lt;p&gt;This issue is fixed in Waitress 1.4.0. This brings a range of changes to harden Waitress against potential HTTP request confusions, and may change the behaviour of Waitress behind non-conformist proxies.&lt;/p&gt;
&lt;p&gt;The Pylons Project recommends upgrading as soon as possible, while validating that the changes in Waitress don&amp;#39;t cause any changes in behavior.&lt;/p&gt;
&lt;p&gt;### Workarounds&lt;/p&gt;
&lt;p&gt;Various reverse proxies may have protections against sending potentially bad HTTP requests to the backend, and or hardening against potential issues like this. If the reverse proxy doesn&amp;#39;t use HTTP/1.1 for connecting to the backend issues are also somewhat mitigated, as HTTP pipelining does not exist in HTTP/1.0 and Waitress will close the connection after every single request (unless the Keep Alive header is explicitly sent... so this is not a fool proof security method).&lt;/p&gt;
&lt;p&gt;### Issues/more security issues:&lt;/p&gt;
&lt;p&gt;* open an issue at https://github.com/Pylons/waitress/issues (if not sensi…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/ghsa-4ppp-gpcr-7qf6</guid>
    </item>
    <item>
      <title>PYSEC-2020-178</title>
      <link>https://vulnerability.circl.lu/vuln/pysec-2020-178</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: waitress&lt;/p&gt;
&lt;p&gt;Waitress through version 1.3.1 allows request smuggling by sending the Content-Length header twice. Waitress would header fold a double Content-Length header and due to being unable to cast the now comma separated value to an integer would set the Content-Length to 0 internally. If two Content-Length headers are sent in a single request, Waitress would treat the request as having no body, thereby treating the body of the request as a new request in HTTP pipelining. This issue is fixed in Waitress 1.4.0.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: waitress&lt;/p&gt;
&lt;p&gt;Waitress through version 1.3.1 allows request smuggling by sending the Content-Length header twice. Waitress would header fold a double Content-Length header and due to being unable to cast the now comma separated value to an integer would set the Content-Length to 0 internally. If two Content-Length headers are sent in a single request, Waitress would treat the request as having no body, thereby treating the body of the request as a new request in HTTP pipelining. This issue is fixed in Waitress 1.4.0.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/pysec-2020-178</guid>
    </item>
  </channel>
</rss>
