CVE-2026-57438
Description
Nokogiri is an open source XML and HTML library for the Ruby programming language. Prior to 1.19.4, XInclude substitution performed by Nokogiri::XML::Node#do_xinclude replaced each <xi:include> in place, freeing the include node along with its children (such as <xi:fallback> and its descendants) and any namespaces declared on them. If an application had already exposed one of those nodes or namespaces to Ruby, the corresponding Ruby object was left pointing at freed memory. Using the object could result in invalid reads or writes to memory. This vulnerability is fixed in 1.19.4.
Summary dbcve.org
This is a use-after-free vulnerability in Nokogiri's XInclude substitution. When Nokogiri::XML::Node#do_xinclude replaces <xi:include> elements in place, it frees the include node along with children like <xi:fallback> and any declared namespaces. If Ruby code has already stored references to these nodes or namespaces, those Ruby objects become dangling pointers to freed memory, leading to invalid reads/writes.
Mitigation
Upgrade Nokogiri to version 1.19.4 or later. As a temporary workaround, avoid storing references to XInclude-related nodes before calling do_xinclude.