Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
assless-chaps — NT हैश के डेटाबेस का उपयोग करके MSCHAPv2 चैलेंज/रेस्पॉन्स को जल्दी क्रैक करें | Kitploit
उपकरण/GitHubGitHub/sensepost/assless-chaps
पासवर्ड क्रैकिंगवाई-फाई ऑडिटिंगहैश विश्लेषणक्रिप्टोग्राफीपेनिट्रेशन टेस्टिंग
GitHubsensepost/assless-chaps

assless-chaps

NT हैश के डेटाबेस का उपयोग करके MSCHAPv2 चैलेंज/रेस्पॉन्स को जल्दी क्रैक करें

रिपॉजिटरी देखें
1411927 दिन पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

assless-chaps

MSCHAPv2/NTLMv1 चैलेंज/प्रतिक्रियाओं को NT हैश के डेटाबेस का उपयोग करके तेज़ी से क्रैक करें

परिचय

Assless CHAPs एक कुशल तरीका है जो MSCHAPv2/NTLMv1 एक्सचेंज में उपयोग किए गए NT हैश को पुनर्प्राप्त करने के लिए है, यदि आपके पास चैलेंज और प्रतिक्रिया है (जैसे WiFi EAP WPE हमले से)।

इसके लिए NT हैश के डेटाबेस की आवश्यकता है। मौजूदा सूचियों से या हैशकैट और वर्डलिस्ट/नियमों का उपयोग करके इसे बनाने के निर्देश नीचे दिए गए हैं। मैंने SecLists से एक नमूना डेटाबेस शामिल किया है। इसे अनज़िप करने के लिए आपको bunzip की आवश्यकता होगी।

तकनीक

MSCHAPv2 एक्सचेंज में स्पष्ट-पाठ पासवर्ड को "क्रैक" करने की आवश्यकता नहीं है, बल्कि हमें केवल उपयोग किए गए NThash की आवश्यकता है।

MSCHAPv2 NThash को तीन भागों में विभाजित करता है, और प्रत्येक भाग को समान चैलेंज (पीयर और प्रमाणक चैलेंज से प्राप्त) को DES एन्क्रिप्ट करने के लिए अलग-अलग कुंजियों के रूप में उपयोग करता है। NTHash दो 7-बाइट कुंजियों और एक 2-बाइट कुंजी में विभाजित होता है। इसका मतलब है कि अंतिम कुंजी को आवश्यक लंबाई की कुंजी बनाने के लिए NULL से पैड किया जाता है। DES ऑपरेशन की दक्षता और 65,535 की कुंजीस्थान के कारण इसे तेज़ी से ब्रूट फोर्स किया जा सकता है। एक बार जब हमारे पास वे दो बाइट होते हैं, तो हम अपने डेटाबेस में उन दो बाइटों के साथ समाप्त होने वाले सभी NThashes को देख सकते हैं। यह जांचने के लिए संभावित हैश का एक बहुत छोटा सेट प्रदान करता है।

यह स्पेस बनाम समय ट्रेडऑफ का एक रूप है, जो रेनबो टेबल के समान है। यह हैश शकिंग का भी एक रूप है।

प्रस्तुति

इसे पहली बार Defcon 29 के RF Hacking Village में प्रस्तुत किया गया था। स्लाइड्स इस रिपॉजिटरी में शामिल हैं।

गति

यहाँ तीन नमूना चैलेंज/प्रतिक्रिया और तीन अलग-अलग वर्डलिस्ट (एक छोटी निजी, rockyou, और Have I Been Pwned सूची) के लिए तुलना दी गई है। ये मेरे Macbook Pro 2016 पर किए गए थे। हैशकैट इस हैश शकिंग कर्नेल और दो बिल्ट-इन GPUs का उपयोग कर रहा है, और एक शुद्ध (pure) बनाम ऑप्टिमाइज़्ड कर्नेल (क्योंकि बाद वाला अभी मौजूद नहीं है)। Hash3 सूचियों में नहीं है ताकि सबसे खराब स्थिति का अनुकरण किया जा सके। मैं पहली बार चलाने पर हैशकैट द्वारा डिक्शनरी कैश बनाने में लगने वाले समय को शामिल नहीं कर रहा हूँ।

Hash1

छोटी हैशलिस्ट:

root@kitploit:~
hashcat 0.50s user 0.27s system 55% cpu 1.405 total (8597.8 kH/s)
assless 0.05s user 0.00s system 294% cpu 0.018 total

Rockyou हैशलिस्ट:

root@kitploit:~
hashcat 2.67s user 0.51s system 93% cpu 3.413 total
assless 0.05s user 0.01s system 281% cpu 0.021 total

HIBP हैशलिस्ट:

root@kitploit:~
hashcat 59.97s user 11.72s system 136% cpu 52.603 total (5620.6 kH/s)
assless 0.05s user 0.00s system 292% cpu 0.018 total

Hash 2

छोटी हैशलिस्ट:

root@kitploit:~
hashcat 0.51s user 0.27s system 55% cpu 1.409 total (8704.7 kH/s)
assless 0.03s user 0.00s system 248% cpu 0.012 total

Rockyou हैशलिस्ट:

root@kitploit:~
hashcat 2.20s user 0.46s system 110% cpu 2.409 total (5798.4 kH/s)
assless 0.03s user 0.00s system 231% cpu 0.015 total

HIBP हैशलिस्ट:

root@kitploit:~
hashcat 65.37s user 12.74s system 135% cpu 57.712 total (5768.7 kH/s)
assless 0.03s user 0.00s system 249% cpu 0.013 total

Hash 3

Hash 3 किसी भी हैशलिस्ट में मौजूद नहीं है ताकि सबसे खराब लुकअप प्रदर्शन का अनुकरण किया जा सके।

छोटी हैशलिस्ट:

root@kitploit:~
hashcat 0.67s user 0.34s system 66% cpu 1.526 total (7550.1 kH/s)
assless 0.02s user 0.00s system 211% cpu 0.012 total

Rockyou हैशलिस्ट:

root@kitploit:~
hashcat 2.71s user 0.52s system 94% cpu 3.415 total (5685.4 kH/s)
assless 0.02s user 0.01s system 181% cpu 0.014 total

HIBP हैशलिस्ट:

root@kitploit:~
hashcat 125.19s user 27.62s system 139% cpu 1:49.75 total (5634.9 kH/s)
assless 0.06s user 0.03s system 115% cpu 0.075 total

इंस्टॉल करना

Rust संस्करण के लिए SQLite 3.6.8 या नए की आवश्यकता होगी।

Python संस्करण के लिए python3, sqlite3 और pycryptodome की आवश्यकता है।

डेटाबेस निर्माण उपयोगिता के लिए python3 और sqlite3 CLI की आवश्यकता है।

कंपाइल करना

यह केवल Rust संस्करण पर लागू होता है। आपको cargo की आवश्यकता होगी।

Cargo इंस्टॉल होने पर, बस assless-chaps-rs निर्देशिका में जाएँ और इसे इसके साथ बनाएँ: cargo build --release

परिणामी बाइनरी target/release/ निर्देशिका में होगी।

उपयोग

Assless को चैलेंज, प्रतिक्रिया और NThashes के डेटाबेस की आवश्यकता होती है। वैकल्पिक रूप से, Python संस्करण बंडल किए गए ऑप्टिमाइज़्ड दो-बाइट लुकअप फ़ाइल का उपयोग कर सकता है। सबसे सरल उपयोग इस प्रकार दिखता है:

./assless-chaps <Challenge> <Response> <hashes.db>

उदाहरण के लिए:

./assless-chaps 5d79b2a85966d347 556fdda5f67d2b746ca3315fd8b93adcab5c792790a92e87 rockyou.db

आउटपुट इस प्रकार दिखना चाहिए:

root@kitploit:~
[-] Two byte lookup file not provided, will brute force instead.
[+] Found in 22636 tries: 586c
[-] Found 222 hashes ending in 586c
[+] Found hash: 8846f7eaee8fb1
[-] Found after 186 hashes.
[+] Found hash: 17ad06bdd830b7
[+] Full hash: 8846f7eaee8fb117ad06bdd830b7586c

अंतिम पूर्ण हैश 8846f7eaee8fb117ad06bdd830b7586c password के लिए NT हैश है।

दो-बाइट लुकअप - केवल Python

मैंने पासवर्ड के एक बड़े कॉर्पस में सबसे प्रचलित के अनुसार सभी 65,535 संभावित दो-बाइट मानों की एक सूची बनाने में कुछ समय बिताया। यह फ़ाइल twobytes के रूप में शामिल है। आप इसे assless के चौथे तर्क के रूप में पास कर सकते हैं।

यह आमतौर पर DES के कुछ राउंड बचाता है, लेकिन गति में बड़ा अंतर नहीं लाता है। यदि आप कई हैश कर रहे हैं तो यह मददगार हो सकता है।

python3 assless-chaps.py 5d79b2a85966d347 556fdda5f67d2b746ca3315fd8b93adcab5c792790a92e87 rockyou.db twobytes

root@kitploit:~
[+] Found in 65533 tries: 586c
[-] Found 222 hashes ending in 586c
[+] Found hash: 8846f7eaee8fb1
[-] Found after 186 hashes.
[+] Found hash: 17ad06bdd830b7
[+] Full hash: 8846f7eaee8fb117ad06bdd830b7586c

अपना स्वयं का हैश शब्दकोश बनाना

mksqlitedb.py फ़ाइल CSV हैश फ़ाइल को डेटाबेस में बदलने में सहायता करेगी।

python3 mksqlitedb.py <database name> <csv file>

CSV फ़ाइल में तीन कॉलम की आवश्यकता है:

  • हैश के अंतिम दो बाइट (अंतिम चार ASCII वर्ण)
  • पहले 7 बाइट (पहले 14 ASCII वर्ण)
  • दूसरे 7 बाइट (15-29वें ASCII वर्ण)

उदाहरण के लिए, हैश 8846f7eaee8fb117ad06bdd830b7586c बन जाएगा:

586c,8846f7eaee8fb1,17ad06bdd830b7

इसके लिए एक उदाहरण regexp रूपांतरण होगा: echo 8846f7eaee8fb117ad06bdd830b7586c | sed "s/^\(.\{14\}\)\(.\{14\}\)\(.\{4\}\)$/\3,\1,\2/"

आप मौजूदा हैश सूची (जैसे Have I Been Pwned सूचियाँ) ले सकते हैं या हैशकैट और अपनी पसंदीदा वर्डलिस्ट/नियमों के संयोजन से अपनी खुद की सूची बना सकते हैं।

Have I Been Pwned का उपयोग करना

HIBP पासवर्ड सूचियाँ पहले से ही NT हैश के रूप में डाउनलोड करने योग्य हैं, बस फ़ाइल से काउंट को हटाने और उन्हें डेटाबेस में आयात करने के लिए CSV प्रारूप में बदलने की आवश्यकता है।

यह मानक Unix उपयोगिता sed का उपयोग करके इस प्रकार किया जा सकता है:

sed "s/^\(.\{14\}\)\(.\{14\}\)\(.\{4\}\):.*/\3,\1,\2/" pwned-passwords-ntlm-ordered-by-hash.txt > hibp.csv

उसके बाद इसे mksqlitedb.py hibp.db hibp.csv का उपयोग करके आयात किया जा सकता है।

वर्डलिस्ट को हैशलिस्ट में बदलना

एक सीधी वर्डलिस्ट को nthashes की हैशलिस्ट में बदलने के लिए, आप nthasher का उपयोग कर सकते हैं जो बड़ी वर्डलिस्ट को तेज़ी से संसाधित कर सकता है। परिणामी हैश को ऊपर बताए गए आवश्यक CSV प्रारूप में बदलना होगा।

एक बहुत धीमा nthasher जो हैश को सीधे आवश्यक CSV प्रारूप में आउटपुट करेगा, इस रिपॉजिटरी में शामिल है, और इसे बस इसके साथ चलाया जाता है:

python3 nthash-from-clear.py <wordlist> > hashlist.csv

यदि आप वर्डलिस्ट को नियमों के साथ विस्तारित करना चाहते हैं, तो हैशकैट का उपयोग करने पर अगले भाग को देखें।

हैशकैट का उपयोग करके वर्डलिस्ट और नियमों से हैश CSV फ़ाइल बनाना

आपको मोड 1000 OpenCL मॉड्यूल में एक छोटा कोड परिवर्तन करना होगा ताकि यह केवल आपके क्रैक उम्मीदवार से मेल खाने वाले हैश के बजाय प्रत्येक हैश को उगल दे। डिफ़ॉल्ट रूप से, यह आवश्यक CSV प्रारूप में हैश उत्पन्न करेगा।

  • अपनी हैशकैट OpenCL निर्देशिका में बदलें: cd hashcat/OpenCL
  • पैच लागू करें: patch < m01000_a0-pure.cl.patch
  • एक क्रैक करने में असंभव NT हैश के साथ एक फ़ाइल तैयार करें: echo 11111111111111111111111111111111 > impossible_hash
  • सामान्य रूप से क्रैक करें, लेकिन अपने potfile को अक्षम करें और आउटपुट को एक फ़ाइल में रीडायरेक्ट करें: hashcat -m1000 impossible_hash rockyou.txt -r best64.rule --potfile-disable --quiet > rockyou.csv
  • अपना हैश डेटाबेस बनाएँ: python3 mksqlitedb.py rockyou.db rockyou.csv

डिस्क स्थान और फ़ाइल आकार पर एक नोट

SQLite डेटाबेस आमतौर पर इसे बनाने के लिए उपयोग किए जाने वाले CSV फ़ाइल से 61% बड़ा होता है। फ़ाइलों के आकार के आधार पर डेटाबेस बनाने में भी कुछ समय लग सकता है। तदनुसार अपनी फ़ाइल सिस्टम आवश्यकताएँ तैयार करें।

यहाँ rockyou शब्दकोश का उपयोग करने का एक उदाहरण है:

  • आधार rockyou शब्दकोश 129M
  • हैशकैट द्वारा उत्पन्न rockyou.csv 462M
  • परिणामी SQLite डेटाबेस rockyou.db 746M
  • BZip2 अधिकतम संपीड़न rockyou.db.bz2 339M

आप प्रत्येक हैश को गतिशील रूप से परिवर्तित और सम्मिलित करके और मध्यवर्ती CSV फ़ाइल की आवश्यकता को छोड़कर स्थान बचा सकते हैं।

NTLMv1 SSP

NTLMv1 बिल्कुल उसी तरह काम करेगा, जब तक कि यह SSP का उपयोग नहीं कर रहा हो। आपको पता चल जाएगा कि SSP उपयोग में है यदि आपको LM प्रतिक्रिया मिलती है जो शून्य की एक श्रृंखला में समाप्त होती है। आप शामिल ntlm-ssp.py का उपयोग करके सर्वर चैलेंज का उत्पादन कर सकते हैं जिसकी assless को आवश्यकता होगी।

इसे इस प्रकार चलाएँ: python3 ntlm-ssp.py <lm response> <challenge>

उदाहरण के लिए यदि हम हैशकैट उदाहरण हैश से NTLMv1-SSP चैलेंज प्रतिक्रिया का उपयोग करते हैं: u4-netntlm::kNS:338d08f8e26de93300000000000000000000000000000000:9526fb8c23a90751cdd619b6cea564742e1e4bf33006ba41:cb8086049ec4736c

आप LM और चैलेंज को इस प्रकार पास करेंगे:

python3 ntlm-ssp.py 338d08f8e26de93300000000000000000000000000000000 cb8086049ec4736c

और निम्नलिखित प्रतिक्रिया प्राप्त करेंगे:

The server challenge is: 724edf24aea0d68b

जिसे फिर assless-chaps के साथ सामान्य रूप से क्रैक किया जा सकता है:

./assless-chaps 724edf24aea0d68b 9526fb8c23a90751cdd619b6cea564742e1e4bf33006ba41 hashes.db

टूल डाउनलोड करें