CVE-2022-38230
Medium · 5.5CVSS
5.5
EPSS
0.5%
Published
Aug 16, 2022
CISA due date
—
Cloudanix analysis
A PDF reader can suddenly crash when someone opens a specially made document, interrupting work that depends on viewing files.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Application
- Class
- Improper Input Validation
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
A floating point exception in DCTStream::decodeImage triggers an unhandled crash during processing of malformed DCT-encoded image data inside PDF streams.
Why it matters to the business
Users opening crafted PDF files experience an immediate application crash, interrupting document review workflows and potentially halting business processes that rely on PDF viewing or conversion.
How an attack unfolds
An attacker creates a PDF containing a specially malformed DCT image stream. When the victim opens the file with the vulnerable XPDF binary, the decoder hits the floating-point exception and terminates, achieving denial of service. Public exploit code is available and the issue has been known for over four years.
How to fix it
Upgrade to a maintained fork or alternative PDF viewer that has addressed the floating-point exception. Disable PDF rendering in high-risk workflows until a patched version is deployed.
How to confirm the fix worked
Attempt to open a test PDF containing the known malformed DCT stream; confirm the application no longer crashes and returns a clean error or renders the page safely.
Typical attack path
- Attacker crafts PDF with invalid DCT image data
- Victim receives and opens the PDF (local file, email attachment, or web download)
- XPDF loads the document and invokes DCTStream::decodeImage
- Floating-point exception occurs and the process crashes
How to detect it
Monitor process crash logs and application fault reports for XPDF binaries encountering floating-point exceptions while parsing PDF streams; correlate with file-open events on untrusted documents.
What your security team should do
- Replace XPDF with a supported viewer in all environments
- Block untrusted PDFs from being opened in automated or unattended processes
- Add file-type sandboxing or conversion steps before user viewing
The record
XPDF commit ffaf11c was discovered to contain a floating point exception (FPE) via DCTStream::decodeImage() at /xpdf/Stream.cc.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Ubuntu:16.04:LTS | ipe | 0 | No fix |
| Ubuntu:18.04:LTS | ipe | 0 | No fix |
| Ubuntu:20.04:LTS | ipe | 0 | No fix |
| Ubuntu:22.04:LTS | ipe | 0 | No fix |
| Ubuntu:24.04:LTS | ipe | 0 | No fix |
| Ubuntu:24.10 | ipe | 0 | No fix |
| Ubuntu:25.04 | ipe | 0 | No fix |
| Ubuntu:25.10 | ipe | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | ipe | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | ipe | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | ipe | 0 | No fix |
Related vulnerabilities
- CVE-2024-7868 In Xpdf 4.05 (and earlier), invalid header info in a DCT (JPEG) stream can lead to an… Also affects ipe
- CVE-2024-7867 In Xpdf 4.05 (and earlier), very large coordinates in a page box can cause an integer… Also affects ipe
- CVE-2024-7866 In Xpdf 4.05 (and earlier), a PDF object loop in a pattern resource leads to infinite… Also affects ipe
- CVE-2024-4976 Out-of-bounds array write in Xpdf 4.05 and earlier, due to missing object type check in… Also affects ipe
- CVE-2024-4568 In Xpdf 4.05 (and earlier), a PDF object loop in the PDF resources leads to infinite… Also affects ipe
- CVE-2024-4141 Out-of-bounds array write in Xpdf 4.05 and earlier, triggered by an invalid character… Also affects ipe
- CVE-2024-3900 Out-of-bounds array write in Xpdf 4.05 and earlier, triggered by long Unicode sequence in… Also affects ipe
- CVE-2024-3247 In Xpdf 4.05 (and earlier), a PDF object loop in an object stream leads to infinite… Also affects ipe