
रिमोट डेस्कटॉप गेटवे के लिए स्कैन करना (संभावित रूप से अपैच्ड CVE-2020-0609 और CVE-2020-0610)
स्कैनर के दो मोड हैं:
vuln स्कैन कोड का उपयोग करता है https://github.com/MalwareTech/RDGScanner से
मेमोरी भ्रष्टाचार कमजोरियों के लिए स्कैनिंग खतरनाक है और संभावित रूप से सिस्टम को क्रैश कर सकती है। हालांकि इस उपकरण को क्रैश होने से बचाने के लिए डिज़ाइन किया गया है, स्थिरता की 100% गारंटी नहीं दी जा सकती। अपने जोखिम पर उपयोग करें और केवल उन सिस्टम को स्कैन करें जिनके परीक्षण की अनुमति आपके पास है।
स्कैनर मल्टीथ्रेडेड है और CIDR नेटमास्क वाली फाइलों को पार्स कर सकता है, लेकिन बड़े नेटवर्क के लिए आप अभी भी vuln स्कैनिंग से पहले खुले UDP 3391 पोर्ट खोजने के लिए nmap का उपयोग करना चाह सकते हैं। यह अभी तक डिफ़ॉल्ट रूप से काम नहीं करता है। आपको nmap-payloads (आमतौर पर /usr/share/nmap में, PR आ रहा है) में DTLS अनुभाग में 3391 जोड़ना होगा और उदाहरण के लिए स्कैन करें:
nmap -Pn -p 3391 -sU -oA rdg_scan_yyyymmdd 10.0.0.0/24 (Needs root permissions)
vuln स्कैनिंग के लिए डिफ़ॉल्ट पोर्ट UDP 3391 है, --port से बदलें।
सभी RD गेटवे के पास फ़ायरवॉल पर UDP 3391 सक्रिय या खुला नहीं है, शायद इसलिए क्योंकि यह केवल HTTPS के साथ भी काम करता है और एडमिन ने दस्तावेज़ीकरण पढ़ने की जहमत नहीं उठाई। यदि आप उन RD गेटवे को भी खोजना चाहते हैं, तो वेबचेक का उपयोग करें (शायद आप एक ऐसे सर्वर से डरते हैं जिसमें CVE-2020-0609 अनपैच है और ऑपरेटर 6 महीने में UDP 3391 खोल देंगे क्योंकि "उच्च विलंबता नेटवर्क पर बेहतर प्रदर्शन")।
HTTPS का उपयोग करके स्कैन करने के लिए, पैरामीटर --webcheck या -w का उपयोग करें वेबचेक के लिए डिफ़ॉल्ट पोर्ट TCP 443 है, --port से बदलें।
ध्यान रखें, कि उदाहरण के लिए एक हालिया Debian/Kali में डिफ़ॉल्ट openssl सेटिंग्स हैं, जो python, curl, ... सहित किसी भी प्रोग्राम को TLSv1.2 से कम सहित असुरक्षित SSL कार्यान्वयन से कनेक्शन बनाने से रोकती हैं। यह घरेलू बैंकिंग के लिए उचित है लेकिन भेद्यता स्कैनिंग के लिए नहीं, जहाँ आप उस पुराने होस्ट को भी ढूंढना चाहते हैं जो अभी भी SSLv3 का उपयोग कर रहा है। मुझे इसे /etc/ssl/openssl.cnf में बदलने से बेहतर कोई समाधान नहीं मिला। [system_default_sect] अनुभाग ढूंढें/सम्मिलित करें और इसे इसमें बदलें:
[system_default_sect]
MinProtocol = SSLv3
CipherString = DEFAULT@SECLEVEL=1
संवेदनशील चीजों के लिए इसे वापस बदलना याद रखें! यदि आप कोई ऐसा समाधान जानते हैं जो केवल पायथन स्क्रिप्ट के लिए ये सेटिंग्स बदलता है, तो कृपया मुझे बताएं ;)
स्कैनिंग के दौरान दिखाई देने वाली SSL त्रुटियाँ IPS सिस्टम से हो सकती हैं।
स्कैनर पार्स कर सकता है:
Example: python3 rdg_scanner_cve-2020-0609.py 192.168.1.1/24 # vuln scan for cve-2020-0609 on UDP 3391
Example2 python3 rdg_scanner_cve-2020-0609.py 192.168.1.1/24 --webcheck # check webpage for RD gateway
Example3: python3 rdg_scanner_cve-2020-0609.py 192.168.1.1
Example4: python3 rdg_scanner_cve-2020-0609.py fakewebsiteaddress.com
Example5: python3 rdg_scanner_cve-2020-0609.py as15169
Example6: python3 rdg_scanner_cve-2020-0609.py file:hostfile.txt
usage: rdg_scanner_cve-2020-0609.py [-h] [--port PORT] [--webcheck]
[--verbose]
target
No installation required.
Debian/Kali needs: apt-get install python3-netaddr
TODO: