CyberRota Analysis
AI-GeneratedAnyIO versions prior to 4.14.2 are vulnerable to a misconfiguration in the handling of the POSIX extra_groups argument in subprocess management, which can allow a child process to inherit unintended supplementary groups from the parent. This vulnerability can undermine privilege-dropping mechanisms, posing a significant security risk for POSIX applications that utilize AnyIO for launching less-privileged processes. Developers and system administrators using AnyIO in their applications should prioritize upgrading to version 4.14.2 to mitigate this risk.
Public Exploit Signal
A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.
Note: these links are listed for security research and verification purposes only.
Original NVD Description
AnyIO is a high level asynchronous concurrency and networking framework that works on top of either Trio or asyncio. In 4.14.0, AnyIO accepts the POSIX extra_groups argument in anyio.run_process() and anyio.open_process(), but open_process() forwards the group argument to the backend instead of extra_groups. A caller that supplies extra_groups=[] to clear inherited supplementary groups can therefore launch a child that retains the parent process groups, undermining a privilege-dropping boundary. If group is also supplied, the integer group value is passed where an iterable of supplementary groups is expected and the launch can fail with TypeError. This issue affects POSIX applications that rely on AnyIO subprocess helpers to launch less-privileged child processes. This issue is fixed in version 4.14.2.