Hide Forgot
The agroot() function in cgraph\obj.c in libcgraph.a in Graphviz 2.39.20160612.1140 has a NULL pointer dereference, as demonstrated by graphml2gv. Reference: https://gitlab.com/graphviz/graphviz/issues/1517 https://research.loginsoft.com/vulnerability/null-pointer-dereference-in-function-agroot/
Created graphviz tracking bugs for this issue: Affects: fedora-all [bug 1699850]
Upstream patch: https://gitlab.com/graphviz/graphviz/commit/839085f8026afd6f6920a0c31ad2a9d880d97932
The graphml2gv application from graphviz suite is a tool used to convert GraphML input into GV format. This issue relies on the fact graphml currently doesn't fully validate malformated GraphML inputs. An attacker can take advantage of this weakness by crafting an invalid GraphML representation which leads graphml2gv to a NULL pointer dereference at agroot() after call agnode() function trying to insert a node into the graph causing DoS.