Cloudanix VulnDB

CVE-2014-3660

None

CVSS

—

EPSS

3.8%

Published

Nov 4, 2014

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A problem in the way certain programs read data files can let someone send a specially made file that makes the program use up all the computer's processing power and stop working properly.

Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
Trivial
Impact
Denial Of Service
Component
Library
Class
Denial of service
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The parser fails to honor disabled entity substitution, permitting unbounded recursive expansion of nested entities in XML input that exhausts CPU resources.

Why it matters to the business

Systems handling untrusted XML input can be forced offline or slowed to unusability, disrupting any services that rely on those systems until the load is removed.

How an attack unfolds

An attacker supplies a specially crafted XML document containing many nested entity references to any application that parses it with the vulnerable library, triggering repeated expansion and high CPU usage until the process or host becomes unresponsive.

How to fix it

Upgrade the affected packages to the listed fixed versions: openssh (Debian:11) to 1:6.9p1-1 or newer, openssh (Debian:12) to 1:6.9p1-1 or newer, openssh (Debian:13) to 1:6.9p1-1 or newer, and openssh (Ubuntu:14.04:LTS) to 1:6.6p1-2ubuntu2.2 or newer. Where direct upgrades are unavailable, disable XML entity expansion or implement strict input size limits before parsing.

How to confirm the fix worked

Confirm the installed package version matches or exceeds the fixed version for each distribution, then test that a sample billion-laughs XML document is rejected or produces bounded resource usage.

Typical attack path

  1. Identify a network-accessible service that accepts or processes XML documents
  2. Craft an XML payload containing a large number of nested entity references
  3. Deliver the payload to the target service
  4. Observe resource exhaustion and service degradation or outage

How to detect it

Review application and system logs for sudden spikes in CPU usage correlated with XML parsing activity; examine any captured XML payloads for unusually deep or repetitive entity declarations.

What your security team should do

  • Apply the listed package updates immediately on all affected Debian and Ubuntu systems
  • Scan for any custom applications that embed or statically link the vulnerable parser and update them
  • Add XML input validation and size limits as a defense-in-depth control
  • Monitor CPU and process metrics on services that parse XML for anomalous sustained load

The record

parser.c in libxml2 before 2.9.2 does not properly prevent entity expansion even when entity substitution has been disabled, which allows context-dependent attackers to cause a denial of service (CPU consumption) via a crafted XML document containing a large number of nested entity references, a variant of the "billion laughs" attack.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 libxml2 0 2.9.2+dfsg1-1
Debian:12 libxml2 0 2.9.2+dfsg1-1
Debian:13 libxml2 0 2.9.2+dfsg1-1
Debian:6.0 libxml2 0 2.7.8.dfsg-2+squeeze11
Debian:6.0 libxml2 0 2.7.8.dfsg-2+squeeze10
Debian:7 libxml2 0 2.8.0+dfsg1-7+wheezy3
Debian:7 libxml2 0 2.8.0+dfsg1-7+wheezy2
Mageia:3 libxml2 0 2.9.0-5.4.mga3
Mageia:4 libxml2 0 2.9.1-2.2.mga4
Red Hat:enterprise_linux:5::client libxml2 0 0:2.6.26-2.1.25.el5_11
Red Hat:enterprise_linux:5::client libxml2-debuginfo 0 0:2.6.26-2.1.25.el5_11
Red Hat:enterprise_linux:5::client libxml2-devel 0 0:2.6.26-2.1.25.el5_11
Red Hat:enterprise_linux:5::client libxml2-python 0 0:2.6.26-2.1.25.el5_11
Red Hat:enterprise_linux:5::client_workstation libxml2 0 0:2.6.26-2.1.25.el5_11
Red Hat:enterprise_linux:5::client_workstation libxml2-debuginfo 0 0:2.6.26-2.1.25.el5_11
Red Hat:enterprise_linux:5::client_workstation libxml2-devel 0 0:2.6.26-2.1.25.el5_11
Red Hat:enterprise_linux:5::client_workstation libxml2-python 0 0:2.6.26-2.1.25.el5_11
Red Hat:enterprise_linux:5::server libxml2 0 0:2.6.26-2.1.25.el5_11
Red Hat:enterprise_linux:5::server libxml2-debuginfo 0 0:2.6.26-2.1.25.el5_11
Red Hat:enterprise_linux:5::server libxml2-devel 0 0:2.6.26-2.1.25.el5_11
Red Hat:enterprise_linux:5::server libxml2-python 0 0:2.6.26-2.1.25.el5_11
Red Hat:enterprise_linux:6::client libxml2 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::client libxml2-debuginfo 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::client libxml2-devel 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::client libxml2-python 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::client libxml2-static 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::computenode libxml2 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::computenode libxml2-debuginfo 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::computenode libxml2-devel 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::computenode libxml2-python 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::computenode libxml2-static 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::server libxml2 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::server libxml2-debuginfo 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::server libxml2-devel 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::server libxml2-python 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::server libxml2-static 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::workstation libxml2 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::workstation libxml2-debuginfo 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::workstation libxml2-devel 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::workstation libxml2-python 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:6::workstation libxml2-static 0 0:2.7.6-17.el6_6.1
Red Hat:enterprise_linux:7::client libxml2 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::client libxml2-debuginfo 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::client libxml2-devel 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::client libxml2-python 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::client libxml2-static 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::computenode libxml2 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::computenode libxml2-debuginfo 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::computenode libxml2-devel 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::computenode libxml2-python 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::computenode libxml2-static 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::server libxml2 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::server libxml2-debuginfo 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::server libxml2-devel 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::server libxml2-python 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::server libxml2-static 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::workstation libxml2 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::workstation libxml2-debuginfo 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::workstation libxml2-devel 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::workstation libxml2-python 0 0:2.9.1-5.el7_0.1
Red Hat:enterprise_linux:7::workstation libxml2-static 0 0:2.9.1-5.el7_0.1
Ubuntu:14.04:LTS libxml2 0 2.9.1+dfsg1-3ubuntu4.4
nuget libxml2 2.0.0 No fix
openSUSE:Tumbleweed libxml2 0 2.9.4-1.22

Related vulnerabilities