
SaltStack सुरक्षा कमजोरियों CVE-2020-11651 और CVE-2020-11652 के परीक्षण के लिए स्कैनिंग उपकरण
यह क्या है?
SaltStack कमजोरियों CVE-2020-11651 और CVE-2020-11652 का परीक्षण करने के लिए स्कैनिंग टूल।
ये कमजोरियाँ एक हमलावर को, जो "रिक्वेस्ट सर्वर" पोर्ट से कनेक्ट हो सकता है, सभी प्रमाणीकरण और प्राधिकरण नियंत्रणों को बायपास करने और मनमाने नियंत्रण संदेश प्रकाशित करने, "मास्टर" सर्वर फ़ाइलसिस्टम पर कहीं भी फ़ाइलें पढ़ने और लिखने और मास्टर को रूट के रूप में प्रमाणित करने के लिए उपयोग की जाने वाली गुप्त कुंजी चुराने की अनुमति देती हैं। इसका प्रभाव मास्टर और उससे कनेक्ट होने वाले सभी मिनियन्स दोनों पर रूट के रूप में पूर्ण रिमोट कमांड निष्पादन है।
इसे कैसे स्थापित करें।
टूल को Python 2.7 या Python 3 की आवश्यकता है। बाहरी आवश्यकताओं को pip या easy_install के साथ स्थापित किया जा सकता है। उदाहरण के लिए:
sudo pip install -r requirements.txt
इसका उपयोग कैसे करें?
इसमें 2 पहचान विधियाँ शामिल हैं:
टोकन प्रकटीकरण (-t)
यह विधि -t विकल्प के साथ लागू की जाती है और दोष का फायदा उठाकर Salt रूट टोकन को पढ़ने का प्रयास करती है। जबकि यह विधि आत्मनिर्भर है, यह केवल नए संस्करणों पर काम करती है, कुछ पुराने संस्करण समर्थित नहीं हैं।
आउट-ऑफ-बैंड (DNS) के लिए रिमोट कोड निष्पादन (-c)
यह विधि Appcheck Sentinel सर्वर पर DNS लुकअप को ट्रिगर करने के लिए nslookup कमांड निष्पादित करके दोष का फायदा उठाती है। स्कैनर तब AppCheck DNS सर्वर से परामर्श करता है ताकि यह निर्धारित किया जा सके कि यह निष्पादित हुआ या नहीं। इसे प्राप्त करने के लिए टूल को https://ptst.io/ से कनेक्ट करने की आवश्यकता है।
नोट: सेंटिनल पर अधिक जानकारी के लिए नीचे अनुभाग [4] देखें
अनुशंसित कमांड लाइन: salt_rce_scanner.py -r cidr_ip_range -t -c
[कमांड लाइन विकल्प]
/ _ \ / __ \ | | |
/ /\ _ __ _ __ | / / |__ ___ | | __
| _ | ' | ' | | | ' \ / _ / __| |/ /
| | | | |) | |) | _/\ | | | / (| <
_| |/ ./| ./ _/| ||_|___||_
| | | |
|| |_|
SaltStack Scanner (CVE-2020-11651 & CVE-2020-11652)
Author: Gary O'Leary-Steele
Version: 0.1 Alpha
उपयोग विकल्पों को देखने के लिए -h का उपयोग करें
वैकल्पिक तर्क: -h, --help यह सहायता संदेश दिखाएं और बाहर निकलें -r CIDR_RANGE स्कैन करने के लिए लक्ष्य होस्ट या CIDR रेंज -p PORT लक्ष्य पोर्ट (डिफ़ॉल्ट रूप से 4506) -c रिमोट कमांड इंजेक्शन परीक्षण सक्षम करें (AppCheck Sentinel को आउट-ऑफ-बैंड DNS) -t रूट टोकन प्रकटीकरण जांच सक्षम करें -T THREADS अधिकतम थ्रेड्स (डिफ़ॉल्ट 50 है) -o OUTPUT_FILE आउटपुट फ़ाइल
AppCheck Sentinel
= पृष्ठभूमि =
परंपरागत रूप से, वेब एप्लिकेशन सुरक्षा दोषों का पता क्लाइंट द्वारा प्रदान किए गए इनपुट को संशोधित करके लगाया जाता है ताकि सर्वर से एक विशिष्ट प्रतिक्रिया ट्रिगर हो सके। उदाहरण के लिए, SQL इंजेक्शन दोषों का पता अक्सर ऐसे पेलोड सबमिट करके लगाया जाता है जो डेटाबेस सर्वर द्वारा एक हस्ताक्षर वापस करने का कारण बनते हैं, अन्य मामलों में, पेलोड को एक विशिष्ट समय देरी को ट्रिगर करने के लिए डिज़ाइन किया जाता है जिसे दोष का पता लगाने के लिए मापा जा सकता है। प्रत्येक मामले में, ये विधियाँ इन-बैंड तकनीकों का उपयोग करती हैं जहाँ हमला और प्रतिक्रिया दोनों नियमित वेबसाइट ट्रैफ़िक के समान पथ लेते हैं और भेद्यता की तत्काल पुष्टि करते हैं।
= आउट-ऑफ-बैंड पहचान =
हालांकि ऐसे मामले हैं जहाँ इन-बैंड तकनीकें प्रभावी नहीं होती हैं। उदाहरण के लिए, एक ई-कॉमर्स साइट पर विचार करें जो ऑर्डर एकत्र करती है जिन्हें बाद में बैक-एंड ऑर्डर प्रोसेसिंग सिस्टम के माध्यम से समीक्षा की जाती है। जबकि AppCheck एक नियमित स्कैन के दौरान ई-कॉमर्स साइट के भीतर कमजोरियों (इन-बैंड) का पता लगाएगा, बैक-एंड ऑर्डर प्रोसेसिंग सिस्टम के भीतर कमजोरियाँ तब तक ट्रिगर नहीं हो सकती हैं जब तक कि उन्हें बाद में (किसी अन्य उपयोगकर्ता या प्रक्रिया द्वारा) एक्सेस नहीं किया जाता है।
अन्य सामान्य मामले तब उत्पन्न होते हैं जब भेद्यता को ट्रिगर करने से दोष की पुष्टि करने के लिए एक विश्वसनीय इन-बैंड तंत्र प्रदान नहीं होता है। उदाहरण के लिए, सर्वर प्रतिक्रिया समय को मापना अविश्वसनीय हो सकता है यदि सामान्य सर्वर प्रतिक्रिया समय अनियमित हो। अन्य मामलों में भेद्यता इस बात पर कोई प्रभाव नहीं डाल सकती है कि सर्वर कैसे प्रतिक्रिया करता है, भले ही इसका सफलतापूर्वक फायदा उठाया गया हो या नहीं।
इन प्रतिबंधों को दूर करने के लिए, AppCheck ने सेंटिनल नामक एक आउट-ऑफ-बैंड पहचान प्रणाली लागू की है।
सेंटिनल एक क्लाउड-आधारित निगरानी प्रणाली है जो विशेष रूप से डिज़ाइन किए गए DNS, SMTP, HTTP(s) और SMB सेवाओं को होस्ट करती है जो AppCheck हमले के पेलोड के परिणामस्वरूप ट्रिगर हुए आउट-ऑफ-बैंड कनेक्शन को रोकती हैं।
स्कैन के दौरान, AppCheck विशेष रूप से तैयार किए गए पेलोड सबमिट करता है जिन्हें सफलतापूर्वक निष्पादित होने पर आउट-ऑफ-बैंड कनेक्शन को ट्रिगर करने के लिए डिज़ाइन किया गया है। सेंटिनल तब इस निष्पादन का पता लगाता है और तदनुसार स्कैन परिणामों को अपडेट करता है। सबसे आम तकनीकों में से एक पेलोड के भीतर एम्बेडेड DNS टोकन का उपयोग है। डिज़ाइन के अनुसार, DNS प्रश्नों को किसी दिए गए डोमेन के लिए आधिकारिक DNS सर्वर पर अग्रेषित किया जाता है ताकि उन्हें हल किया जा सके। इसलिए, भले ही कमजोर प्रणाली को इंटरनेट तक पहुंचने की अनुमति न हो, जब तक वह DNS नामों को हल करने में सक्षम है, वह सेंटिनल के साथ संवाद कर सकती है।