CVE-2019-3461
High · 7.0CVSS
7.0
EPSS
0.3%
Published
Feb 4, 2019
CISA due date
—
Cloudanix analysis
A file-cleanup tool on some Debian systems can be tricked by regular users into placing harmful files where they will run with full system privileges.
- Exploitation
- Local Privilege
- Attacker needs
- Local User
- Complexity
- High
- Impact
- Privilege Gain
- Component
- Application
- Class
- Race Condition
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Race condition during bind mount via rename() allows a local attacker to redirect a file being cleaned by tmpreaper to an arbitrary location on the same filesystem, such as /etc/cron.d/, resulting in arbitrary code execution as root.
Why it matters to the business
Local users on affected Debian systems can obtain full administrative control, enabling data theft, persistence, or disruption of services; the vulnerability affects long-running cleanup utilities and requires urgent patching on any systems still using the vulnerable tmpreaper package.
How an attack unfolds
An attacker with a local account prepares a malicious payload and symlink, then times a rename operation to coincide with tmpreaper's cleanup of a directory on the same filesystem, causing the payload to be placed in a privileged location such as a cron directory for subsequent root execution.
How to fix it
Upgrade tmpreaper to version 1.6.13+nmu1+deb9u1, 1.6.14, or later on all Debian systems; remove or disable the package if temporary-file cleanup is not required.
How to confirm the fix worked
Query the package manager for the installed tmpreaper version and confirm it matches a fixed release; review system cron directories and tmpreaper configuration for unexpected entries.
Typical attack path
- Gain local unprivileged access on a Debian system running vulnerable tmpreaper
- Create a directory eligible for cleanup and prepare a malicious file or symlink targeting a privileged path
- Trigger or wait for tmpreaper execution during its scheduled cleanup
- Win the rename() race to redirect the file placement into /etc/cron.d/ or equivalent
- Wait for cron to execute the planted payload as root
How to detect it
Search system and authentication logs for tmpreaper processes executing around the same time as unexpected files appearing in /etc/cron.d/ or other privileged directories; review cron job creation timestamps and any symlinks or renames involving temporary directories.
- /etc/cron.d/
- tmpreaper
- unexpected cron job files with recent timestamps matching tmpreaper execution
What your security team should do
- Immediately upgrade tmpreaper to a fixed version on all Debian hosts
- Inventory systems using tmpreaper and prioritize those with local user accounts
- Monitor package update channels for any additional backports or advisories
- Consider replacing tmpreaper with maintained alternatives such as tmpwatch or systemd-tmpfiles
The record
Debian tmpreaper version 1.6.13+nmu1 has a race condition when doing a (bind) mount via rename() which could result in local privilege escalation. Mounting via rename() could potentially lead to a file being placed elsewhereon the filesystem hierarchy (e.g. /etc/cron.d/) if the directory being cleaned up was on the same physical filesystem. Fixed versions include 1.6.13+nmu1+deb9u1 and 1.6.14.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | tmpreaper | 0 | 1.6.14 |
| Debian:12 | tmpreaper | 0 | 1.6.14 |
| Debian:13 | tmpreaper | 0 | 1.6.14 |
| Debian:8 | tmpreaper | 0 | 1.6.13+nmu1+deb8u1 |
| Debian:9 | tmpreaper | 0 | 1.6.13+nmu1+deb9u1 |
| Ubuntu:14.04:LTS | tmpreaper | 0 | No fix |
| Ubuntu:16.04:LTS | tmpreaper | 0 | 1.6.13+nmu1+deb9u1build0.16.04.1 |
| Ubuntu:18.04:LTS | tmpreaper | 0 | 1.6.13+nmu1+deb9u1build0.18.04.1 |
| Ubuntu:20.04:LTS | tmpreaper | 0 | 1.6.14 |
| Ubuntu:Pro:14.04:LTS | tmpreaper | 0 | No fix |
Related vulnerabilities
- CVE-2026-114641 Traefik 2.11.x before 2.11.58 and 3.x before 3.7.14 contains a race condition in NTLM and… CWE-362
- CVE-2026-109279 ImageMagick before 6.9.13-57 and 7.x before 7.1.2-32 lacks proper synchronization when… CWE-362
- CVE-2026-97032 HTTP/2 servers could end up crashing due to inadvertently modifying its HPACK encoder… CWE-362
- CVE-2026-98163 In the Linux kernel, the following vulnerability has been resolved: cgroup: Avoid… CWE-362
- CVE-2026-98146 In the Linux kernel, the following vulnerability has been resolved: accel/amdxdna: Remove… CWE-362
- CVE-2026-98153 In the Linux kernel, the following vulnerability has been resolved: nvme: fix racy access… CWE-362
- CVE-2026-98130 In the Linux kernel, the following vulnerability has been resolved: sctp: fix a TOCTOU… CWE-362
- CVE-2026-98115 In the Linux kernel, the following vulnerability has been resolved: ksmbd: safely drain… CWE-362