CVE-2014-8117
NoneCVSS
—
EPSS
5.9%
Published
Dec 17, 2014
CISA due date
—
Cloudanix analysis
A problem in a widely used tool for recognizing file types lets attackers send certain files that can slow down or stop systems, interrupting normal work until fixed.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Library
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The vulnerability allows unbounded recursion during magic number parsing in softmagic.c, enabling remote inputs to trigger deep call stacks that exhaust CPU resources or cause crashes with no impact on confidentiality or integrity.
Why it matters to the business
Applications relying on file type identification, including nvidia-device-plugin deployments, can suffer service degradation or outages when handling crafted inputs, increasing operational overhead for restarts and monitoring without ransomware association.
How an attack unfolds
An attacker creates a specially formed file input designed to exceed recursion limits in the parsing logic and supplies it to any exposed interface that invokes the vulnerable file utility for content inspection.
How to fix it
Upgrade nvidia-device-plugin (Chainguard) to version 0.15.0-r2 or newer and nvidia-device-plugin (Wolfi) to version 0.15.0-r2 or newer; for the underlying file utility, update to 5.21 or later to enforce recursion limits.
How to confirm the fix worked
Confirm the installed file utility reports version 5.21 or higher, then test processing of known deep-recursion test cases to verify absence of excessive CPU usage or crashes.
Typical attack path
- Locate services or endpoints that invoke file type detection on untrusted inputs
- Generate a recursive magic file payload targeting softmagic.c
- Deliver the payload over the network or via local file processing
- Trigger repeated parsing to induce CPU exhaustion or crash
How to detect it
Examine system and application logs for repeated file utility invocations followed by high CPU alerts or process terminations; correlate with inbound file uploads or content inspection events near incident times.
What your security team should do
- Apply the listed package upgrades immediately on affected Chainguard and Wolfi images
- Audit all container images and dependencies for older versions of the file utility
- Implement resource limits and monitoring around file-processing workloads
- Review logs for historical crash patterns after applying updates
The record
softmagic.c in file before 5.21 does not properly limit recursion, which allows remote attackers to cause a denial of service (CPU consumption or crash) via unspecified vectors.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:10 | file | 0 | 1:5.21+15-1 |
| Debian:11 | file | 0 | 1:5.21+15-1 |
| Debian:12 | file | 0 | 1:5.21+15-1 |
| Debian:13 | file | 0 | 1:5.21+15-1 |
| Debian:6.0 | file | 0 | 5.04-5+squeeze9 |
| Debian:6.0 | php5 | 0 | 5.3.3-7+squeeze24 |
| Debian:6.0 | php5 | 0 | 5.3.3-7+squeeze19 |
| Debian:7 | file | 0 | 5.11-2+deb7u7 |
| Debian:7 | php5 | 0 | 5.4.4-14+deb7u8 |
| Mageia:4 | file | 0 | 5.16-1.9.mga4 |
| Mageia:4 | libgd | 0 | 2.1.0-3.2.mga4 |
| Mageia:4 | php | 0 | 5.5.21-1.mga4 |
| Mageia:4 | php-apc | 0 | 3.1.15-4.11.mga4 |
| Red Hat:enterprise_linux:6::client | file | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::client | file-debuginfo | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::client | file-devel | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::client | file-libs | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::client | file-static | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::client | python-magic | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::computenode | file | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::computenode | file-debuginfo | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::computenode | file-devel | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::computenode | file-libs | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::computenode | file-static | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::computenode | python-magic | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::server | file | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::server | file-debuginfo | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::server | file-devel | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::server | file-libs | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::server | file-static | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::server | python-magic | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::workstation | file | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::workstation | file-debuginfo | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::workstation | file-devel | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::workstation | file-libs | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::workstation | file-static | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:6::workstation | python-magic | 0 | 0:5.04-30.el6 |
| Red Hat:enterprise_linux:7::client | file | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::client | file-debuginfo | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::client | file-devel | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::client | file-libs | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::client | file-static | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::client | python-magic | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::computenode | file | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::computenode | file-debuginfo | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::computenode | file-devel | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::computenode | file-libs | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::computenode | file-static | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::computenode | python-magic | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::server | file | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::server | file-debuginfo | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::server | file-devel | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::server | file-libs | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::server | file-static | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::server | python-magic | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::workstation | file | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::workstation | file-debuginfo | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::workstation | file-devel | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::workstation | file-libs | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::workstation | file-static | 0 | 0:5.11-31.el7 |
| Red Hat:enterprise_linux:7::workstation | python-magic | 0 | 0:5.11-31.el7 |
| SUSE:Linux Enterprise Desktop 12 SP2 | file | 0 | 5.22-10.3.1 |
| SUSE:Linux Enterprise Desktop 12 SP3 | file | 0 | 5.22-10.3.1 |
| SUSE:Linux Enterprise Server 12 SP2 | file | 0 | 5.22-10.3.1 |
| SUSE:Linux Enterprise Server 12 SP3 | file | 0 | 5.22-10.3.1 |
| SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2 | file | 0 | 5.22-10.3.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP2 | file | 0 | 5.22-10.3.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP3 | file | 0 | 5.22-10.3.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP2 | file | 0 | 5.22-10.3.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP2 | python-magic | 0 | 5.22-10.3.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP3 | file | 0 | 5.22-10.3.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP3 | python-magic | 0 | 5.22-10.3.1 |
| Ubuntu:14.04:LTS | file | 0 | 1:5.14-2ubuntu3.3 |
| Ubuntu:14.04:LTS | php5 | 0 | 5.5.9+dfsg-1ubuntu4.7 |
| openSUSE:Tumbleweed | file | 0 | 5.29-2.1 |
Related vulnerabilities
- CVE-2007-1536 Integer underflow in the file_printf function in the "file" program before 4.20 allows… Also affects file
- CVE-2015-8865 The file_check_mem function in funcs.c in file before 5.23, as used in the Fileinfo… Also affects file
- CVE-2014-9620 The ELF parser in file 5.08 through 5.21 allows remote attackers to cause a denial of… Also affects file
- CVE-2014-3710 The donote function in readelf.c in file through 5.20, as used in the Fileinfo component… Also affects file
- CVE-2014-3587 Integer overflow in the cdf_read_property_info function in cdf.c in file through 5.19, as… Also affects file
- CVE-2014-3480 The cdf_count_chain function in cdf.c in file before 5.19, as used in the Fileinfo… Also affects file
- CVE-2014-3478 Buffer overflow in the mconvert function in softmagic.c in file before 5.19, as used in… Also affects file
- CVE-2014-3487 The cdf_read_property_info function in file before 5.19, as used in the Fileinfo… Also affects file