Skip to main content
Public proof of conceptFix available

CVE-2014-4650

A public proof of concept exists; no exploitation attested.

  • Published2020-02-20
  • Fixed in3.4.2 · 3.3.6 · 3.2.6 · 2.7.8
  • WeaknessCWE-22

Am I affected?

With a domain, we read the version its public headers and pages expose. A distribution build can carry the fix under an older number.

Description

The CGIHTTPServer module in Python 2.7.5 and 3.3.4 does not properly handle URLs in which URL encoding is used for path separators, which allows remote attackers to read script source code or conduct directory traversal attacks and execute unintended code via a crafted character sequence, as demonstrated by a %2f separator.

Timeline

dates in UTC
  1. 2014-06-27Exploit-DB entryExploit-DB

Versions per branch

NVD
Python
BranchAffectedFixed in
3.4≥ 3.4.0, < 3.4.23.4.2
3.3≥ 3.3.0, < 3.3.63.3.6
3.2≥ 3.2.0, < 3.2.63.2.6
2.7≥ 2.7.0, < 2.7.82.7.8
Redhat enterprise linux
BranchAffectedFixed in
5.0= 5.0no fix published
6.0= 6.0no fix published
7.0= 7.0no fix published
Redhat software collections
BranchAffectedFixed in
—all versionsno fix published

as publishedRanges as NVD and OSV publish them; a distribution’s build can be fixed under an older number.

Distribution builds and vendor advisories

Packages from OSV.dev and products from the vendors' CSAF advisories.

version not verifiedVersions not verified: read as OSV.dev and the vendors publish them, not checked against each vendor's release list.

Packages

  • pythonSUSE:Linux Enterprise Server for SAP Applications 12all versions · fixed in 2.7.9-14.1and 1 other package
  • pythonSUSE:Linux Enterprise Server 12all versions · fixed in 2.7.9-14.1and 1 other package
  • pythonSUSE:Linux Enterprise Module for Python 2 15 SP1all versions · fixed in 2.7.17-7.32.2
  • pythonSUSE:Linux Enterprise Module for Desktop Applications 15 SP1all versions · fixed in 2.7.17-7.32.2
  • pythonSUSE:Linux Enterprise Module for Desktop Applications 15all versions · fixed in 2.7.17-7.32.2
  • pythonSUSE:Linux Enterprise Module for Basesystem 15 SP1all versions · fixed in 2.7.17-7.32.2
  • pythonSUSE:Linux Enterprise Module for Basesystem 15all versions · fixed in 2.7.17-7.32.2
  • pythonSUSE:Linux Enterprise Desktop 12all versions · fixed in 2.7.9-14.1and 1 other package

51 more package ranges on OSV.dev

Vendor advisories

  • CVE-2014-4650 Red Hat Product Security305 products fixed · 17 known affected

    python: CGIHTTPServer module does not properly handle URL-encoded path separators in URLs

    python.src as a component of Red Hat Enterprise Linux 5 · python27-python as a component of Red Hat Software Collections · python27-python-debug as a component of Red Hat Software Collections · +14 more

  • RHSA-2015:2101 Red Hat Product Security88 products fixed

    Red Hat Security Advisory: python security, bug fix, and enhancement update

  • RHSA-2015:1330 Red Hat Product Security85 products fixed

    Red Hat Security Advisory: python security, bug fix, and enhancement update

  • RHSA-2015:1064 Red Hat Product Security132 products fixed

    Red Hat Security Advisory: python27 security, bug fix, and enhancement update

Full record on NVD

Fix

  1. Update Python to 3.4.2 · 3.3.6 · 3.2.6 · 2.7.8
  2. Vendor fix Red Hat Product Security RHSA-2015:2101 · 88 productsBefore applying this update, make sure all previously released errata relevant to your system have been applied. For details on how to apply this update, refer to: https://access.redhat.com/articles/11258
  3. Vendor fix Red Hat Product Security RHSA-2015:1064 · 132 productsBefore applying this update, make sure all previously released errata relevant to your system have been applied. For details on how to apply this update, refer to: https://access.redhat.com/articles/11258
  4. No fix available, says the vendor Red Hat Product Security CVE-2014-4650 · 8 productsAffected
  5. No fix planned, says the vendor Red Hat Product Security CVE-2014-4650 · 9 productsWill not fix

Advisories and patches

Detection

read 2026-11-06 06:13 UTC
Nuclei template
none so far
ProjectDiscovery
Exploit-DB
EDB-33894
Exploit-DB
Proof of concept
Metasploit modules
none listed
Metasploit Framework

Sources

  • NVDCVSS 3.19.8read 2026-10-23
  • NVDCVSS 2.07.5read 2026-10-23
  • NVDweakness (CWE)CWE-22read 2026-10-23
  • FIRST EPSSEPSS score23.9 %read 2026-11-06
  • Exploit-DBdetectionread 2026-11-06
  • OSVaffected packages—

Identifiers

Technical details

CVSS v3 Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Published
2020-02-20
Last Modified
2026-06-17
NVD status
Modified

Frequently asked questions

What is CVE-2014-4650?

The CGIHTTPServer module in Python 2.7.5 and 3.3.4 does not properly handle URLs in which URL encoding is used for path separators, which allows remote attackers to read script source code or conduct directory traversal attacks and execute unintended code via a crafted character sequence, as demonstrated by a %2f separator.

Is CVE-2014-4650 actively exploited?

Active exploitation of CVE-2014-4650 has not been confirmed. Its EPSS score was 23.9% on 2026-11-06, the estimated probability of exploitation in the next 30 days.

What is the CVSS score for CVE-2014-4650?

CVE-2014-4650 has a CVSS v3 base score of 9.8 (CRITICAL severity), with vector string CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H.

Running Python? Hear about its next vulnerability

Surveillance reads the versions in your stack — a domain, a lockfile or a list — checks each CVE against the ranges its sources publish, and alerts you when one you run is exploited or enters CISA KEV. A version it cannot read stays « version not verified ».

No credit card required · No monthly cap on website lookups · 250 API requests/month

Sources for this record