CVE-2023-34059
Bottlerocket vulnerability analysis and mitigation

Overview

CVE-2023-34059 is a file descriptor hijack vulnerability discovered in the vmware-user-suid-wrapper component of open-vm-tools. The vulnerability was reported on July 25, 2023, and publicly disclosed on October 27, 2023. It affects open-vm-tools versions from 11.0.0 up to and including 12.3.0. The vulnerability allows a malicious actor with non-root privileges to hijack the /dev/uinput file descriptor (OSS Security, VMware Advisory).

Technical details

The vulnerability stems from the combination of dropping privileges to the real uid/gid and the subsequent execve() call to execute the non-setuid program vmtoolsd. During the execve() operation, the process's "dumpable" attribute is reset to 1, which allows the unprivileged user who originally invoked vmware-user-suid-wrapper to ptrace() the vmtoolsd process. This enables access to privileged file descriptors through modern Linux's pidfd API using pidfdopen() and pidfdgetfd() calls. The vulnerability has been assigned a CVSS v3.1 base score of 7.0 (High) with vector: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H (OSS Security).

Impact

The vulnerability allows attackers to gain access to the /dev/uinput device, enabling them to create arbitrary userspace-based input devices and register them with the kernel. This capability allows the injection of synthesized key or mouse events into local user sessions, both graphical and textual login consoles. The impact could lead to privilege escalation after gaining low privilege access, particularly in multi-user environments where a background process could wait for a victim user to log in and then inject malicious input into their session (OSS Security).

Mitigation and workarounds

The vulnerability has been patched in various distributions including Debian, Fedora, and Ubuntu. The fix involves preventing the "dumpable" attribute reset by moving the privilege drop logic into vmtoolsd. As a temporary hardening measure, access to vmware-user-suid-wrapper can be limited to members of a privileged group (e.g., vmware-users). Additionally, environment variables passed from the unprivileged context should be sanitized, particularly the PATH variable (Debian Security, OSS Security).

Additional resources


SourceThis report was generated using AI

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

“Best User Experience I have ever seen, provides full visibility to cloud workloads.”
David EstlickCISO
“Wiz provides a single pane of glass to see what is going on in our cloud environments.”
Adam FletcherChief Security Officer
“We know that if Wiz identifies something as critical, it actually is.”
Greg PoniatowskiHead of Threat and Vulnerability Management