CVE-2019-5094
Medium · 6.7CVSS
6.7
EPSS
1.1%
Published
Sep 24, 2019
CISA due date
—
Cloudanix analysis
A bug in tools that manage disk partitions could let someone who already has access to a computer run their own programs by feeding it a specially made disk image.
- Exploitation
- Local Privilege
- Attacker needs
- High Privilege
- Complexity
- Moderate
- Impact
- Full Compromise
- Component
- Application
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Out-of-bounds write on the heap in quota file handling of e2fsprogs allows arbitrary code execution when processing a malicious ext4 partition.
Why it matters to the business
Attackers with local access could execute code on systems processing untrusted disk images or partitions, risking compromise of affected infrastructure; the vulnerability affects 98 downstream dependents and remains exploitable years after disclosure despite available patches.
How an attack unfolds
An attacker creates a specially crafted ext4 partition that triggers an out-of-bounds write during quota file processing in e2fsprogs; when a privileged process such as a file-system tool or dependent application like TensorFlow mounts or inspects the partition, the heap corruption leads to code execution. Public exploits exist and the flaw has been known since 2019.
How to fix it
Upgrade e2fsprogs to a version beyond 1.45.3 and ensure dependent packages such as tensorflow (Bitnami) are updated to at least 2.6.1; rebuild any containers or images that bundle the vulnerable library.
How to confirm the fix worked
Confirm e2fsprogs version is newer than 1.45.3 via package manager or binary inspection; verify tensorflow (Bitnami) reports version 2.6.1 or later; test by attempting to process a known-good partition with the updated tools.
Typical attack path
- Attacker crafts malicious ext4 partition with corrupted quota structures
- Victim system or application processes or mounts the tainted partition using affected e2fsprogs
- Out-of-bounds write occurs on the heap during quota parsing
- Attacker gains arbitrary code execution in the context of the processing process
How to detect it
Review process execution logs and file-system tool invocations for unexpected crashes or errors when handling ext4 volumes; look for child processes spawned from e2fsprogs binaries or dependent applications after partition operations; check package versions in build artifacts and running containers.
What your security team should do
- Prioritize patching tensorflow (Bitnami) deployments to 2.6.1 or newer within standard change windows
- Inventory all systems and containers using e2fsprogs or its dependents and schedule upgrades
- Restrict local access to systems that process untrusted disk images until patched
- Monitor EPSS and exploit availability trends; no CISA KEV listing reduces immediate external urgency but does not eliminate local risk
The record
An exploitable code execution vulnerability exists in the quota file functionality of E2fsprogs 1.45.3. A specially crafted ext4 partition can cause an out-of-bounds write on the heap, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Alpine:v3.10 | e2fsprogs | 0 | 1.45.2-r1 |
| Alpine:v3.11 | e2fsprogs | 0 | 1.45.4-r0 |
| Alpine:v3.12 | e2fsprogs | 0 | 1.45.4-r0 |
| Alpine:v3.13 | e2fsprogs | 0 | 1.45.4-r0 |
| Alpine:v3.14 | e2fsprogs | 0 | 1.45.4-r0 |
| Alpine:v3.15 | e2fsprogs | 0 | 1.45.4-r0 |
| Alpine:v3.16 | e2fsprogs | 0 | 1.45.4-r0 |
| Alpine:v3.17 | e2fsprogs | 0 | 1.45.4-r0 |
| Alpine:v3.18 | e2fsprogs | 0 | 1.45.4-r0 |
| Alpine:v3.19 | e2fsprogs | 0 | 1.45.4-r0 |
| Alpine:v3.20 | e2fsprogs | 0 | 1.45.4-r0 |
| Alpine:v3.21 | e2fsprogs | 0 | 1.45.4-r0 |
| Alpine:v3.22 | e2fsprogs | 0 | 1.45.4-r0 |
| Alpine:v3.7 | e2fsprogs | 0 | 1.43.7-r1 |
| Alpine:v3.8 | e2fsprogs | 0 | 1.44.2-r1 |
| Alpine:v3.9 | e2fsprogs | 0 | 1.44.5-r1 |
| Debian:10 | e2fsprogs | 0 | 1.44.5-1+deb10u2 |
| Debian:11 | e2fsprogs | 0 | 1.45.4-1 |
| Debian:12 | e2fsprogs | 0 | 1.45.4-1 |
| Debian:13 | e2fsprogs | 0 | 1.45.4-1 |
| Debian:8 | e2fsprogs | 0 | 1.42.12-2+deb8u1 |
| Debian:9 | e2fsprogs | 0 | 1.43.4-2+deb9u1 |
| Mageia:7 | e2fsprogs | 0 | 1.45.4-1.mga7 |
| Red Hat:enterprise_linux:7::client | e2fsprogs | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::client | e2fsprogs-debuginfo | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::client | e2fsprogs-devel | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::client | e2fsprogs-libs | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::client | e2fsprogs-static | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::client | libcom_err | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::client | libcom_err-devel | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::client | libss | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::client | libss-devel | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::computenode | e2fsprogs | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::computenode | e2fsprogs-debuginfo | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::computenode | e2fsprogs-devel | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::computenode | e2fsprogs-libs | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::computenode | e2fsprogs-static | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::computenode | libcom_err | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::computenode | libcom_err-devel | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::computenode | libss | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::computenode | libss-devel | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::server | e2fsprogs | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::server | e2fsprogs-debuginfo | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::server | e2fsprogs-devel | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::server | e2fsprogs-libs | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::server | e2fsprogs-static | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::server | libcom_err | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::server | libcom_err-devel | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::server | libss | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::server | libss-devel | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::workstation | e2fsprogs | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::workstation | e2fsprogs-debuginfo | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::workstation | e2fsprogs-devel | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::workstation | e2fsprogs-libs | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::workstation | e2fsprogs-static | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::workstation | libcom_err | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::workstation | libcom_err-devel | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::workstation | libss | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:7::workstation | libss-devel | 0 | 0:1.42.9-19.el7 |
| Red Hat:enterprise_linux:8::baseos | e2fsprogs | 0 | 0:1.45.4-3.el8 |
| Red Hat:enterprise_linux:8::baseos | e2fsprogs-debuginfo | 0 | 0:1.45.4-3.el8 |
| Red Hat:enterprise_linux:8::baseos | e2fsprogs-debugsource | 0 | 0:1.45.4-3.el8 |
| Red Hat:enterprise_linux:8::baseos | e2fsprogs-devel | 0 | 0:1.45.4-3.el8 |
| Red Hat:enterprise_linux:8::baseos | e2fsprogs-libs | 0 | 0:1.45.4-3.el8 |
| Red Hat:enterprise_linux:8::baseos | e2fsprogs-libs-debuginfo | 0 | 0:1.45.4-3.el8 |
| Red Hat:enterprise_linux:8::baseos | libcom_err | 0 | 0:1.45.4-3.el8 |
| Red Hat:enterprise_linux:8::baseos | libcom_err-debuginfo | 0 | 0:1.45.4-3.el8 |
| Red Hat:enterprise_linux:8::baseos | libcom_err-devel | 0 | 0:1.45.4-3.el8 |
| Red Hat:enterprise_linux:8::baseos | libss | 0 | 0:1.45.4-3.el8 |
| Red Hat:enterprise_linux:8::baseos | libss-debuginfo | 0 | 0:1.45.4-3.el8 |
| SUSE:Linux Enterprise Desktop 12 SP4 | e2fsprogs | 0 | 1.43.8-3.8.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 | e2fsprogs | 0 | 1.43.8-4.11.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP1 | e2fsprogs | 0 | 1.43.8-4.11.1 |
| SUSE:Linux Enterprise Server 12 SP4 | e2fsprogs | 0 | 1.43.8-3.8.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP4 | e2fsprogs | 0 | 1.43.8-3.8.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP4 | e2fsprogs | 0 | 1.43.8-3.8.1 |
| Ubuntu:14.04:LTS | e2fsprogs | 0 | 1.42.9-3ubuntu1.3+esm1 |
| Ubuntu:16.04:LTS | e2fsprogs | 0 | 1.42.13-1ubuntu1.1 |
| Ubuntu:18.04:LTS | e2fsprogs | 0 | 1.44.1-1ubuntu1.2 |
| Ubuntu:Pro:14.04:LTS | e2fsprogs | 0 | 1.42.9-3ubuntu1.3+esm1 |
| openSUSE:Tumbleweed | e2fsprogs | 0 | 1.46.4-1.1 |
Related vulnerabilities
- CVE-2019-5188 A code execution vulnerability exists in the directory rehashing functionality of… Also affects e2fsprogs
- CVE-2015-0247 Heap-based buffer overflow in openfs.c in the libext2fs library in e2fsprogs before… Also affects e2fsprogs
- CVE-2026-111497 A buffer overflow vulnerability in the Brotli decoder (c/dec/decode.c) in Google Brotli… CWE-787
- CVE-2026-112397 Pillow is a Python imaging library. CWE-787
- CVE-2026-112059 libLAS through 1.8.1 contains a heap out-of-bounds write vulnerability in the point… CWE-787
- CVE-2026-89088 A flaw was found in parted. CWE-787
- CVE-2026-89085 A flaw was found in parted. CWE-787
- CVE-2026-85746 MariaDB server is a community developed fork of MySQL server. CWE-787