CVE-2022-35920 Improper Limitation of a Pathname to a Restricted Directory in sanic

High 8.3 Published Updated

Attackers can access lateral directories via encoded URLs in Sanic's static file serving, potentially exposing sensitive files.

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

What is CVE-2022-35920?

CVE-2022-35920 is a high-severity path traversal vulnerability in sanic-org sanic, published on 1 Aug 2022. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

Sanic is an opensource python web server/framework. Affected versions of sanic allow access to lateral directories when using `app.static` if using encoded `%2F` URLs. Parent directory traversal is not impacted. Users are advised to upgrade. There is no known workaround for this issue.

Weakness: CWE-22

Which versions are affected by CVE-2022-35920?

7 open source packages ship an affected version, including sanic. It affects 1 product.

PackageAffectedFixed in
sanic PyPIAll versions20.12.7, 22.6.1, 21.12.2
sanic PyPIAll versions20.12.7
sanic PyPIAll versions20.12.7
sanic PyPIFrom 21.0.021.12.2
sanic PyPIFrom 21.0.021.12.2
sanic PyPIFrom 22.0.022.6.1
1 more packages
sanic PyPIFrom 22.0.022.6.1

Products include Sanic Project Sanic.

How do I fix CVE-2022-35920?

Upgrade sanic to a fixed version for your release line: 20.12.7, 22.6.1 or 21.12.2.

Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.

Is CVE-2022-35920 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2022-35920 exists.

Sources

Also known as GHSA-8cw9-5hmv-77w6, PYSEC-2026-918.

Is CVE-2022-35920 in your software?

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

Check your SBOMs for free