
ब्लैक-बॉक्स भेद्यता स्कैनर और CVE-2020-6287 (RECON) के लिए समझौता-सूचक विश्लेषक, SAP NetWeaver Java अनुप्रयोगों में तीव्र जोखिम मूल्यांकन और लॉग-आधारित फोरेंसिक जांच को सक्षम करता है।
RECON (Remotely Exploitable Code On NetWeaver) एक गंभीर (CVSSv3 10) भेद्यता है जो SAP NetWeaver Java स्टैक के शीर्ष पर चलने वाले कई SAP व्यावसायिक और तकनीकी अनुप्रयोगों को प्रभावित करती है। यह भेद्यता Onapsis Research Labs द्वारा खोजी गई थी, जिसने SAP के साथ मिलकर 14 जुलाई, 2020 को एक पैच विकसित और जारी किया। इस मुद्दे की गंभीरता को देखते हुए, यू.एस. DHS CISA, BSI CERT-Bund और कई अन्य सरकारी एजेंसियों ने अलर्ट जारी कर SAP ग्राहकों से कमजोर अनुप्रयोगों की सुरक्षा करने का आग्रह किया, विशेष रूप से इंटरनेट-फेसिंग वाले।
जंगली में RECON को लक्षित करने वाली महत्वपूर्ण दुर्भावनापूर्ण गतिविधि को देखने के बाद, और कमजोर इंटरनेट-फेसिंग SAP अनुप्रयोगों की संख्या तथा इन प्रणालियों द्वारा आमतौर पर समर्थित डेटा और प्रक्रियाओं की संवेदनशीलता को ध्यान में रखते हुए, Onapsis ने इस ओपन-सोर्स टूल को जल्द से जल्द विकसित और जारी करने का निर्णय लिया। इसका उद्देश्य सभी SAP ग्राहकों की सूचना सुरक्षा और प्रशासन टीमों को उनके मिशन-महत्वपूर्ण अनुप्रयोगों की सुरक्षा में मदद करना है, जिससे वे अपने जोखिम का आकलन कर सकें और मूल्यांकन कर सकें कि क्या उनके SAP सिस्टम से छेड़छाड़ की गई है। हम इस टूल को आगे बढ़ाने की योजना बना रहे हैं क्योंकि हमारे उत्पादों, अनुसंधान टीम और व्यापक समुदाय द्वारा नई खतरा खुफिया और फोरेंसिक डेटा कैप्चर किया जाता है।
यह टूल निम्नलिखित कर सकता है:
यह टूल निम्नलिखित नहीं कर सकता:
हालांकि, इस टूल की कई ज्ञात सीमाएं हैं और इसके उपयोग को यह गारंटी नहीं माना जाना चाहिए कि SAP अनुप्रयोग RECON (और अन्य भेद्यताओं) के संपर्क में नहीं हैं या उनसे छेड़छाड़ नहीं की गई है। कई स्थितियां मूल्यांकन किए गए अनुप्रयोगों और/या लॉग फ़ाइलों की स्थिति को प्रभावित कर सकती हैं, जिसके परिणामस्वरूप झूठी सकारात्मक और/या झूठी नकारात्मक स्थिति हो सकती है।
यदि IoC की पहचान की जाती है, तो यह दृढ़ता से अनुशंसा की जाती है कि आप संभावित समझौते के दायरे और सीमा को निर्धारित करने के लिए मूल्यांकन किए गए सिस्टम (और आपस में जुड़े हुए सिस्टम) की गहन फोरेंसिक जांच करें।
यह टूल "जैसा है" और बिना वारंटी के प्रदान किया जाता है।
वैकल्पिक ऑनलाइन संस्करण
इंटरनेट-फेसिंग सिस्टम के लिए RECON के विरुद्ध तीव्र मूल्यांकन में SAP ग्राहकों की सहायता करने के लिए, हमने एक मुफ्त ऑनलाइन संस्करण भी विकसित किया है जो दोनों उपयोग मामलों का समर्थन करता है। यदि पसंद हो, तो आप इस सेवा का उपयोग https://recon.onapsis.com पर कर सकते हैं।
स्क्रिप्ट Python 3 में विकसित की गई हैं और आपको निम्नलिखित निर्भरताओं को स्थापित करने की आवश्यकता है:
# python3 -m venv .venv
# . .venv/bin/activate
# pip install -r requirements.txt
एक बार निर्भरताएँ स्थापित करने के बाद, आप Python का उपयोग करके दोनों स्क्रिप्ट चला सकते हैं और कमांड लाइन से सहायता प्राप्त कर सकते हैं।
भेद्यता का पता लगाने के लिए, निम्नलिखित स्क्रिप्ट निष्पादित करें:
# python3 RECON_CVE-2020-6287_vuln_scanner.py -h
आपको स्क्रिप्ट को ऐसे सिस्टम पर निष्पादित करना होगा जिसका नेटवर्क कनेक्शन विश्लेषण किए जा रहे लक्ष्य SAP एप्लिकेशन के साथ हो। SAP NetWeaver JAVA एप्लिकेशन सर्वर का HTTP(s) पोर्ट पहुंच योग्य होना चाहिए (अर्थात, एक इंस्टेंस 00 के लिए, यह HTTP के लिए 50000 होगा, लेकिन यह प्रॉक्सी/लोड बैलेंसर के माध्यम से उजागर हो सकता है और/या 80 या 443 जैसे अन्य TCP पोर्ट के माध्यम से सुलभ हो सकता है)।
RECON भेद्यता के परीक्षण के लिए पैरामीटर के रूप में एक मान्य URL शामिल करने के लिए आपको -u पैरामीटर का उपयोग करना चाहिए:
# python3 RECON_CVE-2020-6287_vuln_scanner.py -u http://myinternalportal.mycompany.com:50000/
आप -f पैरामीटर का उपयोग करके विश्लेषण किए जाने वाले सभी URL वाली फ़ाइल प्रदान करके कई URL का आकलन भी कर सकते हैं:
# python3 RECON_CVE-2020-6287_vuln_scanner.py -f file_with_urls
मूल्यांकन का आउटपुट stdout पर भेजा जाता है। इसे निम्नलिखित तरीके से एक फ़ाइल में डंप करना संभव है:
# python3 RECON_CVE-2020-6287_vuln_scanner.py -f file_with_urls >> results
समझौता संकेतकों का पता लगाने के लिए, निम्नलिखित स्क्रिप्ट निष्पादित करें:
python3 RECON_CVE-2020-6287_ioc_scanner.py -h
स्क्रिप्ट एक फ़ाइल नाम प्राप्त करता है और LM CTC एप्लिकेशन के उपयोग के आधार पर IoC खोजने के लिए फ़ाइल नाम को पार्स करता है। निम्नलिखित प्रकार की फ़ाइलें स्वीकार की जाती हैं:
applications_xx.y.log
आवश्यक फ़ाइलें निम्नलिखित फ़ोल्डर में स्थित हैं:
Linux: /usr/sap/<SID>/<INSTANCE>/j2ee/cluster/server<X>/log/
Windows: \usr\sap\<SID>\<INSTANCE>\j2ee\cluster\server<X>\log\
responses_xx.y.trc
डिफ़ॉल्ट स्वरूप कॉन्फ़िगरेशन का उपयोग करना। यदि मानक लॉग स्वरूप कॉन्फ़िगरेशन में परिवर्तन किए गए थे, तो पार्सिंग विफल हो सकती है। उस स्थिति में, नए स्वरूप को प्रतिबिंबित करने के लिए आंतरिक regex को मैन्युअल रूप से समायोजित किया जाना चाहिए। आवश्यक फ़ाइलें निम्नलिखित फ़ोल्डर में स्थित हैं:
Linux: /usr/sap/<SID>/<INSTANCE>/j2ee/cluster/server<X>/log/system/httpaccess/
Windows: \usr\sap\<SID>\<INSTANCE>\j2ee\cluster\server<X>\log\system\httpaccess\
आप विशिष्ट फ़ाइलों का विश्लेषण करने के लिए -f पैरामीटर के साथ स्क्रिप्ट निष्पादित कर सकते हैं:
python3 RECON_CVE-2020-6287_ioc_scanner.py -f path_to_logfile
आप एक ही समय में कई फ़ाइलों के विरुद्ध स्क्रिप्ट चलाने के लिए bash स्क्रिप्ट का उपयोग कर सकते हैं। उदाहरण के लिए, यदि एकाधिक लॉग वाली निर्देशिका /tmp/sap_RECON_logs/ में मौजूद है, तो निष्पादन इस प्रकार दिखेगा:
path_to_log_folder="/tmp/sap_RECON_logs/";for log_file in `ls $path_to_log_folder`; do python RECON_CVE-2020-6287_ioc_scanner.py -f $path_to_log_folder/$log_file -o csv; done
Onapsis के साइबर सुरक्षा विशेषज्ञों की टीम किसी भी अनुवर्ती प्रश्नों का उत्तर देने या पहचाने गए संकेतकों के आसपास दृश्यता प्राप्त करने में आपकी और सहायता करने के लिए उपलब्ध है। आप Onapsis से [email protected] पर संपर्क कर सकते हैं।