CVE-2018-8885
High · 7.0CVSS
7.0
EPSS
0.2%
Published
Mar 28, 2018
CISA due date
—
Cloudanix analysis
A local user on certain older Ubuntu machines could trick the system into giving them full administrative control by winning a brief timing contest during permission checks.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- High
- Impact
- Privilege Gain
- Component
- Application
- Class
- Race Condition
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Local race condition in screenresolution-mechanism allows bypassing PolicyKit permission checks when a setuid or pkexec process invokes _check_permission, enabling unauthorized privilege escalation on the local system.
Why it matters to the business
Local attackers can obtain elevated privileges on affected Ubuntu systems, increasing risk of full host compromise and unauthorized data access; the issue is old with low exploitation probability but remains relevant on unpatched legacy deployments.
How an attack unfolds
An attacker on the local system triggers a race between a privileged process and the flawed PolicyKit D-Bus check, winning the window to bypass intended restrictions and execute code with higher privileges.
How to fix it
Remove or replace screen-resolution-extra with a maintained alternative; on supported Ubuntu releases ensure the package is not present or is superseded by fixed upstream code.
How to confirm the fix worked
Confirm screen-resolution-extra is absent or replaced; review PolicyKit D-Bus service configurations for any remaining custom mechanisms that call _check_permission without proper locking.
Typical attack path
- Obtain local shell access as an unprivileged user
- Invoke screenresolution-mechanism via a setuid or pkexec binary
- Exploit the timing window in PolicyKitService._check_permission
- Bypass access restrictions and escalate to root privileges
How to detect it
Review authentication and authorization logs around pkexec and PolicyKit D-Bus calls for unexpected privilege grants; examine process creation events for screenresolution-mechanism invoked by non-root users.
What your security team should do
- Audit all systems for presence of screen-resolution-extra and remove where possible
- Harden local privilege boundaries with AppArmor or SELinux policies around pkexec and setuid binaries
- Monitor for new local privilege-escalation attempts on legacy Ubuntu hosts
The record
screenresolution-mechanism in screen-resolution-extra 0.17.2 does not properly use the PolicyKit D-Bus API, which allows local users to bypass intended access restrictions by leveraging a race condition via a setuid or pkexec process that is mishandled in a PolicyKitService._check_permission call.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Ubuntu:14.04:LTS | screen-resolution-extra | 0 | 0.17.1.1~14.04.1 |
| Ubuntu:16.04:LTS | screen-resolution-extra | 0 | 0.17.1.1~16.04.1 |
Related vulnerabilities
- CVE-2026-61854 VoiceSentinel is a real-time voice moderation system for Minecraft servers. CWE-362
- CVE-2026-118030 A flaw was found in the HOTP authentication mechanism of the keycloak-services component… CWE-362
- CVE-2026-115402 OpenVPN ovpn-dco-win 0.6.5 through 2.8.13 allows unprivileged local users to cause a… CWE-362
- CVE-2026-118128 A vulnerability has been found in a2aproject a2a-js up to 1.1.0. CWE-362
- CVE-2026-117507 A security vulnerability has been detected in a2aproject a2a-java up to 1.2.0.Final. CWE-362
- CVE-2026-117499 @fastify/session is a session plugin for Fastify. CWE-362
- CVE-2026-112708 A race condition was addressed with improved locking. CWE-362
- CVE-2026-113896 A race condition was addressed with additional validation. CWE-362