CVE-2021-3116 Logic error in authentication in proxy.py

High 7.5 Published Updated

An attacker can bypass proxy authentication by sending incorrect Proxy-Authorization headers due to a boolean logic error in the proxy.py library.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2021-3116?

CVE-2021-3116 is a high-severity authentication bypass vulnerability in n/a, published on 11 Jan 2021. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

before_upstream_connection in AuthPlugin in http/proxy/auth.py in proxy.py before 2.3.1 accepts incorrect Proxy-Authorization header data because of a boolean confusion (and versus or).

Weakness: CWE-697

Which versions are affected by CVE-2021-3116?

3 open source packages ship an affected version, including proxy-py and proxy.py. It affects 1 product.

PackageAffectedFixed in
proxy-py PyPIAll versions2.3.1
proxy-py PyPIAll versions2.3.1
proxy.py PyPIAll versions2.3.1

Products include Proxy.py Project Proxy.py.

How do I fix CVE-2021-3116?

Upgrade proxy-py to 2.3.1 or later.

Upgrade, and rotate credentials and sessions that may have been exposed. More about Authentication bypass.

Is CVE-2021-3116 being exploited?

There is no known exploitation of CVE-2021-3116 in the wild and no public exploit code.

Sources

Also known as GHSA-cmc7-mfmr-xqrx, PYSEC-2021-46.

Is CVE-2021-3116 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free