CVE-2017-15266
Medium · 5.5CVSS
5.5
EPSS
1.5%
Published
Oct 11, 2017
CISA due date
—
Cloudanix analysis
A flaw in a common tool that reads information from audio files can make programs crash when they encounter certain specially made sound files.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Library
- Class
- Improper Input Validation
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
A divide-by-zero occurs in EXTRACTOR_wav_extract_method when a WAV file supplies a zero sample rate, causing an immediate crash of the calling process.
Why it matters to the business
Applications that extract metadata from user-supplied audio files can be forced to terminate unexpectedly, interrupting workflows that depend on reliable media processing.
How an attack unfolds
An attacker crafts a minimal WAV file that declares a sample rate of zero, then supplies the file to any program that invokes GNU Libextractor on untrusted input; the library performs an integer division by the sample rate and crashes.
How to fix it
Upgrade GNU Libextractor to a version that validates the sample rate before division; if no patched release is available, wrap calls to the library with input sanitization that rejects zero-rate WAV headers or switch to an alternative metadata extractor.
How to confirm the fix worked
Feed a minimal WAV file with sample rate zero into the updated library and confirm the process no longer terminates; additionally run existing regression tests and fuzzers against the wav_extractor module.
Typical attack path
- Create a WAV file containing a fmt chunk with sample rate set to zero
- Deliver the file through email, web upload, or shared storage
- Victim application calls libextractor to read metadata from the file
- EXTRACTOR_wav_extract_method divides by the zero sample rate and aborts
How to detect it
Search application and system logs for abrupt termination of processes that link against libextractor while handling .wav files; look for SIGFPE or division-by-zero signals correlated with recent file ingestion.
What your security team should do
- Replace or update GNU Libextractor in all products that parse untrusted media
- Add defensive checks around sample-rate values before any arithmetic
- Restrict metadata extraction to trusted file sources until the component is hardened
The record
In GNU Libextractor 1.4, there is a Divide-By-Zero in EXTRACTOR_wav_extract_method in wav_extractor.c via a zero sample rate.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | libextractor | 0 | 1:1.6-1 |
| Debian:12 | libextractor | 0 | 1:1.6-1 |
| Debian:13 | libextractor | 0 | 1:1.6-1 |
| Debian:7 | libextractor | 0 | 1:0.6.3-5+deb7u1 |
| Mageia:5 | libextractor | 0 | 1.6-1.mga5 |
| Mageia:6 | libextractor | 0 | 1.6-1.mga6 |
| Ubuntu:16.04:LTS | libextractor | 0 | 1:1.3-4+deb9u3build0.16.04.1 |
| Ubuntu:18.04:LTS | libextractor | 0 | 1:1.6-2 |
| Ubuntu:Pro:14.04:LTS | libextractor | 0 | No fix |
Related vulnerabilities
- CVE-2026-112054 Schroedinger libschroedinger through 1.0.11 contains a divide by zero vulnerability that… CWE-369
- CVE-2026-93589 ImageMagick before 7.1.2-31 and 6.9.13-56 contains a division-by-zero flaw in the FLIF… CWE-369
- CVE-2026-15417 In the silabser.sys Windows 8 driver for CP210x devices, a local unprivileged user can… CWE-369
- CVE-2026-6244 libpcap BPF interpreter for the 'div #k' and 'mod #k' ALU instructions does not check… CWE-369
- CVE-2026-85458 Divide-by-zero in Xpdf 4.06 (and earlier), when a glyph in a Type 3 font has a zero… CWE-369
- CVE-2026-38345 A Division-by-Zero vulnerability in the ff_sws_init_single_context function… CWE-369
- CVE-2026-75466 libjpeg-turbo 3.2.0 contains an integer division-by-zero vulnerability in the PNG loader. CWE-369
- CVE-2026-16897 IBM AIX 7.2, and 7.3 and IBM PowerVM VIOS 4.1 could allow a local attacker to cause a… CWE-369