Cloudanix VulnDB

CVE-2018-1311

High · 8.1

CVSS

8.1

EPSS

9.5%

Published

Dec 18, 2019

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

An old flaw in a common tool for reading structured data files can let attackers take control of affected programs if they receive specially made input.

Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
High
Impact
Remote Code Execution
Component
Library
Class
Use After Free
Remediation
No Fix Yet
Effort
Other
Patch risk
Other

What it actually does

Use-after-free vulnerability triggered during external DTD scanning in the Xerces-C XML parser, resulting in memory corruption that can be leveraged for arbitrary code execution or denial of service.

Why it matters to the business

Applications using vulnerable Xerces-C versions for XML handling face remote compromise risk when DTD processing is enabled; widespread library adoption means legacy deployments remain exposed years after disclosure, though stable low EPSS indicates limited active exploitation.

How an attack unfolds

An attacker supplies a specially crafted XML document containing an external DTD reference that causes the parser to access freed memory during scanning, allowing control of execution flow.

How to fix it

Upgrade affected packages to fixed versions including org/ffmpeg.git commit 5d737a3d0ca2bf0f0c6170096d9d1ca230cf9ee0 or lynx 2.8.9dev11-1; alternatively disable DTD processing via the DOM parser feature or the XERCES_DISABLE_DTD environment variable.

How to confirm the fix worked

Confirm updated library versions in all deployments, test XML parsing with DTDs explicitly disabled to ensure no crashes occur on crafted inputs, and review build configurations for DTD settings.

Typical attack path

  1. Identify target application accepting XML input with DTD processing enabled
  2. Craft and deliver malicious XML referencing an external DTD
  3. Trigger use-after-free during DTD scanning to corrupt memory
  4. Achieve code execution or crash the process

How to detect it

Monitor application logs and crash reports for segmentation faults or memory errors during XML parsing involving external DTD references; review process dumps for signs of memory reuse after free in parser code paths.

What your security team should do

  • Immediately audit and update all instances of Xerces-C and dependent products such as ffmpeg and lynx
  • Enforce DTD disabling in parser configurations as a compensating control
  • Incorporate version checks for this library into regular dependency scanning

The record

The Apache Xerces-C 3.0.0 to 3.2.3 XML parser contains a use-after-free error triggered during the scanning of external DTDs. This flaw has not been addressed in the maintained version of the library and has no current mitigation other than to disable DTD processing. This can be accomplished via the DOM using a standard parser feature, or via SAX using the XERCES_DISABLE_DTD environment variable.

Affected packages

Ecosystem Package Introduced Fixed
Debian:10 xerces-c 0 3.2.2+debian-1+deb10u1
Debian:11 xerces-c 0 3.2.3+debian-2
Debian:12 xerces-c 0 3.2.3+debian-2
Debian:13 xerces-c 0 3.2.3+debian-2
Debian:9 xerces-c 0 3.1.4+debian-2+deb9u2
Mageia:7 xerces-c 0 3.2.2-2.1.mga7
Red Hat:enterprise_linux:6::client xerces-c 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::client xerces-c-debuginfo 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::client xerces-c-devel 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::client xerces-c-doc 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::computenode xerces-c 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::computenode xerces-c-debuginfo 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::computenode xerces-c-devel 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::computenode xerces-c-doc 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::server xerces-c 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::server xerces-c-debuginfo 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::server xerces-c-devel 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::server xerces-c-doc 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::workstation xerces-c 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::workstation xerces-c-debuginfo 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::workstation xerces-c-devel 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:6::workstation xerces-c-doc 0 0:3.0.1-21.el6_10
Red Hat:enterprise_linux:7::client xerces-c 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::client xerces-c-debuginfo 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::client xerces-c-devel 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::client xerces-c-doc 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::computenode xerces-c 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::computenode xerces-c-debuginfo 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::computenode xerces-c-devel 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::computenode xerces-c-doc 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::server xerces-c 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::server xerces-c-debuginfo 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::server xerces-c-devel 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::server xerces-c-doc 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::workstation xerces-c 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::workstation xerces-c-debuginfo 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::workstation xerces-c-devel 0 0:3.1.1-10.el7_7
Red Hat:enterprise_linux:7::workstation xerces-c-doc 0 0:3.1.1-10.el7_7
SUSE:Enterprise Storage 6 xerces-c 0 3.1.4-3.6.1
SUSE:Enterprise Storage 7.1 xerces-c 0 3.1.4-150200.10.11.1
SUSE:Enterprise Storage 7.1 xerces-c 0 3.2.3-150300.3.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP1-ESPOS xerces-c 0 3.1.4-3.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS xerces-c 0 3.1.4-3.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS xerces-c 0 3.1.4-150200.10.11.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS xerces-c 0 3.1.4-150200.10.11.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS xerces-c 0 3.2.3-150300.3.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS xerces-c 0 3.2.3-150300.3.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS xerces-c 0 3.2.3-150300.3.6.1
SUSE:Linux Enterprise High Performance Computing 15-ESPOS xerces-c 0 3.1.4-3.6.1
SUSE:Linux Enterprise High Performance Computing 15-LTSS xerces-c 0 3.1.4-3.6.1
SUSE:Linux Enterprise Module for Basesystem 15 SP2 xerces-c 0 3.1.4-10.3.1
SUSE:Linux Enterprise Module for Basesystem 15 SP5 xerces-c 0 3.2.3-150300.3.6.1
SUSE:Linux Enterprise Server 12 SP5 xerces-c 0 3.1.1-13.6.1
SUSE:Linux Enterprise Server 12 SP5 xerces-c 0 3.1.1-13.12.1
SUSE:Linux Enterprise Server 15 SP1-BCL xerces-c 0 3.1.4-3.6.1
SUSE:Linux Enterprise Server 15 SP1-LTSS xerces-c 0 3.1.4-3.6.1
SUSE:Linux Enterprise Server 15 SP2-LTSS xerces-c 0 3.1.4-150200.10.11.1
SUSE:Linux Enterprise Server 15 SP3-LTSS xerces-c 0 3.1.4-150200.10.11.1
SUSE:Linux Enterprise Server 15 SP3-LTSS xerces-c 0 3.2.3-150300.3.6.1
SUSE:Linux Enterprise Server 15 SP4-LTSS xerces-c 0 3.2.3-150300.3.6.1
SUSE:Linux Enterprise Server 15-LTSS xerces-c 0 3.1.4-3.6.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 xerces-c 0 3.1.1-13.6.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 xerces-c 0 3.1.1-13.12.1
SUSE:Linux Enterprise Server for SAP Applications 15 xerces-c 0 3.1.4-3.6.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP1 xerces-c 0 3.1.4-3.6.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP2 xerces-c 0 3.1.4-150200.10.11.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP3 xerces-c 0 3.1.4-150200.10.11.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP3 xerces-c 0 3.2.3-150300.3.6.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP4 xerces-c 0 3.2.3-150300.3.6.1
SUSE:Linux Enterprise Software Development Kit 12 SP5 xerces-c 0 3.1.1-13.6.1
SUSE:Linux Enterprise Software Development Kit 12 SP5 xerces-c 0 3.1.1-13.12.1
SUSE:Manager Proxy 4.0 xerces-c 0 3.1.4-3.6.1
SUSE:Manager Proxy 4.3 xerces-c 0 3.2.3-150300.3.6.1
SUSE:Manager Retail Branch Server 4.0 xerces-c 0 3.1.4-3.6.1
SUSE:Manager Server 4.0 xerces-c 0 3.1.4-3.6.1
SUSE:Manager Server 4.3 xerces-c 0 3.2.3-150300.3.6.1
Ubuntu:20.04:LTS xerces-c 0 3.2.2+debian-1ubuntu0.1
Ubuntu:20.04:LTS xerces-c 0 3.2.2+debian-1ubuntu0.2
Ubuntu:22.04:LTS xerces-c 0 3.2.3+debian-3ubuntu0.1
Ubuntu:23.10 xerces-c 0 3.2.4+debian-1ubuntu0.23.10.1
Ubuntu:Pro:14.04:LTS xerces-c 0 3.1.1-5.1+deb8u4ubuntu0.1~esm1
Ubuntu:Pro:14.04:LTS xerces-c 0 3.1.1-5.1+deb8u4ubuntu0.1~esm2
Ubuntu:Pro:16.04:LTS xerces-c 0 3.1.3+debian-1ubuntu0.1~esm2
Ubuntu:Pro:16.04:LTS xerces-c 0 3.1.3+debian-1ubuntu0.1~esm3
Ubuntu:Pro:18.04:LTS xerces-c 0 3.2.0+debian-2ubuntu0.1~esm2
Ubuntu:Pro:18.04:LTS xerces-c 0 3.2.0+debian-2ubuntu0.1~esm3
Ubuntu:Pro:22.04:LTS xerces-c 0 3.2.3+debian-3ubuntu0.1
Ubuntu:Pro:22.04:LTS xerces-c 0 3.2.3+debian-3ubuntu0.1~esm1
openSUSE:Leap 15.2 xerces-c 0 3.1.4-lp152.5.3.1
openSUSE:Leap 15.3 xerces-c 0 3.1.4-10.3.1
openSUSE:Leap 15.5 xerces-c 0 3.2.3-150300.3.6.1
openSUSE:Tumbleweed xerces-c 0 3.2.5-1.1

Related vulnerabilities