Xerces-C++: Denial of service — GLSA 200903-19

An error in Xerces-C++ allows for a Denial of Service via malicious XML schema files.

Affected packages

dev-libs/xerces-c on all architectures
Affected versions < 3.0.0-r1
Unaffected versions >= 3.0.0-r1

Background

Xerces-C++ is a validating XML parser written in a portable subset of C++.

Description

Frank Rast reported that the XML parser in Xerces-C++ does not correctly handle an XML schema definition with a large maxOccurs value, which triggers excessive memory consumption during the validation of an XML file.

Impact

A remote attacker could entice a user or automated system to validate an XML file using a specially crafted XML schema file, leading to a Denial of Service (stack consumption and crash).

Workaround

There is no known workaround at this time.

Resolution

All Xerces-C++ users should upgrade to the latest version:

 # emerge --sync
 # emerge --ask --oneshot --verbose ">=dev-libs/xerces-c-3.0.0-r1"

References

Release date
March 09, 2009

Latest revision
March 09, 2009: 01

Severity
normal

Exploitable
remote

Bugzilla entries