GitHub Advisoryadvisory · crates.io

GHSA-w9q3-g4p5-5q2r sudo-rs Allows Low Privilege Users to Enumerate Privileges of Others

LOW Published 2025-05-13 Modified 2025-05-13 Official page ↗
Aliases
CVE-2025-46718
Ecosystem
crates.io
Packages
sudo-rs
Severity
Low
CVSS vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
Weaknesses
CWE-497
Reviewed
2025-05-13

Affected packages

• crates.io sudo-rs: < 0.2.6 → fixed in 0.2.6

Description

Summary Users with limited sudo privileges (e.g. execution of a single command) can list sudo privileges of other users using the `-U` flag. This doesn't happen with the original sudo. PoC The initial test has been done in a container running Ubuntu 24.04 and installing oxidizr, running sudo-rs 0.2.2. A user (bob) has been added with only ps command executable through sudo: ``` root ALL=(ALL:ALL) ALL bob ALL=(ALL:ALL) /usr/bin/ps ``` The user is not able to read the `/etc/sudoers` file and running `sudo -l -Uroot` with original sudo (version 1.9.15p5) causes the following error: ``` Sorry, user bob is not allowed to execute 'list' as root on 43d4aed3cdbd. ``` The same command with sudo-rs is run without denying the execution: ``` User root may run the following commands on 43d4aed3cdbd: (ALL : ALL) ALL ``` The same happens for other non-root users: ``` bob@43d4aed3cdbd:~$ sudo -l -Ufoo User foo may run the following commands on 43d4aed3cdbd: (ALL : ALL) /usr/bin/whoami ``` The behavior has been also been observed for version 0.2.5. Impact Users with limited sudo privileges can enumerate the sudoers file, revealing sensitive information about other users' permissions. Attackers can collect information that can be used to more targeted attacks. Systems where users either do not have sudo privileges or have the ability to run all commands as root through sudo (the default configuration on most systems) are not affected by this advisory. Credits This issue was identified by Sonia Zorba.

Related

Alias · CVE (1)

  • CVE-2025-46718 sudo-rs is a memory safe implementation of sudo and su written in Rust. vulnerability

Weakness · CWE (1)

  • CWE-497 Exposure of Sensitive System Information to an Unauthorized Control Sphere weakness

References