synced 7 MIN AGO
01 Record

CVE-2015-20107

In Python (aka CPython) up to 3.10.8, the mailcap module does not add escape characters into commands discovered in the system mailcap file. This may allow attackers to inject shell commands into

HighPUBLISHEDCNA: mitre
CNA base score7.8 CVSS v3.xCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

02 Description

In Python (aka CPython) up to 3.10.8, the mailcap module does not add escape characters into commands discovered in the system mailcap file. This may allow attackers to inject shell commands into

03 Exploitation and scoring

Exploitation
Assessed, none found. CISA's assessment recorded neither public exploit code nor evidence of exploitation when it was made.
SSVC decision
  • ExploitationnoneCISA recorded no public exploit code and no evidence of exploitation.
  • AutomatablenoAt least one step from reconnaissance to exploitation cannot be reliably automated.
  • Technical ImpacttotalSuccessful exploitation gives total control of the vulnerable component.
CISA publishes the decision points, not a final SSVC decision. The decision also depends on mission and well-being impact, which is a property of your deployment rather than of the vulnerability.
EPSS probability
2.78% probability of exploitation activity in the next 30 days.
EPSS percentile
Equal to or higher than the score of 85.9% of scored records. A rank, not a probability.
NVD base score
7.6 (CVSS v3.x), scored by the NVD independently of the CNA.
NVD CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:L
NVD analysis status
Modified. NVD last modified this record on 2026-10-14.
Red Hat severity
Moderate. Red Hat's rating for its own products, not a CVSS rating.

Exploit-prediction scores from FIRST. Independent scoring and analysis status from the NVD. Vendor severity from Red Hat. Exploitation assessment and catalog membership from CISA.

04 Metadata

Published
2022-04-13 00:00Z4 YR AGO
Last updated
2026-10-14 06:25Z15 DAYS AGO
Reserved
2022-04-13
Assigning CNA
mitre
Record state
PUBLISHED
Severity
High (CVSS 7.8)
CNA CVSS vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Weaknesses
  • CWE-77Improper Neutralization of Special Elements used in a Command ('Command Injection')Class
  • CWE-88Improper Neutralization of Argument Delimiters in a Command ('Argument Injection')Base
Data version
5.2
Document digest
fbdf18f2cfeb92a7778acdc5a45de1e6ae256dc5cc3382311b333548ec0edaca

05 Affected products

VendorProductVersionsPlatforms
fedoraprojectfedoraNot specified—
netappactive_iq_unified_managerNot specified—
netappsnapcenterNot specified—
pythonpythonNot specified—
redhatenterprise_linuxNot specified—
redhatrhel_software_collectionsNot specified—

06 References

07 Fixed in

AlmaLinux 8

  • babel
    Fixed in 2.5.1-10.module_el8.6.0+2781+fed64c13
  • platform-python
    Fixed in 3.6.8-47.el8_6.alma
  • platform-python-debug
    Fixed in 3.6.8-47.el8_6.alma
  • platform-python-devel
    Fixed in 3.6.8-47.el8_6.alma
  • python-nose-docs
    Fixed in 1.3.7-31.module_el8.6.0+2781+fed64c13
  • python-psycopg2-doc
    Fixed

    A version is affected if any line below covers it.

    • Affected before 2.7.5-7.module_el8.6.0+2781+fed64c13
    • Affected before 2.7.5-7.module_el8.6.0+3162+01a09e5a
  • python-sqlalchemy-doc
    Fixed in 1.3.2-2.module_el8.6.0+2781+fed64c13
  • python2
    Fixed in 2.7.18-11.module_el8.7.0+3331+6c5bd851.alma
  • python2-Cython
    Fixed

    A version is affected if any line below covers it.

    • Affected before 0.28.1-7.module_el8.6.0+2781+fed64c13
    • Affected before 0.28.1-7.module_el8.6.0+3162+01a09e5a
  • python2-PyMySQL
    Fixed in 0.8.0-10.module_el8.6.0+2781+fed64c13
  • python2-attrs
    Fixed in 17.4.0-10.module_el8.6.0+2781+fed64c13
  • python2-babel
    Fixed in 2.5.1-10.module_el8.6.0+2781+fed64c13
  • python2-backports
    Fixed

    A version is affected if any line below covers it.

    • Affected before 1.0-16.module_el8.6.0+2781+fed64c13
    • Affected before 1.0-16.module_el8.6.0+3162+01a09e5a
  • python2-backports-ssl_match_hostname
    Fixed in 3.5.0.1-12.module_el8.6.0+2781+fed64c13
  • python2-bson
    Fixed

    A version is affected if any line below covers it.

    • Affected before 3.7.0-1.module_el8.6.0+2781+fed64c13
    • Affected before 3.7.0-1.module_el8.6.0+3162+01a09e5a
  • python2-chardet
    Fixed in 3.0.4-10.module_el8.6.0+2781+fed64c13
  • python2-coverage
    Fixed

    A version is affected if any line below covers it.

    • Affected before 4.5.1-4.module_el8.6.0+2781+fed64c13
    • Affected before 4.5.1-4.module_el8.6.0+3162+01a09e5a
  • python2-debug
    Fixed in 2.7.18-11.module_el8.7.0+3331+6c5bd851.alma
  • python2-devel
    Fixed in 2.7.18-11.module_el8.7.0+3331+6c5bd851.alma
  • python2-dns
    Fixed in 1.15.0-10.module_el8.6.0+2781+fed64c13
  • python2-docs
    Fixed in 2.7.16-2.module_el8.6.0+2781+fed64c13
  • python2-docs-info
    Fixed in 2.7.16-2.module_el8.6.0+2781+fed64c13
  • python2-docutils
    Fixed in 0.14-12.module_el8.6.0+2781+fed64c13
  • python2-funcsigs
    Fixed in 1.0.2-13.module_el8.6.0+2781+fed64c13
  • python2-idna
    Fixed in 2.5-7.module_el8.6.0+2781+fed64c13
  • python2-ipaddress
    Fixed in 1.0.18-6.module_el8.6.0+2781+fed64c13
  • python2-jinja2
    Fixed in 2.10-9.module_el8.6.0+2781+fed64c13
  • python2-libs
    Fixed in 2.7.18-11.module_el8.7.0+3331+6c5bd851.alma
  • python2-lxml
    Fixed

    A version is affected if any line below covers it.

    • Affected before 4.2.3-6.module_el8.6.0+2781+fed64c13
    • Affected before 4.2.3-6.module_el8.6.0+3162+01a09e5a
  • python2-markupsafe
    Fixed

    A version is affected if any line below covers it.

    • Affected before 0.23-19.module_el8.6.0+2781+fed64c13
    • Affected before 0.23-19.module_el8.6.0+3162+01a09e5a
  • python2-mock
    Fixed in 2.0.0-13.module_el8.6.0+2781+fed64c13
  • python2-nose
    Fixed in 1.3.7-31.module_el8.6.0+2781+fed64c13
  • python2-numpy
    Fixed

    A version is affected if any line below covers it.

    • Affected before 1:1.14.2-16.module_el8.6.0+2781+fed64c13
    • Affected before 1:1.14.2-16.module_el8.6.0+3162+01a09e5a
  • python2-numpy-doc
    Fixed in 1:1.14.2-16.module_el8.6.0+2781+fed64c13
  • python2-numpy-f2py
    Fixed

    A version is affected if any line below covers it.

    • Affected before 1:1.14.2-16.module_el8.6.0+2781+fed64c13
    • Affected before 1:1.14.2-16.module_el8.6.0+3162+01a09e5a
  • python2-pip
    Fixed in 9.0.3-19.module_el8.6.0+2781+fed64c13
  • python2-pip-wheel
    Fixed in 9.0.3-19.module_el8.6.0+2781+fed64c13
  • python2-pluggy
    Fixed in 0.6.0-8.module_el8.6.0+2781+fed64c13
  • python2-psycopg2
    Fixed

    A version is affected if any line below covers it.

    • Affected before 2.7.5-7.module_el8.6.0+2781+fed64c13
    • Affected before 2.7.5-7.module_el8.6.0+3162+01a09e5a
  • python2-psycopg2-debug
    Fixed

    A version is affected if any line below covers it.

    • Affected before 2.7.5-7.module_el8.6.0+2781+fed64c13
    • Affected before 2.7.5-7.module_el8.6.0+3162+01a09e5a

129 further packages in AlmaLinux 8 not shown (first 40 listed).

Source: AlmaLinux, AlmaLinux OS. Copyright (c) 2023 AlmaLinux OS. Licensed under MIT License. Received through OSV.dev. Reformatted by exploit.cc.

AlmaLinux 9

  • python-unversioned-command
    Fixed in 3.9.14-1.el9
  • python3
    Fixed in 3.9.14-1.el9
  • python3-debug
    Fixed in 3.9.14-1.el9
  • python3-devel
    Fixed in 3.9.14-1.el9
  • python3-idle
    Fixed in 3.9.14-1.el9
  • python3-libs
    Fixed in 3.9.14-1.el9
  • python3-test
    Fixed in 3.9.14-1.el9
  • python3-tkinter
    Fixed in 3.9.14-1.el9

Source: AlmaLinux, AlmaLinux OS. Copyright (c) 2023 AlmaLinux OS. Licensed under MIT License. Received through OSV.dev. Reformatted by exploit.cc.

CloudLinux 8

  • babel
    Fixed in 2.5.1-10.module_el8.6.0+2781+fed64c13
  • platform-python
    Fixed in 3.6.8-47.el8_6.alma
  • platform-python-debug
    Fixed in 3.6.8-47.el8_6.alma
  • platform-python-devel
    Fixed in 3.6.8-47.el8_6.alma
  • python-nose-docs
    Fixed in 1.3.7-31.module_el8.6.0+2781+fed64c13
  • python-psycopg2-doc
    Fixed

    A version is affected if any line below covers it.

    • Affected before 2.7.5-7.module_el8.6.0+2781+fed64c13
    • Affected before 2.7.5-7.module_el8.6.0+3162+01a09e5a
  • python-sqlalchemy-doc
    Fixed in 1.3.2-2.module_el8.6.0+2781+fed64c13
  • python2
    Fixed in 2.7.18-11.module_el8.7.0+3331+6c5bd851.alma
  • python2-Cython
    Fixed

    A version is affected if any line below covers it.

    • Affected before 0.28.1-7.module_el8.6.0+2781+fed64c13
    • Affected before 0.28.1-7.module_el8.6.0+3162+01a09e5a
  • python2-PyMySQL
    Fixed in 0.8.0-10.module_el8.6.0+2781+fed64c13
  • python2-attrs
    Fixed in 17.4.0-10.module_el8.6.0+2781+fed64c13
  • python2-babel
    Fixed in 2.5.1-10.module_el8.6.0+2781+fed64c13
  • python2-backports
    Fixed

    A version is affected if any line below covers it.

    • Affected before 1.0-16.module_el8.6.0+2781+fed64c13
    • Affected before 1.0-16.module_el8.6.0+3162+01a09e5a
  • python2-backports-ssl_match_hostname
    Fixed in 3.5.0.1-12.module_el8.6.0+2781+fed64c13
  • python2-bson
    Fixed

    A version is affected if any line below covers it.

    • Affected before 3.7.0-1.module_el8.6.0+2781+fed64c13
    • Affected before 3.7.0-1.module_el8.6.0+3162+01a09e5a
  • python2-chardet
    Fixed in 3.0.4-10.module_el8.6.0+2781+fed64c13
  • python2-coverage
    Fixed

    A version is affected if any line below covers it.

    • Affected before 4.5.1-4.module_el8.6.0+2781+fed64c13
    • Affected before 4.5.1-4.module_el8.6.0+3162+01a09e5a
  • python2-debug
    Fixed in 2.7.18-11.module_el8.7.0+3331+6c5bd851.alma
  • python2-devel
    Fixed in 2.7.18-11.module_el8.7.0+3331+6c5bd851.alma
  • python2-dns
    Fixed in 1.15.0-10.module_el8.6.0+2781+fed64c13
  • python2-docs
    Fixed in 2.7.16-2.module_el8.6.0+2781+fed64c13
  • python2-docs-info
    Fixed in 2.7.16-2.module_el8.6.0+2781+fed64c13
  • python2-docutils
    Fixed in 0.14-12.module_el8.6.0+2781+fed64c13
  • python2-funcsigs
    Fixed in 1.0.2-13.module_el8.6.0+2781+fed64c13
  • python2-idna
    Fixed in 2.5-7.module_el8.6.0+2781+fed64c13
  • python2-ipaddress
    Fixed in 1.0.18-6.module_el8.6.0+2781+fed64c13
  • python2-jinja2
    Fixed in 2.10-9.module_el8.6.0+2781+fed64c13
  • python2-libs
    Fixed in 2.7.18-11.module_el8.7.0+3331+6c5bd851.alma
  • python2-lxml
    Fixed

    A version is affected if any line below covers it.

    • Affected before 4.2.3-6.module_el8.6.0+2781+fed64c13
    • Affected before 4.2.3-6.module_el8.6.0+3162+01a09e5a
  • python2-markupsafe
    Fixed

    A version is affected if any line below covers it.

    • Affected before 0.23-19.module_el8.6.0+2781+fed64c13
    • Affected before 0.23-19.module_el8.6.0+3162+01a09e5a
  • python2-mock
    Fixed in 2.0.0-13.module_el8.6.0+2781+fed64c13
  • python2-nose
    Fixed in 1.3.7-31.module_el8.6.0+2781+fed64c13
  • python2-numpy
    Fixed

    A version is affected if any line below covers it.

    • Affected before 1:1.14.2-16.module_el8.6.0+2781+fed64c13
    • Affected before 1:1.14.2-16.module_el8.6.0+3162+01a09e5a
  • python2-numpy-doc
    Fixed in 1:1.14.2-16.module_el8.6.0+2781+fed64c13
  • python2-numpy-f2py
    Fixed

    A version is affected if any line below covers it.

    • Affected before 1:1.14.2-16.module_el8.6.0+2781+fed64c13
    • Affected before 1:1.14.2-16.module_el8.6.0+3162+01a09e5a
  • python2-pip
    Fixed in 9.0.3-19.module_el8.6.0+2781+fed64c13
  • python2-pip-wheel
    Fixed in 9.0.3-19.module_el8.6.0+2781+fed64c13
  • python2-pluggy
    Fixed in 0.6.0-8.module_el8.6.0+2781+fed64c13
  • python2-psycopg2
    Fixed

    A version is affected if any line below covers it.

    • Affected before 2.7.5-7.module_el8.6.0+2781+fed64c13
    • Affected before 2.7.5-7.module_el8.6.0+3162+01a09e5a
  • python2-psycopg2-debug
    Fixed

    A version is affected if any line below covers it.

    • Affected before 2.7.5-7.module_el8.6.0+2781+fed64c13
    • Affected before 2.7.5-7.module_el8.6.0+3162+01a09e5a

129 further packages in CloudLinux 8 not shown (first 40 listed).

Derived from AlmaLinux 8. Partial coverage: only packages taken from AlmaLinux 8 are listed.

Source: CloudLinux errata, CloudLinux Inc. Derived from: AlmaLinux, AlmaLinux OS. Copyright (c) 2023 AlmaLinux OS. Licensed under MIT License. Received through OSV.dev. Reformatted by exploit.cc.

CloudLinux 9

  • python-unversioned-command
    Fixed in 3.9.14-1.el9
  • python3
    Fixed in 3.9.14-1.el9
  • python3-debug
    Fixed in 3.9.14-1.el9
  • python3-devel
    Fixed in 3.9.14-1.el9
  • python3-idle
    Fixed in 3.9.14-1.el9
  • python3-libs
    Fixed in 3.9.14-1.el9
  • python3-test
    Fixed in 3.9.14-1.el9
  • python3-tkinter
    Fixed in 3.9.14-1.el9

Derived from AlmaLinux 9. Partial coverage: only packages taken from AlmaLinux 9 are listed.

Source: CloudLinux errata, CloudLinux Inc. Derived from: AlmaLinux, AlmaLinux OS. Copyright (c) 2023 AlmaLinux OS. Licensed under MIT License. Received through OSV.dev. Reformatted by exploit.cc.

Debian 12

  • pypy3
    Fixed in 7.3.11+dfsg-1

Source: Debian Security Tracker, the Debian security team. Received through OSV.dev. Reformatted by exploit.cc.

Debian 13

  • pypy3
    Fixed in 7.3.11+dfsg-1

Source: Debian Security Tracker, the Debian security team. Received through OSV.dev. Reformatted by exploit.cc.

Debian 14

  • pypy3
    Fixed in 7.3.11+dfsg-1

Source: Debian Security Tracker, the Debian security team. Received through OSV.dev. Reformatted by exploit.cc.

Ubuntu 18.04 LTS

  • python2.7
    Fixed in 2.7.17-1~18.04ubuntu1.8
  • python3.6
    Fixed in 3.6.9-1~18.04ubuntu1.8

Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.

Ubuntu 20.04 LTS

  • python2.7
    Fixed in 2.7.18-1~20.04.3
  • python3.8
    Fixed in 3.8.10-0ubuntu1~20.04.5

Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.

Ubuntu 22.04 LTS

  • python2.7
    Fixed in 2.7.18-13ubuntu1.1
  • python3.10
    Fixed in 3.10.4-3ubuntu0.1

Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.

Ubuntu Pro 14.04 LTS

  • python2.7
    Fixed in 2.7.6-8ubuntu0.6+esm11
    Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro
  • python3.4
    Fixed in 3.4.3-1ubuntu1~14.04.7+esm13
    Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro
  • python3.5
    Fixed in 3.5.2-2ubuntu0~16.04.4~14.04.1+esm1
    Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro

Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.

Ubuntu Pro 16.04 LTS

  • python2.7
    Fixed in 2.7.12-1ubuntu0~16.04.18+esm2
    Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro
  • python3.5
    Fixed in 3.5.2-2ubuntu0~16.04.13+esm3
    Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro

Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.

Ubuntu Pro 18.04 LTS

  • python3.7
    Fixed in 3.7.5-2ubuntu1~18.04.2+esm3
    Available with Ubuntu Pro: https://ubuntu.com/pro
  • python3.8
    Fixed in 3.8.0-3ubuntu1~18.04.2+esm2
    Available with Ubuntu Pro: https://ubuntu.com/pro

Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.

Ubuntu Pro 20.04 LTS

  • python3.9
    Fixed in 3.9.5-3ubuntu0~20.04.1+esm1
    Available with Ubuntu Pro: https://ubuntu.com/pro

Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.

A release or ecosystem missing from this list has no record here. It may be unaffected or not covered by the source. Source notices and licences.