Documenting more than a year of research in XML technologies, this talk by Nicolas GrÃ©goire at Hack in The Box 2012 Amsterdam details security implications of the XML format and its processing practices.
Discussed targets range from browsers to enterprise-level security solutions and web-service back-ends. Several key technologies will be addressed: XML grammar aka DTD, homo-iconicity and self-contained dynamic SVG images, design and implementation vulnerabilities in XSLT and XPath engines, in-memory exploitation of Java-based XSLT engines, XML databases and more. PoC code has and will systematically be released for every (patched) vulnerability.
The goal of this presentation is to document and publicize state of the art attacks including:
- Data obfuscation in XML containers (Adobe, VLC, …)
- DTD manipulation used to read (possibly binary) files, steal hashes or generate XSS
- Dangerous extensions in newly studied XSLT and XQuery engines (Adobe, Oracle, XT, 4Suite, …)
- Grammar and mutation-based fuzzing of XPath and XSLT engines
- Bizarre combination of grammar, data, code and markup in a single XML file
- How to trigger XSLT code in security protocols (SAML, WS-Security, …)
- Advanced in-memory exploitation of Java based XSLT engines.