CVE-2024-28085
Low · 3.3CVSS
3.3
EPSS
2.2%
Published
Mar 27, 2024
CISA due date
—
Cloudanix analysis
A common system tool that broadcasts messages can be tricked by local users into sending hidden commands to other people's screens, which in some cases could let someone else take over an account.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Privilege Gain
- Component
- Application
- Class
- Improper Input Validation
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The wall utility fails to sanitize escape sequences supplied via command-line arguments (argv), allowing a local process with access to invoke wall to inject terminal control sequences into other users' TTYs despite setgid tty restrictions that block stdin-sourced sequences.
Why it matters to the business
On multi-user systems where wall retains setgid tty privileges, local users may be able to manipulate other users' terminal sessions, potentially enabling account takeover or unauthorized actions with low operational disruption but elevated insider risk.
How an attack unfolds
An attacker on the same host invokes the wall binary directly, passing crafted escape sequences in the argument list rather than standard input; because argv is not filtered, the sequences reach the target TTYs and can alter display, capture input, or trigger session-level actions that lead to credential or session theft.
How to fix it
Upgrade util-linux to a build containing commit 8230dec4c50810065403eefe3c8cda475976e3eb or later; rebuild and reinstall any packages that ship wall; verify the binary no longer accepts unsanitized argv sequences.
How to confirm the fix worked
Run wall with a test escape sequence in argv and confirm the sequence is blocked or ignored; inspect package version or git commit to ensure 8230dec4c50810065403eefe3c8cda475976e3eb or newer is present; re-test setgid permissions and TTY access controls.
Typical attack path
- Locate a setgid wall binary on a multi-user system
- Craft a command line that supplies terminal escape sequences as argv[1..n]
- Execute the wall invocation targeting other logged-in users
- Observe or capture resulting terminal state changes that facilitate further actions such as keystroke injection or session hijacking
How to detect it
Search process execution logs and command-line audit records for wall invocations containing non-printable or escape characters in arguments; review TTY device access and any resulting session anomalies on multi-user hosts.
What your security team should do
- Prioritize patching util-linux packages to the fixed commit across all multi-user hosts
- Audit setgid binaries and consider dropping tty group privileges where wall is not required
- Monitor for unusual wall invocations via process auditing
- Review user account takeover scenarios on shared systems after upgrade
The record
wall in util-linux through 2.40, often installed with setgid tty permissions, allows escape sequences to be sent to other users' terminals through argv. (Specifically, escape sequences received from stdin are blocked, but escape sequences received from argv are not blocked.) There may be plausible scenarios where this leads to account takeover.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Alpine:v3.20 | util-linux | 0 | 2.40-r0 |
| Alpine:v3.21 | util-linux | 0 | 2.40-r0 |
| Alpine:v3.22 | util-linux | 0 | 2.40-r0 |
| Debian:10 | util-linux | 0 | 2.33.1-0.1+deb10u1 |
| Debian:11 | util-linux | 0 | 2.36.1-8+deb11u2 |
| Debian:12 | util-linux | 0 | 2.38.1-5+deb12u1 |
| Debian:13 | util-linux | 0 | 2.39.3-11 |
| Mageia:9 | util-linux | 0 | 2.38.1-1.1.mga9 |
| SUSE:Enterprise Storage 7.1 | util-linux | 0 | 2.36.2-150300.4.41.1 |
| SUSE:Enterprise Storage 7.1 | util-linux-systemd | 0 | 2.36.2-150300.4.41.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS | util-linux | 0 | 2.33.2-150100.4.45.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS | util-linux-systemd | 0 | 2.33.2-150100.4.45.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | util-linux | 0 | 2.36.2-150300.4.41.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | util-linux-systemd | 0 | 2.36.2-150300.4.41.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | util-linux | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | util-linux-systemd | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS | util-linux | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS | util-linux-systemd | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Linux Enterprise Micro 5.1 | util-linux | 0 | 2.36.2-150300.4.41.1 |
| SUSE:Linux Enterprise Micro 5.1 | util-linux-systemd | 0 | 2.36.2-150300.4.41.1 |
| SUSE:Linux Enterprise Micro 5.2 | util-linux | 0 | 2.36.2-150300.4.41.1 |
| SUSE:Linux Enterprise Micro 5.2 | util-linux-systemd | 0 | 2.36.2-150300.4.41.1 |
| SUSE:Linux Enterprise Micro 5.3 | util-linux | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Linux Enterprise Micro 5.3 | util-linux-systemd | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Linux Enterprise Micro 5.4 | util-linux | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Linux Enterprise Micro 5.4 | util-linux-systemd | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Linux Enterprise Micro 5.5 | util-linux | 0 | 2.37.4-150500.9.6.1 |
| SUSE:Linux Enterprise Micro 5.5 | util-linux-systemd | 0 | 2.37.4-150500.9.6.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP5 | util-linux | 0 | 2.37.4-150500.9.6.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP5 | util-linux-systemd | 0 | 2.37.4-150500.9.6.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | util-linux | 0 | 2.39.3-150600.4.3.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | util-linux-systemd | 0 | 2.39.3-150600.4.3.1 |
| SUSE:Linux Enterprise Module for Server Applications 15 SP5 | util-linux-systemd | 0 | 2.37.4-150500.9.6.1 |
| SUSE:Linux Enterprise Module for Server Applications 15 SP6 | util-linux-systemd | 0 | 2.39.3-150600.4.3.1 |
| SUSE:Linux Enterprise Server 12 SP5 | python-libmount | 0 | 2.33.2-4.36.1 |
| SUSE:Linux Enterprise Server 12 SP5 | util-linux | 0 | 2.33.2-4.36.1 |
| SUSE:Linux Enterprise Server 12 SP5 | util-linux-systemd | 0 | 2.33.2-4.36.1 |
| SUSE:Linux Enterprise Server 15 SP2-LTSS | util-linux | 0 | 2.33.2-150100.4.45.1 |
| SUSE:Linux Enterprise Server 15 SP2-LTSS | util-linux-systemd | 0 | 2.33.2-150100.4.45.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | util-linux | 0 | 2.36.2-150300.4.41.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | util-linux-systemd | 0 | 2.36.2-150300.4.41.1 |
| SUSE:Linux Enterprise Server 15 SP4-LTSS | util-linux | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Linux Enterprise Server 15 SP4-LTSS | util-linux-systemd | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | python-libmount | 0 | 2.33.2-4.36.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | util-linux | 0 | 2.33.2-4.36.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | util-linux-systemd | 0 | 2.33.2-4.36.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP2 | util-linux | 0 | 2.33.2-150100.4.45.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP2 | util-linux-systemd | 0 | 2.33.2-150100.4.45.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | util-linux | 0 | 2.36.2-150300.4.41.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | util-linux-systemd | 0 | 2.36.2-150300.4.41.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP4 | util-linux | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP4 | util-linux-systemd | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP5 | util-linux | 0 | 2.33.2-4.36.1 |
| SUSE:Linux Enterprise Workstation Extension 12 SP5 | util-linux | 0 | 2.33.2-4.36.1 |
| SUSE:Manager Proxy 4.3 | util-linux | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Manager Proxy 4.3 | util-linux-systemd | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Manager Server 4.3 | util-linux | 0 | 2.37.2-150400.8.29.1 |
| SUSE:Manager Server 4.3 | util-linux-systemd | 0 | 2.37.2-150400.8.29.1 |
| Ubuntu:14.04:LTS | util-linux | 0 | No fix |
| Ubuntu:18.04:LTS | util-linux | 0 | No fix |
| Ubuntu:20.04:LTS | util-linux | 0 | 2.34-0.1ubuntu9.5 |
| Ubuntu:20.04:LTS | util-linux | 0 | 2.34-0.1ubuntu9.6 |
| Ubuntu:22.04:LTS | util-linux | 0 | 2.37.2-4ubuntu3.3 |
| Ubuntu:22.04:LTS | util-linux | 0 | 2.37.2-4ubuntu3.4 |
| Ubuntu:23.10 | util-linux | 0 | 2.39.1-4ubuntu2.2 |
| Ubuntu:23.10 | util-linux | 0 | 2.39.1-4ubuntu2.1 |
| Ubuntu:24.04:LTS | util-linux | 0 | 2.39.3-9ubuntu6 |
| Ubuntu:24.10 | util-linux | 0 | 2.39.3-9ubuntu6 |
| Ubuntu:Pro:14.04:LTS | util-linux | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | util-linux | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | util-linux | 0 | No fix |
| openSUSE:Leap 15.5 | python3-libmount | 0 | 2.37.4-150500.9.6.1 |
| openSUSE:Leap 15.5 | util-linux | 0 | 2.37.4-150500.9.6.1 |
| openSUSE:Leap 15.5 | util-linux-systemd | 0 | 2.37.4-150500.9.6.1 |
| openSUSE:Leap 15.6 | python-libmount | 0 | 2.39.3-150600.4.3.1 |
| openSUSE:Leap 15.6 | util-linux | 0 | 2.39.3-150600.4.3.1 |
| openSUSE:Leap 15.6 | util-linux-systemd | 0 | 2.39.3-150600.4.3.1 |
| openSUSE:Leap Micro 5.3 | util-linux | 0 | 2.37.2-150400.8.29.1 |
| openSUSE:Leap Micro 5.3 | util-linux-systemd | 0 | 2.37.2-150400.8.29.1 |
| openSUSE:Leap Micro 5.4 | util-linux | 0 | 2.37.2-150400.8.29.1 |
| openSUSE:Leap Micro 5.4 | util-linux-systemd | 0 | 2.37.2-150400.8.29.1 |
| openSUSE:Tumbleweed | util-linux | 0 | 2.40.2-2.1 |
Related vulnerabilities
- CVE-2016-5011 The parse_dos_extended function in partitions/dos.c in the libblkid library in util-linux… Also affects util-linux
- CVE-2026-3184 A flaw was found in util-linux. Also affects util-linux
- CVE-2025-14104 A flaw was found in util-linux. Also affects util-linux
- CVE-2026-27456 util-linux is a random collection of Linux utilities. Also affects util-linux
- CVE-2026-55467 OpenPrinting CUPS is an open source printing system for Linux and other Unix-like… CWE-150
- CVE-2026-82710 Improper Neutralization of Escape, Meta, or Control Sequences vulnerability in… CWE-150
- CVE-2026-19591 OpenAI Codex CLI for Windows, macOS, and Linux and Codex Desktop for Windows and macOS… CWE-150
- CVE-2026-73506 Oh My Posh is the most customisable and low-latency cross platform/shell prompt renderer. CWE-150