sh _uid does not drop supplementary groups (incomplete privilege drop)
Key facts
- Attack vector
- Local
- Privileges required
- High
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- High · High · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub.
Summary
sh provides Python process launching. Prior to 2.2.4, the _uid option in sh.py performs an incomplete privilege drop on Linux and Unix-like systems. When sh runs from an elevated process and launches a command with _uid set to an unprivileged user, the child changes its UID but can retain the parent process's supplementary groups because the privilege-drop sequence does not fully establish the target user's UID, primary GID, and supplementary groups. The child can therefore retain access to files or resources granted to privileged groups such as root, docker, disk, shadow, or sudo, violating the expected _uid privilege boundary. This issue is fixed in version 2.2.4.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| amoffat | sh | before 2.2.4 | 2.2.4 | Patch available | CNA |
| — | sh (PyPI) | before 2.2.4 | 2.2.4 | Patch available | GHSA-q38v-wp89-2w55 |
- sh Vendoramoffat Affected before 2.2.4 Fixed in 2.2.4 Patch available CNA
- sh (PyPI) Vendor— Affected before 2.2.4 Fixed in 2.2.4 Patch available GHSA-q38v-wp89-2w55
Remediation
- Fix · CNA sh (amoffat) Fixed in 2.2.4
- Fix · GHSA-q38v-wp89-2w55 sh (PyPI) Fixed in 2.2.4 Advisory →
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
Not affected: 1 product
- Red Hat OpenShift Virtualization 4
Timeline
- 2026-10-02 Threatist record created from CVE-2026-54552
- 2026-10-03 Alias added: GHSA-q38v-wp89-2w55
References
Sources
- CVE-2026-54552 · CVE Program
- CVE-2026-54552 · NVD
- FIRST EPSS
- GHSA-q38v-wp89-2w55 · GitHub Advisory Database · CC BY 4.0
- CVE-2026-54552 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences