CVE-2026-54552
CVE-2026-54552 is a high-severity vulnerability with a CVSS 3.x base score of 7.9. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low. The underlying weakness is classified as CWE-273.
Key facts
- Severity: High (CVSS 3.x base score 7.9)
- EPSS exploit prediction: 0% (7th percentile)
- Actively exploited: Not listed in CISA KEV
- Weakness: CWE-273
- Published:
- Last modified:
Description
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.
Frequently asked questions
- What is CVE-2026-54552?
- 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.
- How severe is CVE-2026-54552?
- CVE-2026-54552 has a CVSS 3.x base score of 7.9, rated high severity. It is exploitable over local access with low attack complexity, requires high privileges and no user interaction. Impact on confidentiality is high, integrity high, and availability none.
- Is CVE-2026-54552 being actively exploited?
- It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 0% (7th percentile), an estimate of the probability of exploitation in the next 30 days.
- How do I fix CVE-2026-54552?
- Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround. Given its high severity, prioritise patching exposed systems.
- When was CVE-2026-54552 published?
- CVE-2026-54552 was published on 2026-08-18.
References
- https://github.com/amoffat/sh/commit/3d855daba91f87a089b490c0d1cf1df3faace2f1
- https://github.com/amoffat/sh/pull/776
- https://github.com/amoffat/sh/releases/tag/2.2.4
- https://github.com/amoffat/sh/security/advisories/GHSA-q38v-wp89-2w55
Other CWE-273 vulnerabilities
- CVE-2015-0278 — Critical (CVSS 10.0): libuv before 0.10.34 does not properly drop group privileges, which allows context-dependent attackers to gain…
- CVE-2023-34844 — Critical (CVSS 9.8): Play With Docker < 0.0.2 has an insecure CAP_SYS_ADMIN privileged mode causing the docker container to escape.
- CVE-2021-36372 — Critical (CVSS 9.8): In Apache Ozone versions prior to 1.2.0, Initially generated block tokens are persisted to the metadata database and…
- CVE-2020-24361 — Critical (CVSS 9.8): SNMPTT before 1.4.2 allows attackers to execute shell code via EXEC, PREXEC, or unknown_trap_exec.
- CVE-2011-3350 — Critical (CVSS 9.8): masqmail 0.2.21 through 0.2.30 improperly calls seteuid() in src/log.c and src/masqmail.c that results in improper…
- CVE-2011-2921 — Critical (CVSS 9.8): ktsuss versions 1.4 and prior has the uid set to root and does not drop privileges prior to executing user specified…