Known exploitable vulnerabilities in Python or libraries used by SecureDrop mitigated

THREAT34 · Mitigated: Controls in place bring the risk down to an acceptable level. · Defined in catalog.py:592

Risk
High impact × Medium likelihood = 9 high
After mitigations
High impact × Low likelihood = 6 medium

How statuses and scores work

Known vulnerabilities in Python or application libraries used by SecureDrop may lead to circumvention of security controls on the application server and potentially code execution or denial of service on the SecureDrop server.

Threat actors: Any

Mitigations

Mitigation Status
Wheels shipped in deb package (i.e. no pip install -r requirements.txt in prod) MITIG164 implemented
Python dependencies are updated when a CVE is present MITIG48 implemented
Python wheels rebuilt from source tarballs at debian package build time. MITIG94 implemented

Where it applies

Applies to 1 component in 1 scenario.

Supply chain and dependencies · SecureDrop source repository

Notes

Existing mitigations: Packaged with wheel and distributed with SecureDrop application apt packages (MITIG164). FPF performs vulnerability management for all Python packages used by SecureDrop. CI will run safety check to ensure dependencies do not have a CVE associated with the version (MITIG48). https://github.com/freedomofpress/securedrop/commit/e9c13ff3d09dfc446bc28da4347f627b5533b150. Hashes for known tarballs of python dependencies are stored in version control and validated at wheel build time (which is at application code build-time) (MITIG94). Automated test for mitigation: Yes.

How this threat is matched

Listed for these components. A boundary covers every component inside it.