
Kentico CMS में CVE-2019-12102 अप्रमाणित फ़ाइल अपलोड भेद्यता के लिए स्वचालित स्कैनर। डोमेन की जाँच करता है, हैश पैरामीटर से सत्यापित करता है, और संभावित तथा पुष्टि किए गए कमजोर लक्ष्यों को आउटपुट करता है।
CVE-2019-12102 स्कैनर एक स्वचालित उपकरण है जो Kentico CMS संस्करण 11 से 12 में अप्रमाणित फ़ाइल अपलोड / फ़ाइल एक्सपोज़र भेद्यता को स्कैन करने के लिए है। यह भेद्यता एंडपॉइंट /cmsmodules/medialibrary/formcontrols/liveselectors/insertimageormedia/tabs_media.aspx पर अनुचित एक्सेस नियंत्रण के कारण होती है। उपकरण एंडपॉइंट से प्रतिक्रिया को सत्यापित करके जाँचता है कि कोई डोमेन असुरक्षित है या नहीं और परिणामों को संभावित रूप से असुरक्षित और पुष्टि असुरक्षित डोमेन के लिए अलग-अलग फ़ाइलों में सहेजता है।
CVE-2019-12102 भेद्यता हमलावरों को अनुमति देती है:
असुरक्षित एंडपॉइंट (/cmsmodules/medialibrary/formcontrols/liveselectors/insertimageormedia/tabs_media.aspx) तक बिना प्रमाणीकरण के पहुँचा जा सकता है यदि hash पैरामीटर ठीक से मान्य नहीं किया गया है। यदि URL /CMSMessages/accessdenied.aspx?resstring=dialogs.missinghashtext&hash= पर रीडायरेक्ट होता है, तो डोमेन को असुरक्षित माना जाता है।
Ctrl+C दबाने पर)।requests, coloramaइस रिपॉजिटरी को क्लोन करें:
git clone https://github.com/Egi08/CVE-2019-12102-Scanner.git
cd CVE-2019-12102-Scanner
निर्भरताएँ स्थापित करें:
pip install -r requirements.txt
(यदि requirements.txt फ़ाइल मौजूद नहीं है, तो इसे निम्नलिखित सामग्री के साथ बनाएँ):
requests
colorama
एक इनपुट फ़ाइल (domains.txt) तैयार करें जिसमें डोमेन की सूची हो, प्रति पंक्ति एक डोमेन। उदाहरण:
example.com
another-example.com
vulnerable-site.com
python cve_2019_12102_scanner.py -l <input_file> -p <potentially_output_file> -c <confirmed_output_file>
-l, --list: डोमेन की सूची वाली फ़ाइल का पथ (आवश्यक)।-p, --potentially: संभावित रूप से असुरक्षित डोमेन के लिए आउटपुट फ़ाइल (वैकल्पिक, डिफ़ॉल्ट: potentially_vulnerable.txt)।-c, --confirmed: पुष्टि असुरक्षित डोमेन के लिए आउटपुट फ़ाइल (वैकल्पिक, डिफ़ॉल्ट: confirmed_vulnerable.txt)।python cve_2019_12102_scanner.py -l domains.txt -p potentially_vulnerable.txt -c confirmed_vulnerable.txt
[*] Starting vulnerability scanner for CVE-2019-12102...
[*] Checking: http://example.com
[-] Not Vulnerable: http://example.com/cmsmodules/medialibrary/formcontrols/liveselectors/insertimageormedia/tabs_media.aspx
[*] Checking: http://vulnerable-site.com
[+] Potentially Vulnerable: http://vulnerable-site.com/cmsmodules/medialibrary/formcontrols/liveselectors/insertimageormedia/tabs_media.aspx
[+] Confirmed Vulnerable: http://vulnerable-site.com/CMSMessages/accessdenied.aspx?resstring=dialogs.missinghashtext&hash=13b203251094c6c51e1f7974b22e84538003b9c23754bc7b24a19891e6d476bf
[+] Results saved:
Potentially Vulnerable domains saved to potentially_vulnerable.txt
Confirmed Vulnerable domains saved to confirmed_vulnerable.txt
potentially_vulnerable.txt)http://vulnerable-site.com/cmsmodules/medialibrary/formcontrols/liveselectors/insertimageormedia/tabs_media.aspx
confirmed_vulnerable.txt)http://vulnerable-site.com/CMSMessages/accessdenied.aspx?resstring=dialogs.missinghashtext&hash=13b203251094c6c51e1f7974b22e84538003b9c23754bc7b24a19891e6d476bf
नैतिक परीक्षण:
टाइमआउट:
requests.get फ़ंक्शन में टाइमआउट मान समायोजित कर सकते हैं:
response = requests.get(full_url, timeout=20) # 20 सेकंड का टाइमआउट
त्रुटि प्रबंधन:
सुरक्षित बचत:
Ctrl+C दबाने पर)।हैश पैरामीटर:
test_hash वर्तमान में उदाहरण हैश (13b203251094c6c51e1f7974b22e84538003b9c23754bc7b24a19891e6d476bf) का उपयोग करता है। यदि आवश्यक हो तो इसे समायोजित करें।योगदान का स्वागत है! यदि आप योगदान देना चाहते हैं, तो कृपया:
git checkout -b feature/your-feature-name
git commit -m "Add your changes here"
git push origin feature/your-feature-name
यह प्रोजेक्ट MIT लाइसेंस के तहत लाइसेंस प्राप्त है। अधिक विवरण के लिए LICENSE फ़ाइल देखें।
इस दस्तावेज़ के साथ, आप स्क्रिप्ट को आसानी से GitHub पर अपलोड कर सकते हैं और दूसरों को उपकरण का उपयोग करने के लिए स्पष्ट निर्देश प्रदान कर सकते हैं।