<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://vulnerability.circl.lu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-09-28T10:27:13.113256+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@circl.lu</email>
  </author>
  <link href="https://vulnerability.circl.lu" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/cve-2021-21240</id>
    <title>CVE-2021-21240 — Regular Expression Denial of Service in httplib2</title>
    <updated>2026-09-28T10:27:13.117385+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> httplib2</p>
<p>httplib2 is a comprehensive HTTP client library for Python. In httplib2 before version 0.19.0, a malicious server which responds with long series of "\xa0" characters in the "www-authenticate" header may cause Denial of Service (CPU burn while parsing header) of the httplib2 client accessing said server. This is fixed in version 0.19.0 which contains a new implementation of auth headers parsing using the pyparsing library.</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/cve-2021-21240"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/ghsa-93xj-8mrv-444m</id>
    <title>GHSA-93xj-8mrv-444m — Regular Expression Denial of Service (REDoS) in httplib2</title>
    <updated>2026-09-28T10:27:13.117499+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: httplib2</p>
<p>### Impact
A malicious server which responds with long series of `\xa0` characters in the `www-authenticate` header may cause Denial of Service (CPU burn while parsing header) of the httplib2 client accessing said server.</p>
<p>### Patches
Version 0.19.0 contains new implementation of auth headers parsing, using pyparsing library.
https://github.com/httplib2/httplib2/pull/182</p>
<p>### Workarounds
```py
import httplib2
httplib2.USE_WWW_AUTH_STRICT_PARSING = True
```</p>
<p>### Technical Details</p>
<p>The vulnerable regular expression is https://github.com/httplib2/httplib2/blob/595e248d0958c00e83cb28f136a2a54772772b50/python3/httplib2/__init__.py#L336-L338</p>
<p>The section before the equals sign contains multiple overlapping groups. Ignoring the optional part containing a comma, we have:</p>
<p>\s*[^ \t\r\n=]+\s*=</p>
<p>Since all three infinitely repeating groups accept the non-breaking space character `\xa0`, a long string of `\xa0` causes catastrophic backtracking.</p>
<p>The complexity is cubic, so doubling the length of the malicious string of `\xa0` makes processing take 8 times as long.</p>
<p>### Reproduction Steps</p>
<p>Run a malicious server which responds with</p>
<p>www-authenticate: x \xa0\xa0\xa0\xa0x</p>
<p>but with many more `\xa0` characters.</p>
<p>An example malicious python server is below:</p>
<p>```py
from http.server import BaseHTTPRequestHandler, HTTPServer</p>
<p>def make_header_value(n_spaces):
    repeat = "\xa0" * n_spaces
    return f"x {repeat}x"</p>
<p>class Handler(BaseHTTPRequestHandler):
    def do_GET(self):
        self…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/ghsa-93xj-8mrv-444m"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/pysec-2021-16</id>
    <title>PYSEC-2021-16</title>
    <updated>2026-09-28T10:27:13.117610+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: httplib2</p>
<p>httplib2 is a comprehensive HTTP client library for Python. In httplib2 before version 0.19.0, a malicious server which responds with long series of "\xa0" characters in the "www-authenticate" header may cause Denial of Service (CPU burn while parsing header) of the httplib2 client accessing said server. This is fixed in version 0.19.0 which contains a new implementation of auth headers parsing using the pyparsing library.</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/pysec-2021-16"/>
  </entry>
</feed>
