AnyIO run_process/open_process ignores extra_groups and can retain parent supplementary groups
AnyIO 4.14.0 accepts the POSIX extra_groups argument on anyio.run_process() and anyio.open_process(), but open_process() forwards the wrong variable to the backend: when extra_groups is not None, it assigns kwargs["extra_groups"] = group instead of extra_groups. As a result, callers cannot reliably clear or set supplementary groups for child processes. In a disposable Linux container, Python's subprocess.run(..., extra_groups=[]) clears a synthetic parent supplementary group list, while anyio.run_process(..., extra_groups=[]) preserves the parent groups. If group is also supplied, AnyIO passes an integer as extra_groups and the call fails with TypeError. This is a POSIX privilege-dropping correctness issue for applications that rely on AnyIO subprocess helpers to launch less-privileged child processes.
Affected software
Click a technology to see all vulnerabilities affecting it.
| Platform | Package | Vulnerable versions | Fixed in |
|---|---|---|---|
| Python (PyPI) | anyio | >= 4.14.0, < 4.14.2 | 4.14.2 |
References
- https://github.com/agronholm/anyio/security/advisories/GHSA-3w57-8xmc-8v26
- https://github.com/agronholm/anyio/pull/1209
- https://github.com/agronholm/anyio/commit/eb562e6462ee46b1904e50b02ce00a858cdeb200
- https://github.com/agronholm/anyio
- https://github.com/agronholm/anyio/releases/tag/4.14.2
- https://pypi.org/project/anyio
- https://github.com/advisories/GHSA-3w57-8xmc-8v26
- https://nvd.nist.gov/vuln/detail/CVE-2026-63349
- CVSS vector
CVSS:4.0/AV:L/AC:H/AT:P/PR:H/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N- Weakness (CWE)
CWE-266, CWE-269- Platform
- Python (PyPI)
- Package
anyio- Disclosed
- 18.09.2026
- Updated
- 11.10.2026 15:18
Sources and licenses
OSV / GitHub Advisory Database - PYSEC-2026-4023 - PyPA Advisory Database; CC BY 4.0
OSV / GitHub Advisory Database - GHSA-3w57-8xmc-8v26 - CC BY 4.0
Vulnerability history: anyio
All published vulnerabilities of this package (Python (PyPI)), newest first. Shows whether this is a one-off slip or a package that needs watching.
- Total entries
- 3
- First → latest
- 09.2026 09.2026
- Without a fix
- 0
- Exploited in attacks
- 0
Severity breakdown
- Critical 1
- High 1
- Medium 1
Disclosures per year
- 2026: 3
-
AnyIO run_process/open_process ignores extra_groups and can retain parent supplementary groups this entry
Know which vulnerabilities affect your application
With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.