Skip to content
Fencer Intel
critical 9.8

CVE-2014-4650 in the critical feed json

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 a…

published 6y ago modified 4mo ago also EUVD-2014-4576

cvss
9.8
version 3.1, NVD
cisa kev
Not listed
not in CISA's catalog
epss
23.9%
EPSS 23.9% chance of exploitation in 30 days, percentile 97%
public exploits
1
Exploit-DB

Summary

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.

Patch / fix

  • python python 2.7.8, 3.2.6, 3.3.6, 3.4.2
  • python2.7 Debian 11 2.7.8-1

debian advisories DEBIAN-CVE-2014-4650

  • python2.7 Ubuntu 14.04 LTS 2.7.6-8ubuntu0.2
  • python3.4 Ubuntu 14.04 LTS 3.4.0-2ubuntu1.1

ubuntu advisories UBUNTU-CVE-2014-4650

Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0

  • python RHEL 7 2.7.5-34.el7
  • tkinter RHEL 7 2.7.5-34.el7
  • python-libs RHEL 7 2.7.5-34.el7
  • python-test RHEL 7 2.7.5-34.el7
  • python-tools RHEL 7 2.7.5-34.el7
  • python RHEL 6 2.6.6-64.el6
  • tkinter RHEL 6 2.6.6-64.el6
  • python-libs RHEL 6 2.6.6-64.el6

red hat advisories RHSA-2015:2101RHSA-2015:1330RHSA-2015:1064

  • python SLE Module for Python 2 15 SP1, SLE Module for Desktop Applications 15 SP1, SLE Module for Desktop Applications 15 +2 more 2.7.17-7.32.2
  • python-base SLE Module for Python 2 15 SP1, SLE Module for Basesystem 15 SP1, SLE Module for Basesystem 15 2.7.17-7.32.1
  • python3 SLE Module for Basesystem 15 SP1, SLE Module for Basesystem 15 3.6.10-3.42.2
  • python3-base SLE Module for Development Tools 15 SP1, SLE Module for Development Tools 15, SLE Module for Basesystem 15 SP1 +1 more 3.6.10-3.42.2
  • python SLES for SAP 12, SLES 12, SLED 12 2.7.9-14.1
  • python-base SLES for SAP 12, SLES 12, SLED 12 +2 more 2.7.9-14.1

suse advisories SUSE-SU-2020:0234-1SUSE-SU-2020:0114-1SUSE-SU-2015:1344-1

  • python315 openSUSE Tumbleweed 3.15.0~a1-1.1
  • python314 openSUSE Tumbleweed 3.14.0~a1-1.1
  • python313 openSUSE Tumbleweed 3.13.0~b3-1.1
  • python3 openSUSE Tumbleweed 3.5.1-3.8
  • python-base openSUSE Tumbleweed 2.7.12-1.4
  • python openSUSE Tumbleweed 2.7.18-8.1
  • python310 openSUSE Tumbleweed 3.10.0rc1-4.2
  • python36 openSUSE Tumbleweed 3.6.15-1.1

opensuse advisories openSUSE-SU-2025:15713-1openSUSE-SU-2024:14434-1openSUSE-SU-2024:14109-1openSUSE-SU-2024:10100-1openSUSE-SU-2024:10536-1openSUSE-SU-2024:11202-1

Is CVE-2014-4650 in your stack? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.

Check with Fencer

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2014-4650 updated cvss 5.0

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

  • Red Hat Enterprise Linux 5 python
    affected: no fix planned “Will not fix”
  • Red Hat Software Collections python27-python, python33-python, python27-tkinter, python27-python-libs, python27-python-test, python33-python-libs, +4 more
    affected: no fix available, no fix planned “Will not fix”
  • Red Hat Enterprise Linux Client (v. 7) python 2.7.5-34.el7, python-libs 2.7.5-34.el7 Red Hat Enterprise Linux Client Optional (v. 7) tkinter 2.7.5-34.el7, python-test 2.7.5-34.el7, python-tools 2.7.5-34.el7 Red Hat Enterprise Linux ComputeNode (v. 7) python 2.7.5-34.el7, python-libs 2.7.5-34.el7 Red Hat Enterprise Linux ComputeNode Optional (v. 7) tkinter 2.7.5-34.el7, python-test 2.7.5-34.el7, python-tools 2.7.5-34.el7
    fixed: vendor fix RHSA-2015:2101
  • Red Hat Enterprise Linux Desktop (v. 6) python 2.6.6-64.el6, tkinter 2.6.6-64.el6, python-libs 2.6.6-64.el6 Red Hat Enterprise Linux Desktop Optional (v. 6) python-test 2.6.6-64.el6, python-tools 2.6.6-64.el6 Red Hat Enterprise Linux HPC Node (v. 6) python 2.6.6-64.el6, python-libs 2.6.6-64.el6 Red Hat Enterprise Linux HPC Node Optional (v. 6) tkinter 2.6.6-64.el6, python-test 2.6.6-64.el6, python-tools 2.6.6-64.el6 Red Hat Enterprise Linux Server (v. 6) python 2.6.6-64.el6, tkinter 2.6.6-64.el6, python-libs 2.6.6-64.el6
    fixed: vendor fix RHSA-2015:1330
  • Red Hat Enterprise Linux Server (v. 7) python 2.7.5-34.el7, python-libs 2.7.5-34.el7
    fixed: vendor fix RHSA-2015:2101
  • Red Hat Enterprise Linux Server Optional (v. 6) tkinter 2.6.6-64.el6, python-test 2.6.6-64.el6, python-tools 2.6.6-64.el6
    fixed: vendor fix RHSA-2015:1330
  • Red Hat Enterprise Linux Server Optional (v. 7) tkinter 2.7.5-34.el7, python-test 2.7.5-34.el7, python-tools 2.7.5-34.el7
    fixed: vendor fix RHSA-2015:2101
  • Red Hat Enterprise Linux Workstation (v. 6) python 2.6.6-64.el6, tkinter 2.6.6-64.el6, python-libs 2.6.6-64.el6
    fixed: vendor fix RHSA-2015:1330
show 5 more
  • Red Hat Enterprise Linux Workstation (v. 7) python 2.7.5-34.el7, python-libs 2.7.5-34.el7
    fixed: vendor fix RHSA-2015:2101
  • Red Hat Enterprise Linux Workstation Optional (v. 6) python-test 2.6.6-64.el6, python-tools 2.6.6-64.el6
    fixed: vendor fix RHSA-2015:1330
  • Red Hat Enterprise Linux Workstation Optional (v. 7) tkinter 2.7.5-34.el7, python-test 2.7.5-34.el7, python-tools 2.7.5-34.el7
    fixed: vendor fix RHSA-2015:2101
  • Red Hat Software Collections for Red Hat Enterprise Linux Server (v. 6) python27 1.1-17.el6, python27-python 2.7.8-3.el6, python27-runtime 1.1-17.el6, python27-scldevel 1.1-17.el6, python27-tkinter 2.7.8-3.el6, python27-python-pip 1.5.6-5.el6, +6 more Red Hat Software Collections for Red Hat Enterprise Linux Server (v. 7) python27 1.1-20.el7, python27-python 2.7.8-3.el7, python27-runtime 1.1-20.el7, python27-scldevel 1.1-20.el7, python27-tkinter 2.7.8-3.el7, python27-python-pip 1.5.6-5.el7, +6 more Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 6.5) python27 1.1-17.el6, python27-python 2.7.8-3.el6, python27-runtime 1.1-17.el6, python27-scldevel 1.1-17.el6, python27-tkinter 2.7.8-3.el6, python27-python-pip 1.5.6-5.el6, +6 more Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 6.6) python27 1.1-17.el6, python27-python 2.7.8-3.el6, python27-runtime 1.1-17.el6, python27-scldevel 1.1-17.el6, python27-tkinter 2.7.8-3.el6, python27-python-pip 1.5.6-5.el6, +6 more Red Hat Software Collections for Red Hat Enterprise Linux Workstation (v. 6) python27 1.1-17.el6, python27-python 2.7.8-3.el6, python27-runtime 1.1-17.el6, python27-scldevel 1.1-17.el6, python27-tkinter 2.7.8-3.el6, python27-python-pip 1.5.6-5.el6, +6 more Red Hat Software Collections for Red Hat Enterprise Linux Workstation (v. 7) python27 1.1-20.el7, python27-python 2.7.8-3.el7, python27-runtime 1.1-20.el7, python27-scldevel 1.1-20.el7, python27-tkinter 2.7.8-3.el7, python27-python-pip 1.5.6-5.el7, +6 more
    fixed: vendor fix RHSA-2015:1064
  • Red Hat Software Collections rh-python34-python, rh-python34-python-libs, rh-python34-python-test, rh-python34-python-tools, rh-python34-python-tkinter
    not affected: vulnerable code not present

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

Timeline

  1. First public exploit (EDB-33894)
  2. Published

Exploit prediction

23.91% chance of exploitation in the next 30 days, higher than 97% of all scored CVEs (FIRST EPSS, 2026-11-09).

Exploits and checks

  • EDB-33894 Python CGIHTTPServer - Encoded Directory Traversal webapps, 2014-06-27
  • bugs.python.org http://bugs.python.org/issue21766 referenced PoC, tagged "exploit" by a source, unverified

CVSS scores

assigned by version score vector
NVD 3.1 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
NVD 2.0 7.5 AV:N/AC:L/Au:N/C:P/I:P/A:P

Classification

Weakness
  • CWE-22 Improper Limitation of a Pathname to a Restricted Directory

References

Sources

Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.