CVE-2017-9047 Information

Description

A buffer overflow was discovered in libxml2 20904-GITv2.9.4-16-g0741801. The function xmlSnprintfElementContent in valid.c is supposed to recursively dump the element content definition into a char buffer ‘buf’ of size ‘size’. The variable len is assigned strlen(buf). If the content-type is XML_ELEMENT_CONTENT_ELEMENT then (i) the content-prefix is appended to buf (if it actually fits) whereupon (ii) content-name is written to the buffer. However the check for whether the content-name actually fits also uses ’len’ rather than the updated buffer length strlen(buf). This allows us to write about \size\ many bytes beyond the allocated memory. This vulnerability causes programs that use libxml2 such as PHP to crash.

CVSS Vector

CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Reference

http://www.debian.org/security/2017/dsa-3952 http://www.openwall.com/lists/oss-security/2017/05/15/1 http://www.securityfocus.com/bid/98599 https://security.gentoo.org/glsa/201711-01

Attack Complexity

LOW

Privileges Required

NONE

User Interaction Required

NONE

Scope

NONE

Confidentiality Impact

UNCHANGED

Integrity Impact

NONE

Availability Impact

NONE

Base Score

HIGH

Base Severity

7.5

Share on: