
आपका MitM साथी जो DHCPv6 DNS takeover, mDNS, LLMNR और NetBIOS-NS स्पूफिंग जैसे हमलों को रिले करने के लिए है।
रिले हमलों के लिए आपका MitM साथी जिसमें DHCPv6 DNS टेकओवर के साथ-साथ mDNS, LLMNR और NetBIOS-NS स्पूफिंग शामिल है
pretender RedTeam Pentesting द्वारा विकसित एक उपकरण है जो स्पूफ किए गए स्थानीय नाम समाधान और DHCPv6 DNS टेकओवर हमलों के माध्यम से मशीन-इन-द-मिडिल स्थिति प्राप्त करता है। pretender मुख्य रूप से Windows होस्ट को लक्षित करता है, क्योंकि इसका उपयोग रिले हमलों के लिए किया जाता है, लेकिन इसे Linux, Windows और Go द्वारा समर्थित अन्य सभी प्लेटफार्मों पर तैनात किया जा सकता है। नाम समाधान प्रश्नों का उत्तर मनमाने IP से दिया जा सकता है, उन स्थितियों में जहां रिले टूल pretender से भिन्न होस्ट पर चलता है। यह Impacket's ntlmrelayx.py और krbrelayx जैसे उपकरणों के साथ काम करने के लिए डिज़ाइन किया गया है जो रिले हमलों या हैश डंपिंग के लिए आने वाले कनेक्शन को संभालते हैं।
DHCPv6 DNS टेकओवर, स्थानीय नाम समाधान स्पूफिंग और रिले हमलों के बारे में अधिक जानकारी के लिए हमारा ब्लॉग पोस्ट पढ़ें।
स्थानीय नेटवर्क में स्थिति का अंदाजा लगाने के लिए, pretender को --dry मोड में शुरू किया जा सकता है जहां यह केवल आने वाले प्रश्नों को लॉग करता है और उनमें से किसी का उत्तर नहीं देता है:
pretender -i eth0 --dry
pretender -i eth0 --dry --no-ra # बिना राउटर विज्ञापनों (RA) के
pretender -i eth0 --dry --no-ra-dns # RA के साथ लेकिन RA में DNS का विज्ञापन किए बिना
mDNS, LLMNR और NetBIOS-NS के माध्यम से स्थानीय नाम समाधान स्पूफिंग के साथ-साथ राउटर विज्ञापनों के साथ DHCPv6 DNS टेकओवर करने के लिए, बस pretender को इस तरह चलाएं:
pretender -i eth0
आप --no-dhcp-dns (DHCPv6, DNS और राउटर विज्ञापन अक्षम), --no-lnr (mDNS, LLMNR और NetBIOS-NS अक्षम), --no-mdns, --no-llmnr, --no-netbios और --no-ra के साथ कुछ हमलों को अक्षम कर सकते हैं।
यदि ntlmrelayx.py किसी भिन्न होस्ट पर चलता है (जैसे 10.0.0.10/fe80::5), तो pretender को इस तरह चलाएं:
pretender -i eth0 -4 "10.0.0.10" -6 "fe80::5"
Pretender को केवल कुछ डोमेन (या सभी लेकिन कुछ डोमेन) के लिए प्रश्नों का उत्तर देने के लिए सेट किया जा सकता है और यह केवल कुछ होस्ट (या सभी लेकिन कुछ होस्ट) के लिए स्पूफिंग हमले कर सकता है। होस्टनाम द्वारा होस्ट को संदर्भित करना उस होस्ट के नाम समाधान पर निर्भर करता है जो pretender चलाता है। निम्नलिखित उदाहरण देखें:
pretender -i eth0 --spoof "example.com" --dont-spoof-for "10.0.0.3,host1.corp,fe80::f" --ignore-nofqdn
अधिक जानकारी के लिए, pretender --help चलाएं।
--spoof/--dont-spoof/--spoof-for/--dont-spoof-for वाइल्डकार्ड का समर्थन करते हैं। जबकि domain.fqdn केवल शाब्दिक मिलान करता है, .domain.fqdn domain.fqdn और sub.domain.fqdn से मेल खाएगा। इसी प्रकार, *domain.fqdn mydomain.fqdn से मेल खाता है। केवल उपडोमेन से मेल खाने के लिए *.domain.fqdn का उपयोग करें। ध्यान दें कि उपडोमेन वाइल्डकार्ड (अग्रणी .) और मनमाने वाइल्डकार्ड (*) का एक साथ उपयोग नहीं किया जा सकता है।ntlmrelayx.py में IPv6 समर्थन सक्षम करने के लिए -6 फ्लैग का उपयोग करना सुनिश्चित करें।--stateless-ra फ्लैग के साथ DHCPv6 के बिना राउटर विज्ञापनों के माध्यम से स्टेटलेस DNS कॉन्फ़िगरेशन का समर्थन करता है। डिफ़ॉल्ट रूप से, DHCPv6 सर्वर अभी भी शुरू होता है लेकिन इसे --no-dhcp का उपयोग करके अक्षम किया जा सकता है।Pretender को निम्नानुसार बनाया जा सकता है:
go build
Pretender को पूर्व-कॉन्फ़िगर सेटिंग्स के साथ भी संकलित किया जा सकता है। इसके लिए, ldflags को इस प्रकार संशोधित करना होगा:
-ldflags '-X main.vendorInterface=eth1'
उदाहरण के लिए, Pretender को Windows के लिए एक विशिष्ट डिफ़ॉल्ट इंटरफ़ेस, रंगीन आउटपुट के बिना और कॉन्फ़िगर किए गए रिले IPv4 पते के साथ बनाया जा सकता है:
GOOS=windows go build -trimpath -ldflags '-X "main.vendorInterface=Ethernet 2" -X main.vendorNoColor=true -X main.vendorRelayIPv4=10.0.0.10'
वेंडरिंग विकल्पों की पूरी सूची (विस्तृत जानकारी के लिए defaults.go या pretender --help देखें):
vendorInterface
vendorRelayIPv4
vendorRelayIPv6
vendorSOAHostname
vendorSpoofResponseName
vendorNoDHCPv6DNSTakeover
vendorNoDHCPv6
vendorNoDNS
vendorNoMDNS
vendorNoNetBIOS
vendorNoLLMNR
vendorNoLocalNameResolution
vendorNoIPv6LNR
vendorNoRA
vendorNoRADNS
vendorSpoof
vendorDontSpoof
vendorSpoofFor
vendorDontSpoofFor
vendorSpoofTypes
vendorSpoofSRV
vendorIgnoreDHCPv6NoFQDN
vendorIgnoreNonMicrosoftDHCP
vendorDelegateIgnoredTo
vendorToggleNameResolutionSpoofing
vendorDontSendEmptyReplies
vendorDryMode
vendorDryWithDHCPMode
vendorStatelessRA
vendorTTL
vendorLeaseLifetime
vendorRARouterLifetime
vendorRAPeriod
vendorDNSTimeout
vendorStopAfter
vendorVerbose
vendorNoColor
vendorNoTimestamps
vendorLogFileName
vendorNoHostInfo
vendorHideIgnored
vendorRedirectStderr
vendorListInterfaces
--dont-spoof/--dont-spoof-for फिल्टर मौजूद हैं और --delegate-ignored-to के साथ कोई अपस्ट्रीम DNS सर्वर कॉन्फ़िगर नहीं किया गया है, तो राउटर विज्ञापन सीधे DNS सर्वर का विज्ञापन नहीं करेंगे जिससे हमला कम प्रभावी हो जाता है।--stop-after और main.vendorStopAfter)।--no-host-info या main.vendorNoHostInfo से अक्षम किया जा सकता है।--interfaces का उपयोग करके नाम और पतों वाले सभी इंटरफ़ेस सूचीबद्ध करें।--no-ipv6-lnr/main.vendorNoIPv6LNR का उपयोग करें।--spoof-for/--dont-spoof-for)। आप --ignore-nofqdn सेट या छोड़ कर FQDN विकल्प के बिना DHCPv6 संदेशों के साथ क्या करना है, यह तय कर सकते हैं।CGO_ENABLED=1) या Go कार्यान्वयन (CGO_ENABLED=0) का उपयोग किया जाता है। यह होस्ट जानकारी संग्रह के लिए महत्वपूर्ण हो सकता है क्योंकि OS रिज़ॉल्वर स्थानीय नाम समाधान का समर्थन कर सकता है और Go कार्यान्वयन नहीं करता है, जब तक कि एक स्टब रिज़ॉल्वर का उपयोग न किया जाए।hostinfo/mac-vendors.txt को बदलकर एक कस्टम MAC पता विक्रेता सूची बाइनरी में संकलित की जा सकती है। केवल निम्नलिखित प्रारूप में MAC उपसर्ग वाली पंक्तियाँ पहचानी जाती हैं: FF:FF:FF<tab>VendorID<tab>Vendor (MAC उपसर्ग की लंबाई मनमानी हो सकती है)।--no-lnr और --spoof-types SOA निर्दिष्ट कर सकते हैं ताकि हमले से असंबंधित किसी भी प्रश्न को अनदेखा किया जा सके।krbrelayx.py pretender से भिन्न होस्ट पर चलता है (रिले IPv4 पता एक अलग होस्ट की ओर इशारा करता है जो krbrelayx.py चलाता है), krbrelayx.py चलाने वाले होस्ट को भी pretender चलाने की आवश्यकता होगी ताकि रिले IPv4 पते पर भेजे गए डायनामिक अपडेट क्वेरी को प्राप्त और अस्वीकार किया जा सके।--delegate-ignored-to <DNS सर्वर> का उपयोग अनदेखा किए गए प्रश्नों को एक वैध DNS सर्वर को सौंपने के लिए किया जा सकता है।--dry-with-dhcp को --delegate-ignored-to के साथ जोड़ा जा सकता है ताकि नेटवर्क में नाम समाधान प्रश्नों की निगरानी बिना व्यवधान के की जा सके।--ignore-non-microsoft-dhcp निर्दिष्ट करके गैर-Windows क्लाइंट से DHCP संदेशों को अनदेखा करना संभव है। यह संभव है क्योंकि Windows DHCP क्लाइंट DHCP विक्रेता विकल्प में Microsoft के एंटरप्राइज़ नंबर 311 को शामिल करता है।--toggle के साथ, रनटाइम पर नाम समाधान स्पूफिंग (DNS, mDNS, LLMNR, NetBIOS) को गतिशील रूप से सक्षम और अक्षम किया जा सकता है। यह विशेष रूप से --delegate-ignored-to के साथ शक्तिशाली है ताकि DHCP सर्वर को रोके बिना हमलों को शुरू और रोका जा सके। इसका उपयोग एक वर्कअराउंड के रूप में किया जा सकता है जब Windows DHCP क्लाइंट DHCP सर्वर तक पहुंचने में विफल रहने के बाद कुछ समय के लिए पते पट्टे पर देना बंद कर देता है।