Every CVE Search/ Get API key

CVE-2026-64847

AnyIO process-pool workers can block indefinitely on undrained stderr

6.8 MediumFix available

AnyIO is a high level asynchronous concurrency and networking framework that works on top of either Trio or asyncio. Prior to 4.14.2, AnyIO starts process-pool workers with standard error connected to a pipe that the parent never drains, even though the documented behavior redirects all three standard streams. Worker code that writes enough attacker-influenced data to sys.stderr can fill the pipe and block before returning the standard-output protocol response, causing the awaiting process-pool call to remain blocked indefinitely. Applications that run untrusted or faulty worker code capable of producing substantial standard-error output are affected. This issue is fixed in version 4.14.2.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
Low
Privileges needed
Low
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
High

Exploit likelihood

0.16%Unchanged since Sep 19, 2026
90%50%10%1%

What each source reports

CVE List Score used 6.8

AnyIO process-pool workers can block indefinitely on undrained stderr

AnyIO is a high level asynchronous concurrency and networking framework that works on top of either Trio or asyncio. Prior to 4.14.2, AnyIO starts process-pool workers with standard error connected to a pipe that the parent never drains, even though the documented behavior redirects all three standard streams. Worker code that writes enough attacker-influenced data to sys.stderr can fill the pipe and block before returning the standard-output protocol response, causing the awaiting process-pool call to remain blocked indefinitely. Applications that run untrusted or faulty worker code capable of producing substantial standard-error output are affected. This issue is fixed in version 4.14.2.

Record
CVE-2026-64847
CVSS 4.0
6.8 MediumCVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Weakness
CWE-770
Updated
2026-11-02
EUVDEUVD-2026-83193 6.8

AnyIO is a high level asynchronous concurrency and networking framework that works on top of either Trio or asyncio. Prior to 4.14.2, AnyIO starts process-pool workers with standard error connected to a pipe that the parent never drains, even though the documented behavior redirects all three standard streams. Worker code that writes enough attacker-influenced data to sys.stderr can fill the pipe and block before returning the standard-output protocol response, causing the awaiting process-pool call to remain blocked indefinitely. Applications that run untrusted or faulty worker code capable of producing substantial standard-error output are affected. This issue is fixed in version 4.14.2.

Record
EUVD-2026-83193
CVSS 4.0
6.8 MediumCVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Updated
2026-11-02
GitHub AdvisoriesGHSA-5p39-cfhj-2xmp 6.8

AnyIO process-pool workers can block indefinitely on undrained stderr

Impact

AnyIO starts process-pool workers with stderr connected to a pipe but never drains that pipe. The worker redirects stdin and stdout to /dev/null to protect its protocol, but does not redirect stderr even though the documentation says all three standard streams are redirected. Worker code that writes enough attacker-influenced data to stderr can fill the pipe, block before returning the stdout protocol response, and wedge the awaiting process-pool call.

Anyone who runs untrusted or faulty code that writes too much to stderr is at risk.

Patches

This vulnerability will be patched in v4.14.2.

Workarounds

Closing sys.stderr in the target function should at least prevent the deadlock.

Record
GHSA-5p39-cfhj-2xmp
CVSS 4.0
6.8 MediumCVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Weakness
CWE-770
Updated
2026-11-02
NVD 6.8

AnyIO is a high level asynchronous concurrency and networking framework that works on top of either Trio or asyncio. Prior to 4.14.2, AnyIO starts process-pool workers with standard error connected to a pipe that the parent never drains, even though the documented behavior redirects all three standard streams. Worker code that writes enough attacker-influenced data to sys.stderr can fill the pipe and block before returning the standard-output protocol response, causing the awaiting process-pool call to remain blocked indefinitely. Applications that run untrusted or faulty worker code capable of producing substantial standard-error output are affected. This issue is fixed in version 4.14.2.

Record
CVE-2026-64847
CVSS 4.0
6.8 MediumCVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Weakness
CWE-770
Updated
2026-11-02
OSV 6.8

AnyIO process-pool workers can block indefinitely on undrained stderr

AnyIO is a high level asynchronous concurrency and networking framework that works on top of either Trio or asyncio. Prior to 4.14.2, AnyIO starts process-pool workers with standard error connected to a pipe that the parent never drains, even though the documented behavior redirects all three standard streams. Worker code that writes enough attacker-influenced data to sys.stderr can fill the pipe and block before returning the standard-output protocol response, causing the awaiting process-pool call to remain blocked indefinitely. Applications that run untrusted or faulty worker code capable of producing substantial standard-error output are affected. This issue is fixed in version 4.14.2.

Record
CVE-2026-64847
CVSS 4.0
6.8 MediumCVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Weakness
CWE-770
Updated
2026-11-02
OSVDEBIAN-CVE-2026-64847 6.8

AnyIO is a high level asynchronous concurrency and networking framework that works on top of either Trio or asyncio. Prior to 4.14.2, AnyIO starts process-pool workers with standard error connected to a pipe that the parent never drains, even though the documented behavior redirects all three standard streams. Worker code that writes enough attacker-influenced data to sys.stderr can fill the pipe and block before returning the standard-output protocol response, causing the awaiting process-pool call to remain blocked indefinitely. Applications that run untrusted or faulty worker code capable of producing substantial standard-error output are affected. This issue is fixed in version 4.14.2.

Record
DEBIAN-CVE-2026-64847
CVSS 4.0
6.8 MediumCVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Updated
2026-11-02
Show 8 moreShow less
OSVGHSA-5p39-cfhj-2xmp 6.8

AnyIO process-pool workers can block indefinitely on undrained stderr

Impact

AnyIO starts process-pool workers with stderr connected to a pipe but never drains that pipe. The worker redirects stdin and stdout to /dev/null to protect its protocol, but does not redirect stderr even though the documentation says all three standard streams are redirected. Worker code that writes enough attacker-influenced data to stderr can fill the pipe, block before returning the stdout protocol response, and wedge the awaiting process-pool call.

Anyone who runs untrusted or faulty code that writes too much to stderr is at risk.

Patches

This vulnerability will be patched in v4.14.2.

Workarounds

Closing sys.stderr in the target function should at least prevent the deadlock.

Record
GHSA-5p39-cfhj-2xmp
CVSS 4.0
6.8 MediumCVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Weakness
CWE-770
Updated
2026-11-02
OSVPYSEC-2026-4024 6.8

AnyIO process-pool workers can block indefinitely on undrained stderr

Impact

AnyIO starts process-pool workers with stderr connected to a pipe but never drains that pipe. The worker redirects stdin and stdout to /dev/null to protect its protocol, but does not redirect stderr even though the documentation says all three standard streams are redirected. Worker code that writes enough attacker-influenced data to stderr can fill the pipe, block before returning the stdout protocol response, and wedge the awaiting process-pool call.

Anyone who runs untrusted or faulty code that writes too much to stderr is at risk.

Patches

This vulnerability will be patched in v4.14.2.

Workarounds

Closing sys.stderr in the target function should at least prevent the deadlock.

Record
PYSEC-2026-4024
CVSS 4.0
6.8 MediumCVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Updated
2026-11-02
OSVUBUNTU-CVE-2026-64847 6.8

AnyIO is a high level asynchronous concurrency and networking framework that works on top of either Trio or asyncio. Prior to 4.14.2, AnyIO starts process-pool workers with standard error connected to a pipe that the parent never drains, even though the documented behavior redirects all three standard streams. Worker code that writes enough attacker-influenced data to sys.stderr can fill the pipe and block before returning the standard-output protocol response, causing the awaiting process-pool call to remain blocked indefinitely. Applications that run untrusted or faulty worker code capable of producing substantial standard-error output are affected. This issue is fixed in version 4.14.2.

Record
UBUNTU-CVE-2026-64847
CVSS 4.0
6.8 MediumCVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Updated
2026-11-02
OSVCLSA-2026-1790063936 No score

TuxCare security update for anyio (2 CVEs)

TuxCare rebuilt anyio to address 2 CVEs. Fixed in 3.7.1.post2+tuxcare.

Record
CLSA-2026-1790063936
Updated
2026-11-02
OSVopenSUSE-SU-2026:22060-1 No score

Security update for python-anyio

This update for python-anyio fixes the following issues:

  • CVE-2026-63374: TLSStream IDNA 2003 host name encoding enables potential TLS certificate spoofing (bsc#1281476).
  • CVE-2026-64847: AnyIO process-pool workers can block indefinitely on undrained stderr (bsc#1281475).
Record
openSUSE-SU-2026:22060-1
Updated
2026-11-02
OSVSUSE-SU-2026:24122-1 No score

Security update for python-anyio

This update for python-anyio fixes the following issues:

  • CVE-2026-63374: TLSStream IDNA 2003 host name encoding enables potential TLS certificate spoofing (bsc#1281476).
  • CVE-2026-64847: AnyIO process-pool workers can block indefinitely on undrained stderr (bsc#1281475).
Record
SUSE-SU-2026:24122-1
Updated
2026-11-02
OSVSUSE-SU-2026:24208-1 No score

Security update for python-anyio

This update for python-anyio fixes the following issues:

  • CVE-2026-63374: TLSStream IDNA 2003 host name encoding enables potential TLS certificate spoofing (bsc#1281476).
  • CVE-2026-64847: AnyIO process-pool workers can block indefinitely on undrained stderr (bsc#1281475).
Record
SUSE-SU-2026:24208-1
Updated
2026-11-02
OSVSUSE-SU-2026:4416-1 No score

Security update for python-anyio

This update for python-anyio fixes the following issues:

  • CVE-2026-63374: : TLSStream IDNA 2003 host name encoding enables potential TLS certificate spoofing (bsc#1281476).
  • CVE-2026-64847: AnyIO process-pool workers can block indefinitely on undrained stderr (bsc#1281475).
Record
SUSE-SU-2026:4416-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
anyio
PyPI
before 4.14.2
4.14.2
anyio
TuxCare:PyPI
From an advisory covering 2 CVEs
3.7.1 up to 3.7.1.post2+tuxcare, plus listed versions
3.7.1.post1+tuxcare
3.7.1.post2+tuxcare
python-anyio
Debian:12
All versions, plus listed versions
3.6.2-13.7.0-14.1.0-14.11.0-14.11.0-2
Show 19 moreShow less
4.11.0-34.12.1-14.12.1-24.12.1-34.15.1-14.15.1-24.15.1-34.2.0-14.3.0-14.4.0-14.6.0-14.6.2-14.6.2-24.6.2-34.6.2-44.7.0-14.8.0-14.8.0-24.8.0-3
None known
python-anyio
Debian:13
All versions, plus listed versions
4.11.0-14.11.0-24.11.0-34.12.1-14.12.1-2
Show 5 moreShow less
4.12.1-34.15.1-14.15.1-24.15.1-34.8.0-3
None known
python-anyio
Debian:14
before 4.15.1-1, plus listed versions
4.11.0-14.11.0-24.11.0-34.12.1-14.12.1-24.12.1-34.8.0-3
4.15.1-1
anyio
PyPI
before 4.14.2, plus listed versions
1.0.01.0.0a11.0.0a21.0.0b11.0.0b2
Show 45 moreShow less
1.0.0rc11.0.0rc21.1.01.2.01.2.11.2.21.2.31.3.01.3.11.4.02.0.02.0.0b12.0.0b22.0.0rc12.0.0rc22.0.12.0.22.1.02.2.03.0.03.0.0rc13.0.0rc23.0.0rc33.0.0rc43.0.13.1.03.2.03.2.13.3.03.3.13.3.23.3.33.3.43.4.03.5.03.6.03.6.13.6.23.7.03.7.0rc13.7.14.0.04.0.0rc14.1.04.10.0
4.14.2
python-anyio
SUSE:Linux Micro 6.2
From an advisory covering 2 CVEs
before 4.8.0-160000.3.1
4.8.0-160000.3.1
python-anyio
SUSE:Linux Enterprise Server 16.0
From an advisory covering 2 CVEs
before 4.8.0-160000.3.1
4.8.0-160000.3.1
python-anyio
SUSE:Linux Enterprise Server for SAP applications 16.0
From an advisory covering 2 CVEs
before 4.8.0-160000.3.1
4.8.0-160000.3.1
python-anyio
SUSE:Linux Enterprise Module for Public Cloud 15 SP4
From an advisory covering 2 CVEs
before 4.1.0-150400.9.11.1
4.1.0-150400.9.11.1
Show 18 moreShow less
Affected packages
PackageAffectedFixed
python-anyio
SUSE:Linux Enterprise Module for Public Cloud 15 SP5
From an advisory covering 2 CVEs
before 4.1.0-150400.9.11.1
4.1.0-150400.9.11.1
python-anyio
SUSE:Linux Enterprise Module for Public Cloud 15 SP6
From an advisory covering 2 CVEs
before 4.1.0-150400.9.11.1
4.1.0-150400.9.11.1
python-anyio
SUSE:Linux Enterprise Module for Python 3 15 SP7
From an advisory covering 2 CVEs
before 4.1.0-150400.9.11.1
4.1.0-150400.9.11.1
python-anyio
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS
From an advisory covering 2 CVEs
before 4.1.0-150400.9.11.1
4.1.0-150400.9.11.1
python-anyio
SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS
From an advisory covering 2 CVEs
before 4.1.0-150400.9.11.1
4.1.0-150400.9.11.1
python-anyio
SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS
From an advisory covering 2 CVEs
before 4.1.0-150400.9.11.1
4.1.0-150400.9.11.1
python-anyio
SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS
From an advisory covering 2 CVEs
before 4.1.0-150400.9.11.1
4.1.0-150400.9.11.1
python-anyio
SUSE:Linux Enterprise Server 15 SP4-LTSS
From an advisory covering 2 CVEs
before 4.1.0-150400.9.11.1
4.1.0-150400.9.11.1
python-anyio
SUSE:Linux Enterprise Server 15 SP5-LTSS
From an advisory covering 2 CVEs
before 4.1.0-150400.9.11.1
4.1.0-150400.9.11.1
python-anyio
SUSE:Linux Enterprise Server 15 SP6-LTSS
From an advisory covering 2 CVEs
before 4.1.0-150400.9.11.1
4.1.0-150400.9.11.1
python-anyio
SUSE:Linux Enterprise Server for SAP Applications 15 SP4
From an advisory covering 2 CVEs
before 4.1.0-150400.9.11.1
4.1.0-150400.9.11.1
python-anyio
SUSE:Linux Enterprise Server for SAP Applications 15 SP5
From an advisory covering 2 CVEs
before 4.1.0-150400.9.11.1
4.1.0-150400.9.11.1
python-anyio
SUSE:Linux Enterprise Server for SAP Applications 15 SP6
From an advisory covering 2 CVEs
before 4.1.0-150400.9.11.1
4.1.0-150400.9.11.1
python-anyio
Ubuntu:22.04:LTS
All versions, plus listed versions
2.0.2-23.5.0-2ubuntu13.5.0-3ubuntu2
None known
python-anyio
Ubuntu:24.04:LTS
All versions, plus listed versions
3.7.0-14.2.0-1
None known
python-anyio
Ubuntu:26.10
All versions, plus listed versions
4.11.0-34.12.1-24.12.1-34.15.1-3
None known
python-anyio
Ubuntu:26.04:LTS
All versions, plus listed versions
4.8.0-34.11.0-24.11.0-3
None known
python-anyio
openSUSE:Leap 16.0
From an advisory covering 2 CVEs
before 4.8.0-160000.3.1
4.8.0-160000.3.1

History

History
RecordedChangedSources
affected, facts
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-64847 is a medium vulnerability (CVSS 6.8) in Agronholm Anyio, published September 18, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.16%, the 4th percentile. Fixed in anyio 4.14.2.

References

Show 13 moreShow less
This page doesn't list everything

Left out here: 19 versions. The JSON record has them.

MoveEnter Open