
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-63349 is a privilege management flaw in AnyIO's subprocess helpers (run_process() and open_process()) that causes the extra_groups argument to be silently ignored, preventing applications from reliably dropping supplementary POSIX groups when spawning child processes. Introduced in version 4.14.0, it affects AnyIO versions >= 4.14.0 and < 4.14.2. The vulnerability was first published on July 7, 2026, and added to the GitHub Advisory Database on September 18, 2026. It carries a CVSS v4.0 base score of 7.0 (High) (GitHub Advisory).
The root cause is a one-line coding error in src/anyio/_core/_subprocesses.py: when extra_groups is not None, the code incorrectly assigns kwargs["extra_groups"] = group (the primary group integer) instead of kwargs["extra_groups"] = extra_groups (the intended list of supplementary groups), classified under CWE-266 (Incorrect Privilege Assignment) and CWE-269 (Improper Privilege Management) (GitHub Advisory). This means a caller passing extra_groups=[] to clear inherited supplementary groups will have no effect — the child process retains the parent's full supplementary group memberships. Additionally, if both group and extra_groups are supplied, an integer is passed where a list is expected, causing the subprocess launch to fail with a TypeError. Exploitation requires local access, high privileges, and specific deployment conditions (POSIX systems where the application relies on AnyIO subprocess helpers for privilege separation) (GitHub PR #1209).
Applications that rely on AnyIO's subprocess helpers to launch less-privileged child processes on POSIX systems cannot reliably enforce privilege boundaries — child processes retain the parent's supplementary group memberships instead of having them cleared or replaced as intended. This can lead to unintended access to files, sockets, or other resources protected by those group memberships, potentially exposing sensitive data (confidentiality impact: High) or allowing unauthorized modifications (integrity impact: High). Availability is not directly impacted, though a secondary failure mode — TypeError when both group and extra_groups are supplied — can cause subprocess launches to crash (GitHub Advisory).
There is no public proof-of-concept exploit and no evidence of in-the-wild exploitation as of the disclosure date (Feedly). The vulnerability is not listed in the CISA Known Exploited Vulnerabilities catalog. The EPSS score is 0.0, reflecting a very low probability of near-term exploitation (GitHub Advisory). Exploitation requires high privileges and specific preconditions (POSIX environment, application use of AnyIO subprocess helpers with extra_groups), significantly limiting the attack surface.
The fix is available in AnyIO version 4.14.2, released July 12, 2026, which corrects the one-line bug so that extra_groups is properly forwarded to the backend (AnyIO Release 4.14.2). Users should upgrade from any 4.14.0 or 4.14.1 installation to 4.14.2 via pip install --upgrade anyio. As an interim workaround for applications that cannot upgrade immediately, use Python's standard subprocess module directly (e.g., subprocess.run(..., extra_groups=[])) instead of AnyIO's subprocess helpers to ensure supplementary groups are correctly managed (GitHub Advisory).
The vulnerability was reported by security researcher Faze-up and addressed promptly by AnyIO maintainer agronholm, with the fix merged via PR #1209 on July 8, 2026, one day after disclosure (GitHub PR #1209). No significant broader media coverage or notable community commentary beyond the advisory and patch has been identified.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."