CVE-2023-31979
High · 7.8CVSS
7.8
EPSS
0.3%
Published
May 9, 2023
CISA due date
—
Cloudanix analysis
A flaw in an older document processing tool can let someone with local access take over affected systems if they trick it into opening a bad file, so update the affected software right away.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Full Compromise
- Component
- Application
- Class
- Buffer Overflow
- Remediation
- No Fix Yet
- Effort
- Other
- Patch risk
- Low
What it actually does
Global buffer overflow in catdoc process_file function allows out-of-bounds memory writes when parsing specially crafted input files, enabling local code execution or denial of service.
Why it matters to the business
Attackers with local access can compromise systems processing untrusted documents via catdoc, potentially leading to container escapes or lateral movement in Cilium-managed environments; low EPSS and long public availability reduce immediate external risk but exploit code existence raises urgency for patching.
How an attack unfolds
An attacker crafts a malicious document that triggers the overflow in catdoc's reader.c when the process_file function is invoked, overwriting memory to execute arbitrary code under the privileges of the calling process; public exploit code facilitates local testing and adaptation.
How to fix it
Upgrade affected Chainguard packages to the fixed versions: cilium-fips-1.14 to 1.14.8-r0 and equivalent updates for cilium-fips-1.14-container-init, cilium-fips-1.14-container-init-compat, cilium-fips-1.14-host-utils, cilium-fips-1.14-hubble-relay, cilium-fips-1.14-iptables, and cilium-fips-1.14-operator-generic; remove or isolate older catdoc v0.95 binaries.
How to confirm the fix worked
Verify package versions match or exceed 1.14.8-r0 across listed Cilium components; test catdoc against known trigger files in a lab to confirm absence of overflow behavior; scan container images for vulnerable catdoc binaries.
Typical attack path
- Obtain or create a malicious document file designed to overflow the global buffer in process_file
- Place the file in a location accessible to a process using catdoc (e.g., document conversion workflow)
- Trigger catdoc execution on the file via local user, script, or automated pipeline
- Achieve memory corruption leading to code execution or crash
How to detect it
Review process execution logs and command-line arguments for catdoc invocations on untrusted files; inspect core dumps or crash reports indicating buffer issues; correlate with file creation events preceding catdoc runs.
What your security team should do
- Immediately upgrade all listed Chainguard cilium-fips packages to 1.14.8-r0 or newer
- Audit environments for any remaining use of catdoc v0.95 in document processing pipelines
- Restrict catdoc execution to trusted input sources and run under least privilege
- Monitor for new public exploits given available maturity status
The record
Catdoc v0.95 was discovered to contain a global buffer overflow via the function process_file at /src/reader.c.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:10 | catdoc | 0 | No fix |
| Debian:11 | catdoc | 0 | No fix |
| Debian:12 | catdoc | 0 | No fix |
| Debian:13 | catdoc | 0 | No fix |
| Ubuntu:16.04:LTS | catdoc | 0 | No fix |
| Ubuntu:18.04:LTS | catdoc | 0 | No fix |
| Ubuntu:20.04:LTS | catdoc | 0 | No fix |
| Ubuntu:22.04:LTS | catdoc | 0 | No fix |
| Ubuntu:24.04:LTS | catdoc | 0 | No fix |
| Ubuntu:24.10 | catdoc | 0 | No fix |
| Ubuntu:25.04 | catdoc | 0 | No fix |
| Ubuntu:25.10 | catdoc | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | catdoc | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | catdoc | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | catdoc | 0 | No fix |
Related vulnerabilities
- CVE-2023-41633 Catdoc v0.95 was discovered to contain a NULL pointer dereference via the component… Also affects catdoc
- CVE-2026-112108 A vulnerability was determined in ztxz16 fastllm up to 0.1.8.2. CWE-120
- CVE-2026-90804 A vulnerability was detected in GNU Binutils 2.47. CWE-120
- CVE-2026-90803 A security vulnerability has been detected in GNU Binutils 2.47. CWE-120
- CVE-2026-90801 A security flaw has been discovered in GNU Binutils 2.47. CWE-120
- CVE-2026-42808 An issue was discovered in Bosch Sensortec COINES_SDK versions 2.0 through 2.11. The host… CWE-120
- CVE-2026-87931 A vulnerability has been found in Behavioral Technology Group Pavlok Behavioral… CWE-120
- CVE-2026-71613 Buffer Overflow vulnerability in GPAC c2dee3aff638cd96f9617ac5b17dc2868cd90ef3 allows an… CWE-120