CVE-2023-40217

An issue was discovered in Python before 3.8.18, 3.9.x before 3.9.18, 3.10.x before 3.10.13, and 3.11.x before 3.11.5. It primarily affects servers (such as HTTP servers) that use TLS client authentication. If a TLS server-side socket is created, receives data into the socket buffer, and then is closed quickly, there is a brief window where the SSLSocket instance will detect the socket as "not connected" and won't initiate a handshake, but buffered data will still be readable from the socket buffer. This data will not be authenticated if the server-side TLS peer is expecting client certificate authentication, and is indistinguishable from valid TLS stream data. Data is limited in size to the amount that will fit in the buffer. (The TLS connection cannot directly be used for data exfiltration because the vulnerable code path requires that the connection be closed on initialization of the SSLSocket.)
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
NISTNIST
5.3 MEDIUM
NETWORK
LOW
NONE
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
mitreCNA
---
---
CVEADP
---
---
CISA-ADPADP
---
---
Base Score
CVSS 3.x
EPSS Score
Percentile: 51%
VendorProductVersion
pythonpython
𝑥
< 3.8.18
pythonpython
3.9.0 ≤
𝑥
< 3.9.18
pythonpython
3.10.0 ≤
𝑥
< 3.10.13
pythonpython
3.11.0 ≤
𝑥
< 3.11.5
𝑥
= Vulnerable software versions
Debian logo
Debian Releases
Debian Product
Codename
pypy3
bullseye
vulnerable
buster
no-dsa
bullseye (security)
7.3.5+dfsg-2+deb11u4
fixed
bookworm
7.3.11+dfsg-2+deb12u2
fixed
sid
7.3.17+dfsg-3
fixed
trixie
7.3.17+dfsg-3
fixed
python2.7
bullseye
2.7.18-8+deb11u1
fixed
buster
no-dsa
python3.11
bookworm
3.11.2-6+deb12u4
fixed
buster
no-dsa
bookworm (security)
3.11.2-6+deb12u3
fixed
python3.12
sid
3.12.8-3
fixed
trixie
3.12.8-3
fixed
buster
no-dsa
python3.9
bullseye
vulnerable
buster
no-dsa
bullseye (security)
3.9.2-1+deb11u2
fixed
Ubuntu logo
Ubuntu Releases
Ubuntu Product
Codename
python2.7
oracular
dne
noble
dne
mantic
dne
lunar
dne
jammy
needs-triage
focal
needs-triage
bionic
Fixed 2.7.17-1~18.04ubuntu1.13+esm4
released
xenial
Fixed 2.7.12-1ubuntu0~16.04.18+esm9
released
trusty
Fixed 2.7.6-8ubuntu0.6+esm18
released
python3.10
oracular
dne
noble
dne
mantic
dne
lunar
dne
jammy
Fixed 3.10.12-1~22.04.3
released
focal
dne
bionic
ignored
xenial
ignored
trusty
ignored
python3.11
oracular
dne
noble
dne
mantic
not-affected
lunar
Fixed 3.11.4-1~23.04.1
released
jammy
needed
focal
dne
bionic
ignored
xenial
ignored
trusty
ignored
python3.12
oracular
not-affected
noble
not-affected
mantic
not-affected
lunar
dne
jammy
dne
focal
dne
bionic
ignored
xenial
ignored
trusty
ignored
python3.4
oracular
dne
noble
dne
mantic
dne
lunar
dne
jammy
dne
focal
dne
bionic
dne
xenial
dne
trusty
ignored
python3.5
oracular
dne
noble
dne
mantic
dne
lunar
dne
jammy
dne
focal
dne
bionic
dne
xenial
Fixed 3.5.2-2ubuntu0~16.04.13+esm12
released
trusty
Fixed 3.5.2-2ubuntu0~16.04.4~14.04.1+esm1
released
python3.6
oracular
dne
noble
dne
mantic
dne
lunar
dne
jammy
dne
focal
dne
bionic
Fixed 3.6.9-1~18.04ubuntu1.13+esm1
released
xenial
dne
trusty
dne
python3.7
oracular
dne
noble
dne
mantic
dne
lunar
dne
jammy
dne
focal
dne
bionic
Fixed 3.7.5-2ubuntu1~18.04.2+esm3
released
xenial
ignored
trusty
ignored
python3.8
oracular
dne
noble
dne
mantic
dne
lunar
dne
jammy
dne
focal
Fixed 3.8.10-0ubuntu1~20.04.9
released
bionic
Fixed 3.8.0-3ubuntu1~18.04.2+esm2
released
xenial
dne
trusty
dne
python3.9
oracular
dne
noble
dne
mantic
dne
lunar
dne
jammy
dne
focal
Fixed 3.9.5-3ubuntu0~20.04.1+esm2
released
bionic
ignored
xenial
ignored
trusty
ignored