
أداة فحص لاختبار ثغرات SaltStack CVE-2020-11651 وCVE-2020-11652.
ما هذا؟
أداة فحص لاختبار ثغرات SaltStack الأمنية CVE-2020-11651 و CVE-2020-11652.
تسمح الثغرات الأمنية للمهاجم الذي يمكنه الاتصال بمنفذ "خادم الطلبات" بتجاوز جميع ضوابط المصادقة والترخيص ونشر رسائل تحكم عشوائية، وقراءة وكتابة الملفات في أي مكان على نظام ملفات الخادم "الرئيسي" وسرقة المفتاح السري المستخدم للمصادقة على الخادم الرئيسي كـ root. التأثير هو تنفيذ كامل للأوامر عن بعد كـ root على كل من الخادم الرئيسي وجميع العملاء المتصلين به.
كيفية تثبيته.
تتطلب الأداة Python 2.7 أو Python 3. يمكن تثبيت المتطلبات الخارجية باستخدام pip أو easy_install. على سبيل المثال:
sudo pip install -r requirements.txt
كيفية استخدامه؟
توجد طريقتان للكشف مضمنتان:
الكشف عن الرمز المميز (-t)
يتم استدعاء هذه الطريقة باستخدام الخيار -t وتحاول قراءة رمز Salt root المميز عن طريق استغلال الثغرة. بينما هذه الطريقة مكتفية ذاتيًا، إلا أنها تعمل فقط على الإصدارات الأحدث، وبعض الإصدارات القديمة غير مدعومة.
تنفيذ التعليمات البرمجية عن بعد خارج النطاق (DNS) (-c)
تستغل هذه الطريقة الثغرة عن طريق تنفيذ أمر nslookup لتشغيل بحث DNS إلى خادم Appcheck Sentinel. ثم يستشير الماسح الضوئي خادم AppCheck DNS لتحديد ما إذا كان قد تم تنفيذه. لتحقيق ذلك، تحتاج الأداة إلى الاتصال بـ https://ptst.io/
ملاحظة: لمزيد من المعلومات حول Sentinel، راجع القسم [4] أدناه
سطر الأوامر الموصى به: salt_rce_scanner.py -r cidr_ip_range -t -c
[خيارات سطر الأوامر]
/ _ \ / __ \ | | |
/ /\ _ __ _ __ | / / |__ ___ | | __
| _ | ' | ' | | | ' \ / _ / __| |/ /
| | | | |) | |) | _/\ | | | / (| <
_| |/ ./| ./ _/| ||_|___||_
| | | |
|| |_|
ماسح SaltStack (CVE-2020-11651 & CVE-2020-11652)
المؤلف: Gary O'Leary-Steele
الإصدار: 0.1 Alpha
استخدم -h لرؤية خيارات الاستخدام
الوسائط الاختيارية: -h, --help عرض رسالة المساعدة هذه والخروج -r CIDR_RANGE المضيف الهدف أو نطاق CIDR للمسح -p PORT المنفذ الهدف (4506 افتراضيًا) -c تمكين اختبار حقن الأوامر عن بعد (DNS خارج النطاق إلى AppCheck Sentinel) -t تمكين فحص الكشف عن رمز root المميز -T THREADS الحد الأقصى للخيوط (الافتراضي 50) -o OUTPUT_FILE ملف الإخراج
[4] AppCheck Sentinel
= الخلفية =
تقليديًا، يتم اكتشاف عيوب أمان تطبيقات الويب عن طريق تعديل المدخلات المقدمة من العميل في محاولة لتشغيل استجابة محددة من الخادم. على سبيل المثال، غالبًا ما يتم اكتشاف عيوب حقن SQL عن طريق إرسال حمولات تتسبب في إرجاع توقيع بواسطة خادم قاعدة البيانات، وفي حالات أخرى، يتم تصميم الحمولات لتشغيل تأخير زمني محدد يمكن قياسه لاكتشاف العيب. في كل حالة، تستخدم هذه الطرق تقنيات داخل النطاق حيث يسلك كل من الهجوم والاستجابة نفس المسار مثل حركة مرور موقع الويب العادية وتؤدي إلى تأكيد فوري للثغرة الأمنية.
= الكشف خارج النطاق =
ومع ذلك، هناك حالات لا تكون فيها التقنيات داخل النطاق فعالة. على سبيل المثال، فكر في موقع تجارة إلكترونية يجمع الطلبات التي يتم مراجعتها لاحقًا عبر نظام معالجة الطلبات الخلفي. بينما سيكتشف AppCheck الثغرات الأمنية (داخل النطاق) داخل موقع التجارة الإلكترونية أثناء الفحص الروتيني، قد لا يتم تشغيل الثغرات الأمنية داخل نظام معالجة الطلبات الخلفي إلا عند الوصول إليها (بواسطة مستخدم أو عملية أخرى) لاحقًا.
تنشأ حالات شائعة أخرى عندما لا يوفر تشغيل الثغرة آلية موثوقة داخل النطاق لتأكيد الخلل. على سبيل المثال، قد يكون قياس أوقات استجابة الخادم غير موثوق به إذا كانت أوقات استجابة الخادم العادية غير منتظمة. في حالات أخرى، قد لا تؤثر الثغرة الأمنية على طريقة استجابة الخادم بغض النظر عما إذا تم استغلالها بنجاح أم لا.
للتغلب على هذه القيود، يطبق AppCheck نظام كشف خارج النطاق يسمى Sentinel.
Sentinel هو نظام مراقبة قائم على السحابة يستضيف خدمات DNS و SMTP و HTTP(s) و SMB مصممة خصيصًا والتي تعترض الاتصالات خارج النطاق التي يتم تشغيلها نتيجة لحمولة هجوم AppCheck.
أثناء الفحص، يرسل AppCheck حمولات مصممة خصيصًا لتشغيل اتصالات خارج النطاق عند تنفيذها بنجاح. ثم يكتشف Sentinel هذا التنفيذ ويحدث نتائج الفحص وفقًا لذلك. إحدى أكثر التقنيات شيوعًا هي استخدام رموز DNS المميزة المضمنة داخل الحمولة. حسب التصميم، يتم إعادة توجيه استعلامات DNS إلى خادم DNS الموثوق به لنطاق معين ليتم حلها. لذلك، حتى لو لم يُسمح للنظام المعرض للخطر بالوصول إلى الإنترنت، طالما أنه قادر على حل أسماء DNS، يمكنه التواصل مع Sentinel.