Cloudanix VulnDB

CVE-2014-9157

None

CVSS

—

EPSS

5.6%

Published

Dec 3, 2014

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A problem in the Graphviz tool could let attackers take control of a computer by feeding it specially crafted data.

Exploit Available
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

  1. Locate an entry point that feeds data into Graphviz cgraph parsing
  2. Construct malicious input embedding format string specifiers
  3. Trigger an error condition that invokes yyerror with the tainted string
  4. 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