libxslt heap overflow

Risk: High
Local: No
Remote: Yes
CWE: CWE-119

CVSS Base Score: 7.5/10
Impact Subscore: 6.4/10
Exploitability Subscore: 10/10
Exploit range: Remote
Attack complexity: Low
Authentication: No required
Confidentiality impact: Partial
Integrity impact: Partial
Availability impact: Partial

2008/07/31 #2008-009 libxslt heap overflow Description: The libexslt library bundled with libxslt is affected by a heap-based buffer overflow which can lead to arbitrary code execution. The vulnerability is present in the rc4 encryption/decryption functions. An arbitrary length string, passed as an argument in the XSL input, is incorrectly copied over a padding variable which is previously allocated with a fixed size of 128bit (RC4_KEY_LENGTH). Aside from the heap overflow other bugs affect the code, the length of the plaintext string argument is used for computing the key length rather than the actual key and the zero-padding of the key is incorrectly computed. A simple XML file with excessively long input can be crafted for triggering the heap overflow. The following patch fixes the issue: Affected version: libxslt >= 1.1.8, <= 1.1.24 Fixed version: libxslt, N/A Credit: vulnerability report and PoC code received from Chris Evans <scarybeasts [at] gmail [dot] com>, Google Security Team. CVE: CVE-2008-2935 Timeline: 2008-07-03: vulnerability report received 2008-07-08: contacted libxslt maintainer 2008-07-10: maintainer provides patch 2008-07-17: patch fixes finalized per reporter feedback 2008-07-18: contacted affected vendors 2008-07-31: advisory release References: Links: Permalink: -- Andrea Barisani | Founder & Project Coordinator oCERT | Open Source Computer Emergency Response Team <lcars (at) ocert (dot) org [email concealed]> 0x864C9B9E 0A76 074A 02CD E989 CE7F AC3F DA47 578E 864C 9B9E "Pluralitas non est ponenda sine necessitate"


Vote for this issue:


Thanks for you vote!


Thanks for you comment!
Your message is in quarantine 48 hours.

Comment it here.

(*) - required fields.  
{{ x.nick }} | Date: {{ x.ux * 1000 | date:'yyyy-MM-dd' }} {{ x.ux * 1000 | date:'HH:mm' }} CET+1
{{ x.comment }}

Copyright 2021,


Back to Top