REDHAT-BUG-2492257: High severity Gnome GIO (g_dbus_node_info_new_for_xml / gdbusintrospection) vulnerability
A state confusion vulnerability exists in gdbusnodeinfonewforxml() in gio/gdbusintrospection.c. When parsing malformed D-Bus introspection XML containing a <node> element nested inside <method>, <signal>, <property>, or <arg> elements, the parser's internal state becomes inconsistent. The nested </interface> closing tag inside the nested <node> steals and resets the shared data->methods (or data->signals/data->properties) array to an empty state. When the outer </method> (or similar) closing tag subsequently calls parsedatagetmethod(data, FALSE), it accesses pdata[len - 1] with len == 0, causing an unsigned integer underflow (0u - 1 = 0xFFFFFFFF) and a massive out-of-bounds heap read at offset 0xFFFFFFFF sizeof(gpointer) (~8 GB before the buffer).
Affected Software
Event History
Frequently Asked Questions
What is the severity of REDHAT-BUG-2492257?
The severity of REDHAT-BUG-2492257 is high, rated at 7.
What causes the vulnerability REDHAT-BUG-2492257?
The vulnerability REDHAT-BUG-2492257 is caused by a state confusion in the g_dbus_node_info_new_for_xml() function when parsing malformed D-Bus introspection XML.
How can I mitigate the risks of REDHAT-BUG-2492257?
To mitigate the risks of REDHAT-BUG-2492257, ensure that your Gnome GIO software is updated to the latest version that addresses this vulnerability.
Who is affected by REDHAT-BUG-2492257?
Users of Gnome GIO that utilize the g_dbus_node_info_new_for_xml function to parse D-Bus introspection XML are affected by REDHAT-BUG-2492257.
Is there a fix available for REDHAT-BUG-2492257?
Yes, a fix for REDHAT-BUG-2492257 is included in the latest software updates for Gnome GIO.