CVE-2014-9365

Published: 12 December 2014

The HTTP clients in the (1) httplib, (2) urllib, (3) urllib2, and (4) xmlrpclib libraries in CPython (aka Python) 2.x before 2.7.9 and 3.x before 3.4.3, when accessing an HTTPS URL, do not (a) check the certificate against a trust store or verify that the server hostname matches a domain name in the subject's (b) Common Name or (c) subjectAltName field of the X.509 certificate, which allows man-in-the-middle attackers to spoof SSL servers via an arbitrary valid certificate.

Priority

Medium

Status

Package Release Status
python2.7
Launchpad, Ubuntu, Debian
Upstream
Released (2.7.9-1)
Ubuntu 16.04 ESM (Xenial Xerus) Not vulnerable

Ubuntu 14.04 ESM (Trusty Tahr) Ignored

python3.2
Launchpad, Ubuntu, Debian
Upstream Needs triage

Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

python3.4
Launchpad, Ubuntu, Debian
Upstream
Released (3.4.3)
Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr)
Released (3.4.3-1ubuntu1~14.04.2)

Notes

AuthorNote
mdeslaur
This is https://www.python.org/dev/peps/pep-0476/
Before this was implemented in python 2.7.9 and 3.4.3,
applications needed to verify certificate validity themselves.
This is quite a large change to backport into stable releases,
and the change in behaviour most certainly will break certain
setups.
tyhicks
We're considering the possibility of offering an opt-in fix for
this issue via PEP 493 if the backport is not too invasive
python3.4 in Ubuntu 14.04 LTS can be configured to perform full
certificate verification via the /etc/python3.4/cert-verification.conf
configuration file
mdeslaur
we will not be fixing this in Ubuntu 14.04 LTS before EoL.
Users are encouraged to migrate to a more recent Ubuntu version,
or migrate their applications to python 3.

References

Bugs