<summary><strong>Naučite hakovanje AWS-a od nule do heroja sa</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Ako želite da vidite svoju **kompaniju reklamiranu na HackTricks-u** ili da **preuzmete HackTricks u PDF formatu** proverite [**PLANOVE ZA PRIJAVU**](https://github.com/sponsors/carlospolop)!
* **Pridružite se** 💬 [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili nas **pratite** na **Twitteru** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
**IPsec** je široko prepoznat kao glavna tehnologija za obezbeđivanje komunikacije između mreža (LAN-to-LAN) i od udaljenih korisnika do mrežnog pristupnog čvora (udaljeni pristup), služeći kao osnova za rešenja preduzeća za VPN.
Uspostavljanje **bezbednosne asocijacije (SA)** između dve tačke upravlja **IKE**, koji funkcioniše pod okriljem ISAKMP, protokola dizajniranog za autentifikaciju i razmenu ključeva. Ovaj proces se odvija u nekoliko faza:
* **Faza 1:** Bezbedan kanal se kreira između dve tačke. To se postiže korišćenjem Pre-Shared Key (PSK) ili sertifikata, koristeći ili glavni režim, koji uključuje tri para poruka, ili **agresivni režim**.
* **Faza 1.5:** Iako nije obavezna, ova faza, poznata kao Faza Proširene Autentifikacije, proverava identitet korisnika koji pokušava da se poveže zahtevajući korisničko ime i lozinku.
* **Faza 2:** Ova faza je posvećena pregovaranju parametara za obezbeđivanje podataka sa **ESP** i **AH**. To omogućava korišćenje algoritama različitih od onih u Fazi 1 kako bi se osigurala **Savršena Progresivna Tajnost (PFS)**, poboljšavajući bezbednost.
IPSec konfiguracija može biti podešena da prihvati samo jednu ili nekoliko transformacija. Transformacija je kombinacija vrednosti. **Svaka transformacija** sadrži broj atributa kao što su DES ili 3DES kao **algoritam šifrovanja**, SHA ili MD5 kao **algoritam celovitosti**, prethodno deljeni ključ kao **tip autentikacije**, Diffie-Hellman 1 ili 2 kao algoritam za **distribuciju ključeva** i 28800 sekundi kao **životni vek**.
Zatim, prva stvar koju treba da uradite je da **pronađete validnu transformaciju**, tako da će server komunicirati sa vama. Za to možete koristiti alat **ike-scan**. Podrazumevano, Ike-scan radi u glavnom režimu i šalje paket ka ulaznoj tački sa ISAKMP zaglavljem i jednim predlogom sa **osam transformacija unutar njega**.
Kao što možete videti u prethodnom odgovoru, postoji polje nazvano **AUTH** sa vrednošću **PSK**. To znači da je VPN konfigurisan korišćenjem unapred podele ključa (i ovo je zaista dobro za pentestera).\
* _0 vraćen handshake; 0 vraćen notify:_ Ovo znači da meta **nije IPsec gateway**.
* _**1 vraćen handshake; 0 vraćen notify:**_ Ovo znači da je meta konfigurisana za IPsec i spremna je da obavi IKE pregovore, i da je jedna ili više transformacija koje ste predložili prihvatljiva (važeća transformacija će biti prikazana u izlazu).
* _0 vraćen handshake; 1 vraćen notify:_ VPN gateway-ovi odgovaraju sa notify porukom kada **nijedna od transformacija nije prihvatljiva** (mada neki gateway-ovi to ne rade, u tom slučaju treba izvršiti dalju analizu i probati sa revidiranim predlogom).
Dakle, u ovom slučaju već imamo važeću transformaciju, ali ako se nalazite u 3. slučaju, tada morate **malčice probati sa brute-force-om da biste pronašli važeću transformaciju:**
Ako brute-force nije uspeo, možda server odgovara bez rukovanja čak i na validne transformacije. Zatim, možete probati isti brute-force ali koristeći agresivni režim:
Cisco preporučuje izbegavanje korišćenja DH grupa 1 i 2 jer nisu dovoljno jake. Stručnjaci veruju da **zemlje sa puno resursa lako mogu da probiju enkripciju** podataka koji koriste ove slabe grupe. To se postiže korišćenjem posebnog metoda koji ih priprema da brzo probiju kodove. Iako košta puno novca postaviti ovaj metod, omogućava ovim moćnim zemljama da čitaju enkriptovane podatke u realnom vremenu ako koriste grupu koja nije jaka (kao što je 1.024-bitna ili manja).
Zatim, možete koristiti ike-scan da pokušate **otkriti proizvođača** uređaja. Alat šalje početni predlog i prestaje sa reprodukcijom. Zatim, **analizira****razliku u vremenu** između primljenih **poruka** od servera i odgovarajućeg obrasca odgovora, pentester može uspešno identifikovati proizvođača VPN gateway-a. Osim toga, neki VPN serveri će koristiti opcioni **Vendor ID (VID) payload** sa IKE.
Da biste bili u mogućnosti da uhvatite heš, potreban vam je validan transform koji podržava Agresivni režim i tačan ID (ime grupe). Verovatno nećete znati validno ime grupe, pa ćete morati da ga probate silom.
Ako **nema povratne vrednosti heša**, tada će verovatno ovaj metod grubog forsiranja raditi. **Ako se vrati neki heš, to znači da će se za lažni ID poslati lažni heš, pa ovaj metod neće biti pouzdan** za grubo forsiranje ID-ja. Na primer, može se vratiti lažni heš (ovo se dešava u modernim verzijama):
Ako ste otkrili određenu transformaciju, dodajte je u ike-scan komandu. Ako ste otkrili više transformacija slobodno dodajte novu petlju da ih sve isprobate (trebali biste ih isprobati sve dok jedna od njih pravilno radi).
Možete koristiti [rečnik ikeforce](https://github.com/SpiderLabs/ikeforce/blob/master/wordlists/groupnames.dic) ili [onaj u seclists](https://github.com/danielmiessler/SecLists/blob/master/Miscellaneous/ike-groupid.txt) uobičajenih imena grupa da ih grubo forsirate:
[**iker.py**](https://github.com/isaudits/scripts/blob/master/iker.py) takođe koristi **ike-scan** za pokušaj otkrivanja mogućih imena grupa. Prati svoju metodu za **pronalaženje validnog ID-a na osnovu izlaza ike-scan**.
[**ikeforce.py**](https://github.com/SpiderLabs/ikeforce) je alat koji se može koristiti za **bruteforce ID-ova takođe**. Ovaj alat će **pokušati iskoristiti različite ranjivosti** koje bi mogle biti korištene za **razlikovanje između validnog i nevalidnog ID-a** (može imati lažne pozitivne i lažne negativne rezultate, zbog čega preferiram korišćenje metode ike-scan ako je moguće).
* **Prva metoda** je da brute-force imena grupa **tražeći** informacije **Dead Peer Detection DPD** Cisco sistema (ove informacije server emituje samo ako je ime grupe ispravno).
* **Druga dostupna metoda** je da **proverava broj poslatih odgovora za svaki pokušaj** jer se ponekad šalje više paketa kada se koristi ispravan ID.
* Na kraju, ako server ne emituje ništa kao odgovor na provere, **ikeforce** će pokušati da brute-force server i proveri da li server emituje neki paket kada se pošalje ispravan ID.\
Očigledno, cilj brute force napada na ID je dobiti **PSK** kada imate validan ID. Zatim, sa **ID-om** i **PSK**-om moraćete da izvršite brute force napad na XAUTH (ako je omogućen).
Ako ste otkrili određenu transformaciju, dodajte je u ikeforce komandu. I ako ste otkrili više transformacija slobodno dodajte novu petlju da ih sve isprobate (trebalo bi da ih isprobate sve dok jedna od njih pravilno funkcioniše).
(Iz knjige **Procena bezbednosti mreže: Upoznajte svoju mrežu**): Takođe je moguće dobiti validna korisnička imena špijuniranjem veze između VPN klijenta i servera, jer se prvi paket agresivnog moda koji sadrži ID klijenta šalje otvoreno
Na kraju, ako ste pronašli **validnu transformaciju** i **ime grupe** i ako je **agresivni mod dozvoljen**, tada možete veoma lako uhvatiti dešifrovan heš:
Možete koristiti **psk-crack**, **john** (koristeći [**ikescan2john.py**](https://github.com/truongkma/ctf-tools/blob/master/John/run/ikescan2john.py)) i **hashcat** da **provalite** hash:
**Agresivni režim IKE** u kombinaciji sa **Pre-Shared Key (PSK)** se često koristi u svrhu **grupne autentikacije**. Ovaj metod se proširuje sa **XAuth (Proširena autentikacija)**, koja služi da uvede dodatni sloj **korisničke autentikacije**. Takva autentikacija obično koristi usluge poput **Microsoft Active Directory**, **RADIUS**, ili sličnih sistema.
Prelaskom na **IKEv2**, primećuje se značajna promena gde se koristi **EAP (Proširivi protokol za autentikaciju)** umesto **XAuth** u svrhu autentikacije korisnika. Ova promena ističe evoluciju praksi autentikacije unutar sigurnih komunikacionih protokola.
Tako da možete uhvatiti podatke za prijavljivanje koristeći _fiked_ i videti da li postoji neko podrazumevano korisničko ime (Morate preusmeriti IKE saobraćaj na `fiked` za špijuniranje, što se može uraditi uz pomoć ARP prevara, [više informacija](https://opensourceforu.com/2012/01/ipsec-vpn-penetration-testing-backtrack-tools/)). Fiked će delovati kao VPN krajnja tačka i uhvatiće XAuth akreditive:
Takođe, pokušajte da izvršite napad snimanja sa čoveka korišćenjem IPSec-a i blokirajte sav saobraćaj ka portu 500, ako tunel IPSec ne može da bude uspostavljen, možda će saobraćaj biti poslat nešifrovan.
Da biste primenili **XAUTH** metodu (kada znate validno ime grupe **id** i **psk**), možete koristiti korisničko ime ili listu korisničkih imena i listu lozinki:
U Kali-u, **VPNC** se koristi za uspostavljanje IPsec tunela. **Profili** se moraju nalaziti u direktorijumu `/etc/vpnc/`. Možete pokrenuti ove profile koristeći komandu _**vpnc**_.
<summary><strong>Naučite hakovanje AWS-a od nule do heroja sa</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Ako želite da vidite **vašu kompaniju reklamiranu na HackTricks-u** ili **preuzmete HackTricks u PDF formatu** Proverite [**PLANOVE ZA PRIJAVU**](https://github.com/sponsors/carlospolop)!
* **Pridružite se** 💬 [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili nas **pratite** na **Twitteru** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**