Security Advisories (3)
CVE-2015-3451 (2015-04-23)

The _clone function does not properly set the expand_entities option, which allows remote attackers to conduct XML external entity (XXE) attacks via crafted XML data to the (1) new or (2) load_xml function.

CVE-2017-10672 (2015-04-23)

Use-after-free in the XML-LibXML module through 2.0129 for Perl allows remote attackers to execute arbitrary code by controlling the arguments to a replaceChild call.

CVE-2026-8177 (2026-05-10)

XML::LibXML versions through 2.0210 for Perl read out-of-bounds heap memory when parsing XML node names containing truncated UTF-8 byte sequences. A node name ending in the middle of a multi byte UTF-8 sequence causes the parser to read past the end of the input string into adjacent heap memory. Any Perl process that passes attacker controlled strings to XML::LibXML's DOM node-name methods can reach this path on the default API. The likely consequence is a crash, causing denial of service.

Changes for version 1.60

  • getElementsById corrected to getElementById and the old name kept as an alias. Also re-implemented without XPath for improved performance
  • DOM Level 3 method $attr->isId() added
  • make {get,set,has}Attribute(Node)? methods work with full attribute names rather than just localnames. (Although DOM Level 3 is not very clear about the behavior of these methods for an attributes with namespaces, it certainly does not imply that getAttribute('foo') should return value of a bar:foo, which was the old behavior.)
  • added publicId and systemId methods to XML::LibXML::Dtd

Documentation

XML::LibXML Attribute Class
XML::LibXML Class for CDATA Sections
XML::LibXML Comment Class
XML::LibXML DOM Implementation
XML::LibXML DOM Document Class
XML::LibXML's DOM L2 Document Fragment Implementation
XML::LibXML DTD Handling
XML::LibXML Class for Element Nodes
XML::LibXML Class for Input Callbacks
XML::LibXML Namespace Implementation
Abstract Base Class of XML::LibXML Nodes
XML::LibXML Processing Instructions
Parsing XML Data with XML::LibXML
RelaxNG Schema Validation
XML Schema Validation
XML::LibXML Class for Text Nodes

Modules

Perl Binding for libxml2
Boolean true/false values
Simple string values.
a list of XML document nodes
Simple numeric values.
XML::LibXML direct SAX parser
Building DOM trees from SAX events.
Generate SAX events from a LibXML tree

Provides

in LibXML.pm
in LibXML.pm
in LibXML.pm
in LibXML.pm
in LibXML.pm
in LibXML.pm
in LibXML.pm
in LibXML.pm
in LibXML.pm
in lib/XML/LibXML/SAX/Generator.pm
in lib/XML/LibXML/SAX/Parser.pm
in LibXML.pm
in LibXML.pm