
Kr00k भेद्यता (CVE-2019-15126) के लिए एक प्रायोगिक स्क्रिप्ट PoC
यह स्क्रिप्ट KR00K कमजोरी (CVE-2019-15126) का दोहन करने का एक सरल प्रयोग है, जो कमजोर उपकरणों (एक्सेस पॉइंट या क्लाइंट) में कुछ WPA2 CCMP डेटा को डिक्रिप्ट करने की अनुमति देता है। विशेष रूप से यह स्क्रिप्ट निम्नलिखित को जानते हुए WPA2 CCMP पैकेट्स के डिक्रिप्टेड डेटा को पुनर्प्राप्त करने का प्रयास करती है:
जहां:
यह PoC 2.4GHz WLANs पर WPA2 AES CCMP के साथ काम करता है। (नोट: केवल मेरे वायरलेस एडॉप्टर TPLINK TL-WN722N का उपयोग करके परीक्षण किया गया, लेकिन मुझे लगता है कि यह पैकेट इंजेक्ट करने में सक्षम अन्य वायरलेस एडॉप्टर के साथ भी काम करना चाहिए)।
Kr00k कमजोरी की जांच करने के लिए PoC को कई बार चलाना आवश्यक हो सकता है, क्योंकि (ऐसा लगता है कि) कमजोर उपकरणों पर हमेशा पर्याप्त मात्रा में डेटा बफर नहीं होता है (संकेत: स्ट्रीमिंग ऐप्स, वीडियो कॉल आदि का उपयोग करके देखें)।
इस स्क्रिप्ट को विशेषाधिकार प्राप्त उपयोगकर्ता के रूप में और वायरलेस इंटरफ़ेस को मॉनिटर मोड में कॉन्फ़िगर करके चलाया जाना चाहिए।
Python पैकेज "scapy" और "Cryptodome" की स्थापना आवश्यक है। स्क्रिप्ट Python 3 के साथ संगत है।
निम्नलिखित टूल के कुछ उपयोग उदाहरण दिए गए हैं। आपको AP और क्लाइंट के MAC पते डालने होंगे, साथ ही WPA2 CCMP WLAN का सही WiFi चैनल सेट करना और लक्ष्य पहचानकर्ता निर्दिष्ट करना भी महत्वपूर्ण है। अधिक विस्तृत सूची के लिए "--help" विकल्प का उपयोग करें।
# python3 kr00ker.py -i <interface-name> -b <BSSID> -c <MAC-client> -n <num-packets> -r <reason-id> -t <target-id> -w <wifi-channel> -d <delay>
नीचे कुछ उदाहरण दिए गए हैं।
इंटरफ़ेस wlan0mon का उपयोग करके क्लाइंट (-t client) डिवाइस के विरुद्ध Kr00k हमला लॉन्च करें, reason 3, delay 2 सेकंड, 5 डिस्सोसिएशन फ्रेम्स, wifi चैनल 2 में:
# python3 kr00ker.py -i wlan0mon -b XX:XX:XX:XX:XX:XX -c ZZ:ZZ:ZZ:ZZ:ZZ:ZZ -n 5 -r 3 -t client -w 2 -d 2
इंटरफ़ेस wlan0mon का उपयोग करके एक्सेस पॉइंट (-t ap) डिवाइस के विरुद्ध Kr00k हमला लॉन्च करें, डिफ़ॉल्ट reason 7, डिफ़ॉल्ट delay 4 सेकंड, डिफ़ॉल्ट 1 डिस्सोसिएशन फ्रेम, wifi चैनल 11 में:
$ sudo python3 kr00ker.py -i wlan0mon -b XX:XX:XX:XX:XX:XX -c ZZ:ZZ:ZZ:ZZ:ZZ:ZZ -t ap -w 11
जब लक्ष्य डिवाइस पर Kr00k कमजोरी सक्रिय होती है, तो डिक्रिप्टेड डेटा का हेक्सडंप आउटपुट में दिखाया जाता है, और यह डेटा एक pcap फ़ाइल में भी सहेजा जाता है।
KR00K कमजोरी वाले डिवाइस के लिए आउटपुट का एक उदाहरण नीचे दिया गया है:

kr00ker को Maurizio Siddu द्वारा विकसित किया गया था।
कॉपीराइट (c) 2020 kr00ker
यह प्रोग्राम मुफ़्त सॉफ़्टवेयर है: आप इसे पुनः वितरित और/या संशोधित कर सकते हैं GNU जनरल पब्लिक लाइसेंस की शर्तों के तहत जैसा कि फ्री सॉफ्टवेयर फाउंडेशन द्वारा प्रकाशित किया गया है, या तो लाइसेंस का संस्करण 3, या (आपकी पसंद के अनुसार) कोई बाद का संस्करण।
यह प्रोग्राम इस उम्मीद के साथ वितरित किया जाता है कि यह उपयोगी होगा, लेकिन बिना किसी वारंटी के; व्यापारिकता या किसी विशेष उद्देश्य के लिए उपयुक्तता की निहित वारंटी के बिना भी। अधिक जानकारी के लिए GNU जनरल पब्लिक लाइसेंस देखें।
आपको इस प्रोग्राम के साथ GNU जनरल पब्लिक लाइसेंस की एक प्रति प्राप्त होनी चाहिए। यदि नहीं, तो http://www.gnu.org/licenses/ देखें।