CVE-2014-9157
NoneCVSS
—
EPSS
5.6%
Published
Dec 3, 2014
CISA due date
—
Cloudanix analysis
A problem in the Graphviz tool could let attackers take control of a computer by feeding it specially crafted data.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Remote Code Execution
- Component
- Library
- Class
- Improper Input Validation
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The flaw is a format string vulnerability in the yyerror function within lib/cgraph/scan.l that passes attacker-controlled input containing format specifiers directly into an error string without proper sanitization, enabling memory reads, writes, or corruption.
Why it matters to the business
Systems processing untrusted input with Graphviz may face remote compromise risks that disrupt operations or expose data, though the age of the issue and stable low exploitation probability limit widespread operational urgency across the ecosystem.
How an attack unfolds
An attacker crafts input containing format specifiers such as %n or %s and supplies it through vectors that reach the cgraph scanner, triggering yyerror and allowing the format string to be interpreted by the underlying printf-style function for memory manipulation or code execution.
How to fix it
Upgrade Graphviz to a patched release that corrects format string handling in lib/cgraph/scan.l and rebuild any dependent packages on affected Debian systems.
How to confirm the fix worked
Confirm Graphviz binaries or source no longer contain the vulnerable yyerror call pattern and test error paths with crafted format-string inputs to verify safe handling.
Typical attack path
- Locate an entry point that feeds data into Graphviz cgraph parsing
- Construct malicious input embedding format string specifiers
- Trigger an error condition that invokes yyerror with the tainted string
- Leverage resulting memory corruption to achieve code execution or information disclosure
How to detect it
Review application and system logs for Graphviz crashes or anomalous error messages during input processing and inspect process memory dumps for signs of format-string exploitation patterns.
What your security team should do
- Prioritize upgrading Graphviz installations that accept external input
- Restrict Graphviz usage to trusted data sources until patched
- Audit dependent applications for exposure to the cgraph library
The record
Format string vulnerability in the yyerror function in lib/cgraph/scan.l in Graphviz allows remote attackers to have unspecified impact via format string specifiers in unknown vectors, which are not properly handled in an error string.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Chainguard | graphviz | 0 | 0 |
| Chainguard | graphviz-dev | 0 | 0 |
| Chainguard | graphviz-doc | 0 | 0 |
| Chainguard | graphviz-graphs | 0 | 0 |
| Chainguard | lua5.4-graphviz | 0 | 0 |
| Chainguard | py3-graphviz | 0 | 0 |
| Chainguard | py3-gv | 0 | 0 |
| Chainguard | py3.10-graphviz | 0 | 0 |
| Chainguard | py3.11-graphviz | 0 | 0 |
| Chainguard | py3.12-graphviz | 0 | 0 |
| Chainguard | py3.13-graphviz | 0 | 0 |
| Debian:11 | graphviz | 0 | 2.38.0-7 |
| Debian:12 | graphviz | 0 | 2.38.0-7 |
| Debian:13 | graphviz | 0 | 2.38.0-7 |
| Debian:6.0 | graphviz | 0 | 2.26.3-5+squeeze3 |
| Debian:7 | graphviz | 0 | 2.26.3-14+deb7u2 |
| Mageia:4 | graphviz | 0 | 2.34.0-6.1.mga4 |
| Ubuntu:14.04:LTS | graphviz | 0 | 2.36.0-0ubuntu3.1 |
| Wolfi | graphviz | 0 | 0 |
| Wolfi | graphviz-dev | 0 | 0 |
| Wolfi | graphviz-doc | 0 | 0 |
| Wolfi | graphviz-graphs | 0 | 0 |
| Wolfi | lua5.4-graphviz | 0 | 0 |
| Wolfi | py3-gv | 0 | 0 |
Related vulnerabilities
- CVE-2026-73782 A format string vulnerability exists in the command line interface of AOS-CX that could… CWE-134
- CVE-2026-16821 IBM AIX 7.2, and 7.3 and IBM PowerVM VIOS 4.1 could allow a local attacker to gain… CWE-134
- CVE-2026-81574 In CodeMeter Runtime before versions 8.41a and 9.10, the logger does not sanitize input… CWE-134
- CVE-2026-63073 Issue summary: OpenSSL CMP response validation passed an unexpected response sender… CWE-134
- CVE-2026-17136 IBM AIX 7.2, and 7.3 and IBM PowerVM VIOS 4.1 could allow a remote attacker to execute… CWE-134
- CVE-2026-68553 Coturn is a free open source implementation of TURN and STUN Server. CWE-134
- CVE-2026-15961 IBM PowerVM Hypervisor FW1120.00, FW1110.00 through FW1110.30, and FW1060.00 through… CWE-134
- CVE-2026-12004 IBM Security Verify Access 10.0 through 10.0.9.2 and IBM Verify Identity Access 11.0… CWE-134