IPSec sa spolieha na množstvo technologické riešenia a šifrovacie metódy, ale celkovú činnosť IPSec možno zhrnúť do nasledujúcich hlavných krokov:

    Krok 1. Spustenie procesu IPSec. Prenos, ktorý vyžaduje šifrovanie v súlade s bezpečnostnou politikou IPSec dohodnutou stranami IPSec, začína proces IKE.

    Krok 2 Prvá fáza IKE. Proces IKE overuje IPSec strany a vyjednáva parametre priradenia zabezpečenia IKE, čím sa vytvorí bezpečný kanál na vyjednávanie parametrov priradenia zabezpečenia IPSec počas druhej fázy IKE.

    Krok 3 Druhá fáza IKE. Proces IKE dohodne parametre priradenia zabezpečenia IPSec a vytvorí vhodné priradenia zabezpečenia IPSec pre zariadenia komunikujúcich strán.

    Krok 4 Prenos dát. Komunikácia prebieha medzi IPSec komunikujúcimi stranami, ktorá je založená na IPSec parametroch a kľúčoch uložených v databáze bezpečnostných asociácií.

    Krok 5 Ukončenie tunela IPSec. Priradenia zabezpečenia IPSec sú ukončené buď v dôsledku ich vymazania, alebo preto, že prekročili svoj limit životnosti.

Prevádzkové režimy IPsec

Pre IPSec existujú dva režimy prevádzky: transport a tunel.

V transportnom režime je šifrovaná iba informatívna časť IP paketu. Smerovanie nie je ovplyvnené, pretože hlavička paketu IP sa nemení. Transportný režim sa zvyčajne používa na vytvorenie spojenia medzi hostiteľmi.

V tunelovom režime je celý IP paket zašifrovaný. Aby mohol byť prenášaný cez sieť, je umiestnený v inom IP pakete. Takto sa získa bezpečný IP tunel. Tunelový režim možno použiť na pripojenie vzdialených počítačov k virtuálnej súkromnej sieti alebo na bezpečný prenos údajov otvorené kanály prepojenia (internet) medzi bránami na prepojenie rôznych častí virtuálnej privátnej siete.

Vyjednávanie transformácie IPSec

Počas prevádzky protokolu IKE sa dohadujú IPSec transformácie (bezpečnostné algoritmy IPSec). Transformácie IPSec a ich súvisiace šifrovacie algoritmy sú nasledovné:

    AH protokol (Authentication Header - autentifikačná hlavička). Bezpečnostný protokol, ktorý poskytuje autentifikáciu a (voliteľne) službu detekcie prehrávania. Protokol AH funguje ako digitálny podpis a zaisťuje, že údaje v pakete IP nebudú sfalšované. Protokol AH neposkytuje službu šifrovania a dešifrovania údajov. Tento protokol je možné použiť buď samostatne alebo v spojení s protokolom ESP.

    Protokol ESP (Encapsulating Security Payload). Bezpečnostný protokol, ktorý poskytuje súkromie a ochranu údajov a voliteľne službu overovania a detekcie opakovania. Produkty Cisco s podporou IPSec používajú ESP na šifrovanie užitočného zaťaženia paketov IP. Protokol ESP možno použiť samostatne alebo v spojení s AH.

    Štandard DES (Data Encription Standard – štandard šifrovania dát). Algoritmus šifrovania a dešifrovania paketových dát. Algoritmus DES sa používa v IPSec aj IKE. Algoritmus DES využíva 56-bitový kľúč, čo znamená nielen vyššiu spotrebu výpočtových zdrojov, ale aj silnejšie šifrovanie. Algoritmus DES je symetrický šifrovací algoritmus, ktorý vyžaduje identické tajné šifrovacie kľúče v zariadeniach každej z IPSec komunikujúcich strán. Na generovanie symetrických kľúčov sa používa algoritmus Diffie-Hellman. IKE a IPSec používajú na šifrovanie správ algoritmus DES.

    "Trojitý" DES (3DES). Variant DES založený na použití troch iterácií štandardného DES s tromi rôznymi kľúčmi, čo efektívne strojnásobuje silu DES. Algoritmus 3DES sa používa v rámci IPSec na šifrovanie a dešifrovanie dátového toku. Tento algoritmus používa 168-bitový kľúč, ktorý zaručuje vysokú silu šifrovania. IKE a IPSec používajú na šifrovanie správ algoritmus 3DES.

    AES(pokročilý štandard šifrovania)). Protokol AES používa šifrovací algoritmus Rine Dale4, ktorý poskytuje oveľa silnejšie šifrovanie. Mnoho kryptografov verí, že AES nemožno hacknúť vôbec. AES je teraz federálnym štandardom spracovania informácií. Je definovaný ako šifrovací algoritmus, ktorý používajú vládne organizácie USA na ochranu citlivých, ale neutajovaných informácií. Problém s AES je v tom, že vyžaduje veľa výpočtového výkonu v porovnaní s podobnými protokolmi.

Konverzia IPSec tiež používa dva štandardné hashovacie algoritmy na zabezpečenie autentifikácie údajov.

    Algoritmus MD5 (súhrn správ 5). Hashovací algoritmus používaný na autentifikáciu dátových paketov. Produkty Cisco používajú variant autentifikačného kódu správy vypočítaný MD5 (Hashed Message Authentication Code), ktorý poskytuje dodatočnú bezpečnosť prostredníctvom hashovania. Hašovanie je jednosmerný (t. j. nevratný) šifrovací proces, ktorý vytvára výstup s pevnou dĺžkou pre vstupnú správu ľubovoľnej dĺžky. IKE, AH a ESP používajú na autentifikáciu údajov MD5.

    Algoritmus SHA-1 (Secure Hash Algorithm-1 -- bezpečný hashovací algoritmus 1). Hashovací algoritmus používaný na autentifikáciu dátových paketov. Produkty Cisco používajú variant kódu HMAC, ktorý sa vypočítava pomocou SHA-1. IKE, AH a ESP používajú SHA-1 na autentifikáciu údajov.

V rámci protokolu IKE sa symetrické kľúče vytvárajú pomocou algoritmu Diffie-Hellman, ktorý používa DES, 3DES, MD5 a SHA. Protokol Diffie-Hellman je kryptografický protokol založený na použití verejných kľúčov. Umožňuje dvom stranám dohodnúť sa na spoločnom tajnom kľúči bez toho, aby mali dostatočne spoľahlivý komunikačný kanál. Zdieľané tajné kľúče sa vyžadujú pre algoritmy DES a HMAC. Algoritmus Diffie-Hellman sa používa v rámci IKE na generovanie kľúčov relácie. Skupiny Diffie-Hellman (DH) – definujú „silu“ šifrovacieho kľúča, ktorý sa používa v procedúre výmeny kľúčov. Čím vyššie je číslo skupiny, tým je kľúč „silnejší“ a bezpečnejší. Treba však vziať do úvahy skutočnosť, že so zvýšením čísla skupiny DH sa zvyšuje „sila“ a úroveň zabezpečenia kľúča, ale zároveň sa zvyšuje zaťaženie centrálneho procesora, pretože viac času a zdrojov sú potrebné na vygenerovanie „silnejšieho“ kľúča.

Zariadenia WatchGuard podporujú DH skupiny 1, 2 a 5:

    DH skupina 1: 768-bitový kľúč

    DH skupina 2: 1024-bitový kľúč

    DH skupina 5: 1536-bitový kľúč

Obe zariadenia, ktoré komunikujú cez VPN, musia používať rovnakú DH skupinu. Skupina DH, ktorú majú zariadenia používať, sa vyberá počas postupu IPSec Phase 1.

Už sme diskutovali o koncepte IPSec, v tomto článku sa budeme zaoberať IPSec podrobnejšie.

Názov IPSec teda pochádza z IP Security.
IPSec je sada protokolov a algoritmov, ktoré sa používajú na ochranu IP paketov na úrovni Layer3.

IPSec vám umožňuje zaručiť:
- Dôvernosť - pomocou šifrovania
- Integrita údajov - cez hashovanie a HMAC\
- Autentifikácia - pomocou digitálnych podpisov alebo predzdieľaného kľúča (PSK).

Uvádzame hlavné protokoly IPsec:
ESP a AH: Dva hlavné protokoly používané v IPsec.
Encapsulation Security Payload (ESP), môže robiť všetko, čo sa vyžaduje pre IPsec, a
Autentifikačná hlavička (AH), dokáže všetko okrem šifrovania, šifrovania dát, - preto sa najčastejšie používa ESP.
Šifrovacie algoritmy pre zachovanie dôvernosti: DES, 3DES, AES.
Hašovacie algoritmy pre integritu: MD5, SHA.
Autentifikačné algoritmy: Predzdieľané kľúče (PSK), digitálne podpisy RSA.
správa kľúčov: Príkladom môže byť Diffie-Hellman (DH), na ktorý sa dá použiť
dynamicky generovať symetrické kľúče na použitie symetrickými algoritmami; PKI,
ktorý podporuje funkciu digitálnych certifikátov vydaných dôveryhodnými CA; a internet
Key Exchange (IKE), ktorá za nás robí veľa vyjednávania a riadenia
IPsec na prevádzku.

Prečo je potrebný IPSec

Zvážte nasledujúcu jednoduchú topológiu na prepojenie dvoch kancelárií.

Potrebujeme prepojiť dve kancelárie a splniť tieto ciele:

  • Dôvernosť- poskytované prostredníctvom šifrovania údajov.
  • integrita údajov- poskytované cez hashovanie, alebo cez Hašovaný overovací kód správy (HMAC), - metódy na zabezpečenie toho, aby sa údaje nezmenili.
  • Overenie- poskytované pomocou predzdieľané kľúče (PSK), alebo digitálnych podpisov. A pri použití HMAC prebieha overovanie neustále.
  • ochrana proti opakovaniu- všetky VPN pakety sú očíslované, čo je ochrana pred ich opakovaním.

Protokoly a porty IPSec

IKEv1 Fáza 1 UDP port 500 IKEv1 Phase 1 používa na vyjednávanie UDP:500.
NAT-T (NAT
prechod)
UDP port 4500 NAT Traversal používajú zariadenia na prechádzanie NAT. Ak sa obe zariadenia pripájajú k sebe cez NAT: chcú umiestniť falošný port UDP 4500
hlavičky na každom pakete IPsec (pred hlavičkou ESP).
prežiť zariadenie NAT, ktoré inak môže mať problém
sledovanie relácie ESP (protokol 4. vrstvy 50)
ESP Protokol 4. vrstvy
50
Všetky IPSec pakety sú protokolom Layer 4 ESP (IP Protocol #50), všetky dáta sú v ňom zapuzdrené. Zvyčajne sa používa ESP (a nie AH). V prípade použitia NAT-T je hlavička ESP uzavretá druhou hlavičkou UDP.
AH Protokol 4. vrstvy
51
Pakety AH sú protokolom vrstvy 4 AH (IP protokol #51). AH nepodporuje šifrovanie užitočného zaťaženia, a preto sa používa zriedka.

Operácia IPSec

Na vytvorenie bezpečného pripojenia VPN používa protokol IPSec Internetová výmena kľúčov (IKE).
IKE je poskytovaný rámec Asociácia internetovej bezpečnosti, ako aj Key Management Protocol (ISAKMP)

Takže v našej konfigurácii budú oba smerovače fungovať ako Brána VPN alebo Partneri IPsec.

Predpokladajme, že používateľ v sieti 10.0.0.0 odošle paket do siete 172.16.0.0.
Keďže tunel ešte nebol vytvorený, R1 iniciuje rokovania s druhým routerom R2.

Krok 1: Dohodnite sa na tuneli IKEv1 fázy 1

Prvý krok medzi smerovačmi stúpa Tunel 1. fázy Internet Key Exchange (IKE)..
Takýto tunel nie je určený na prenos používateľských údajov, ale používa sa na oficiálne účely, na ochranu správy prevádzky.

Zdvihnutie tunela IKE fázy 1 je možné vykonať v dvoch režimoch:
- hlavný režim
- agresívny režim
Hlavný režim vyžaduje výmenu veľkého počtu paketov, ale považuje sa aj za bezpečnejší.

Na vytvorenie tunela IKE fázy 1 sa musia dohodnúť tieto prvky:

  • Hašovací algoritmus: To môže byť algoritmus súhrnu správ 5 (MD5) alebo Secure Hash
    Algoritmus (SHA)
    .
  • Šifrovací algoritmus: Štandard digitálneho šifrovania (DES)(slabé, neodporúča sa), Triple DES (3DES)(o niečo lepšie) resp Advanced Encryption Standard (AES)(odporúča sa) AES môže používať kľúče rôznych dĺžok: čím dlhšie, tým bezpečnejšie.
  • Použiť skupinu Diffie-Hellman (DH).: „Skupina“ DH sa vzťahuje na veľkosť modulu (dĺžka
    kľúč) použiť na výmenu kľúča DH. Skupina 1 používa 768 bitov, skupina 2 používa 1024 bitov a
    skupina 5 používa 1536. Bezpečnejšie skupiny DH sú súčasťou šifrovania novej generácie
    (NGE):
    - Skupina 14 alebo 24: Poskytuje 2048-bitové DH
    - Skupiny 15 a 16: Podpora 3072-bit a 4096-bit DH
    - Skupina 19 alebo 20: Podporuje 256-bitové a 384-bitové skupiny ECDH

    Úlohou DH je generovať kľúčovací materiál (symetrické kľúče). Tieto kľúče sa použijú na prenos údajov.
    Samotný DH je asymetrický, ale generuje symetrické kľúče.

  • Spôsob overovania: môže byť vo forme predzdieľaný kľúč (PSK) alebo RSA podpisy
  • život: Životnosť tunela IKE fázy 1. Jediný parameter, ktorý sa nemusí zhodovať. Čím je životnosť kratšia, tým častejšie sa budú kľúče meniť a tým je to bezpečnejšie.

Krok 2: Spustite výmenu kľúčov DH

Keď sa smerovače dohodnú na politike IKE fázy 1, môžu začať proces výmeny kľúča DH. DH umožňuje dvom zariadeniam, ktoré medzi sebou ešte nemajú zabezpečené spojenie, bezpečne si vymieňať symetrické kľúče, ktoré majú používať symetrické algoritmy, ako je AES.

Krok 3: Overte totožnosť partnera

Posledná vec, ktorá bude vykonaná v IKE Phase 1, je vzájomná autentifikácia hostiteľa, ktorá môže byť vykonaná dvoma spôsobmi (digitálne podpisy PSK alebo RSA)
Ak je autentifikácia úspešná, tunel IKE fázy 1 sa považuje za spustený. Tunel je obojsmerný.

Krok 4: IKE Fáza 2

Po zvýšení tunela fázy 1 IKE smerovače začnú zvyšovať tunel fázy 1 IKE.
Ako už bolo spomenuté, IKE Phase 1 tunel je čisto servisný, manažérsky tunel a všetka vyjednávacia prevádzka prechádza cez neho, aby zdvihla IKE Phase 2 tunel.
Tunel IKE Phase 2 využíva aj hashovacie a šifrovacie algoritmy.
Zdvihnutie tunela IKE Phase 2 je možné vykonať v jednom z nasledujúcich režimov:
- rýchly režim

Tunel IKE Phase 2 vlastne pozostáva z dvoch jednosmerných tunelov, t.j. môžeme povedať, že sú vytvorené:
Jeden tunel IKE fázy 1, ktorý je obojsmerný, používaný pre servisné funkcie.
A dva tunely IKE Phase 2, ktoré sú jednosmerné a ktoré sa používajú na šifrovanie užitočnej prevádzky.
Všetky tieto tunely sa nazývajú aj ako bezpečnostné dohody medzi dvoma partnermi VPN alebo bezpečnostné asociácie (SA).
Každá SA má svoje jedinečné číslo.

Teraz, po vytvorení tunela IKE Phase 2, budú všetky pakety vychádzajúce z externých rozhraní zašifrované.

Príklad nastavenia


Zvážte príklad konfigurácie IPsec pomocou tejto schémy ako príklad.

  1. Nakonfigurujte zaujímavú premávku
    Najprv musíme definovať prenos, ktorý budeme šifrovať.
    Smerovač R1
    ip access-list rozšírené povolenie VPN-ACL IP 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255

    Smerovač R2

    ip access-list rozšírené povolenie VPN-ACL IP 192.168.2.0 0.0.0.255 192.168.1.0 0.0.0.255
  2. Konfigurácia fázy 1 (ISAKMP)
    Fáza 1 prináša tunel používaný na servisné účely: výmena zdieľaných tajných kľúčov, autentifikácia, vyjednávanie bezpečnostných zásad IKE atď.
    Je možné vytvoriť viacero politík isakmp s rôznymi prioritami.

    Smerovač R1

    crypto isakmp key secretkey adresa 200.200.200.1

    Smerovač R2

    crypto isakmp policy 1 šifrovanie 3des hash md5 autentifikácia pre-share group 2
    crypto isakmp key secretkey adresa 100.100.100.1

    Tu je kľúčom PSK (Preshared Key) používaný smerovačmi na overenie IKE fázy 1.

  3. Konfigurácia fázy 2 (IPSEC)
    Účelom tunela IKE Phase 2 je preniesť užitočnú prevádzku medzi hostiteľmi dvoch kancelárií.
    Parametre tunela 2. fázy sú zoskupené do množín nazývaných transformačné množiny.
    Smerovač R1
    crypto ipsec transform-set TRSET esp-3des esp-md5-hmac ! kryptografická mapa VPNMAP 10 ipsec-isakmp set peer 200.200.200.1 set transform-set TRSET zhoda adresy VPN-ACL ! rozhranie FastEthernet0/0 kryptomapa VPNMAP

    Smerovač R2

    crypto ipsec transform-set TRSET esp-3des esp-md5-hmac ! kryptografická mapa VPNMAP 10 ipsec-isakmp set peer 100.100.100.1 set transform-set TRSET zhoda adresy VPN-ACL ! rozhranie FastEthernet0/0 kryptomapa VPNMAP

    Obaja hostitelia používali crypto ipsec transform-set TRSET esp-3des esp-md5-hmac.
    To znamená, že 3des sa použije na šifrovanie a md5-hmac na autentifikáciu.

    na rozhranie sa aplikuje kryptomapa. Kryptomapa sleduje návštevnosť, ktorá spĺňa dané podmienky. Naša kryptomapa bude fungovať s routerom s adresou 100.100.100.1, nastavenou internou prevádzkou ACL a na túto prevádzku použije transformačný súbor TRSET.

Kontrola IPSec

Vo všeobecnosti je zoznam užitočných príkazov nasledujúci:
zobraziť politiku krypto isakmp
zobraziť krypto mapu
zobraziť detail crypto isakmp sa
zobraziť krypto ipsec sa
zobraziť aktívne pripojenia kryptomotora

V praxi je najužitočnejšie nasledovné:


V modernom svete sa všade používajú rôzne technológie VPN. Niektoré (napríklad PPTP) sú časom uznané ako neisté a postupne odumierajú, zatiaľ čo iné (OpenVPN, naopak, každým rokom naberajú na sile). Ale nesporným lídrom a najuznávanejšou technológiou na vytváranie a udržiavanie bezpečných súkromných kanálov je stále IPsec VPN. Niekedy pri testovaní môžete nájsť vážne chránenú sieť, z ktorej vyčnieva iba 500. port UDP. Všetko ostatné je možné uzavrieť, zaplátať a spoľahlivo filtrovať. V takejto situácii môže vzniknúť myšlienka, že tu nie je nič zvláštne. Ale nie vždy to tak je. Okrem toho sa všeobecne verí, že IPsec, dokonca aj v predvolených konfiguráciách, je nedobytný a poskytuje primeranú úroveň zabezpečenia. Presne na túto situáciu sa dnes pozrieme. Najprv však, aby ste mohli s IPsec bojovať čo najefektívnejšie, musíte zistiť, čo to je a ako to funguje. Toto urobíme!

IPsec zvnútra

Predtým, ako prejdete priamo k samotnému IPsec, bolo by pekné zapamätať si, aké typy sietí VPN vo všeobecnosti existujú. Existuje veľa klasifikácií VPN, ale nebudeme sa ponoriť hlboko do sieťových technológií a vezmeme tú najjednoduchšiu. Preto VPN rozdelíme na dva hlavné typy – site-to-site VPN pripojenia (možno ich nazvať aj trvalé) a vzdialené prístupové VPN (RA, sú aj dočasné).
Prvý typ slúži na trvalé prepojenie rôznych sieťových ostrovov, napríklad centrály s mnohými roztrúsenými pobočkami. RA VPN je scenár, keď sa klient pripojí na krátky čas, získa prístup k určitým sieťovým zdrojom a po dokončení práce je bezpečne odpojený.

Nás bude zaujímať druhá možnosť, keďže v prípade úspešného útoku je možné okamžite získať prístup do internej siete podniku, čo je pre pentestera dosť vážny úspech. IPsec vám zase umožňuje implementovať VPN medzi lokalitami a vzdialený prístup. Čo je to za technológiu a z akých komponentov sa skladá?

Stojí za zmienku, že IPsec nie je jeden, ale celý súbor rôznych protokolov, ktoré poskytujú transparentnú a bezpečnú ochranu údajov. Špecifikom IPsec je, že je implementovaný na sieťovej vrstve a dopĺňa ju takým spôsobom, že pre nasledujúce vrstvy sa všetko deje nepostrehnuteľne. Hlavný problém spočíva v tom, že v procese vytvárania spojenia sa dvaja účastníci bezpečného kanála musia dohodnúť na pomerne veľkom počte rôznych parametrov. Musia sa totiž navzájom autentifikovať, generovať a vymieňať si kľúče (a prostredníctvom nedôveryhodného média) a tiež sa dohodnúť, akými protokolmi budú dáta šifrovať.

Z tohto dôvodu sa IPsec skladá zo súboru protokolov, ktorých zodpovednosťou je zabezpečiť, aby sa vytvorilo, prevádzkovalo a spravovalo bezpečné pripojenie. Celý proces nadviazania spojenia pozostáva z dvoch fáz: prvá fáza slúži na zabezpečenie bezpečná výmena Správy ISAKMP sú už v druhej fáze. ISAKMP (Internet Security Association) a kľúč Management Protocol je protokol, ktorý sa používa na vyjednávanie a aktualizáciu bezpečnostných zásad (SA) medzi účastníkmi pripojenia VPN. Tieto politiky len špecifikujú, ktorým protokolom sa má šifrovať (AES alebo 3DES) a ktorým sa má overiť (SHA alebo MD5).

Dve hlavné fázy IPsec

Zistili sme teda, že najprv sa musia účastníci dohodnúť, aké mechanizmy sa použijú na vytvorenie bezpečného spojenia, takže teraz prichádza na rad protokol IKE. IKE (Internet Key Exchange) sa používa na vytvorenie IPsec SA (Security Association, tie isté bezpečnostné zásady), inými slovami, na koordináciu práce účastníkov v zabezpečenom pripojení. Prostredníctvom tohto protokolu sa účastníci dohodnú na tom, ktorý šifrovací algoritmus sa použije, ktorý algoritmus sa použije na kontrolu integrity a ako sa budú navzájom autentifikovať. Treba poznamenať, že dnes existujú dve verzie protokolu: IKEv1 a IKEv2. Nás bude zaujímať iba IKEv1: napriek tomu, že ho IETF (The Internet Engineering Task Force) prvýkrát predstavila v roku 1998, stále sa veľmi bežne používa, najmä pre RA VPN (pozri obrázok 1).

Čo sa týka IKEv2, jeho prvé návrhy vznikli v roku 2005, bol plne opísaný v RFC 5996 (2010) a až koncom minulého roka bol ohlásený ako internetový štandard (RFC 7296). Viac o rozdieloch medzi IKEv1 a IKEv2 si môžete prečítať na bočnom paneli. Po vysporiadaní sa s IKE sa vraciame k fázam IPsec. V prvej fáze sa účastníci navzájom autentifikujú a dohodnú sa na parametroch pre nastavenie špeciálneho spojenia, určeného len na výmenu informácií o požadovaných šifrovacích algoritmoch a ďalších detailoch budúceho IPsec tunela. Parametre tohto prvého tunela (nazývaného aj tunel ISAKMP) určuje politika ISAKMP. Najprv sa dohodnú hashe a šifrovacie algoritmy, potom nasleduje výmena kľúčov Diffie-Hellman (DH) a až potom sa rozhodne, kto je kto. To znamená, že posledným krokom je proces autentifikácie, buď pomocou kľúča PSK alebo RSA. A ak sa strany dohodnú, tak vzniká ISAKMP tunel, cez ktorý už prechádza druhá fáza IKE.

V druhej fáze sa účastníci, ktorí si už dôverujú, dohodnú, ako vybudovať hlavný tunel na priamy prenos dát. Navzájom si ponúkajú možnosti špecifikované v parametri transform-set a ak súhlasia, zdvihnú hlavný tunel. Je dôležité zdôrazniť, že po zriadení sekundárny tunel ISAKMP nikam nesmeruje – používa sa na periodickú aktualizáciu SA hlavného tunela. Výsledkom je, že IPsec nejakým spôsobom vytvára nie jeden, ale dva celé tunely.

Ako spracovávať údaje

Teraz pár slov o transform-set. Dáta prechádzajúce tunelom je predsa potrebné nejako zašifrovať. Preto je v typickej konfigurácii transform-set súbor parametrov, ktoré explicitne špecifikujú, ako sa má balík spracovať. V súlade s tým existujú dve možnosti takéhoto spracovania údajov - sú to protokoly ESP a AH. ESP (Encapsulating Security Payload) sa zaoberá priamo šifrovaním údajov a môže tiež poskytnúť kontrolu integrity údajov. AH (Authentication Header) je zase zodpovedná len za autentifikáciu zdroja a kontrolu integrity údajov.

Napríklad príkaz crypto ipsec transform-set SET10 esp-aes povie routeru, že transform-set s názvom SET10 by mal fungovať iba s protokolom ESP a so šifrovaním AES. Pri pohľade do budúcnosti poviem, že ďalej použijeme smerovače a firewally Cisco ako cieľ. V skutočnosti je s ESP všetko viac-menej jasné, jeho úlohou je šifrovať a tým zabezpečiť dôvernosť, ale prečo potom potrebujeme AH? AH poskytuje autentifikáciu údajov, to znamená, že potvrdzuje, že tieto údaje pochádzajú od toho, s kým sme nadviazali spojenie, a neboli počas cesty zmenené. Poskytuje to, čo sa niekedy nazýva ochrana proti opakovanému prehrávaniu. V moderných sieťach sa AH prakticky nepoužíva, všade sa dá nájsť len ESP.

Parametre (aka SA) zvolené na šifrovanie informácií v tuneli IPsec majú životnosť, po ktorej musia byť vymenené. Predvolená životnosť IPsec SA je 86 400 sekúnd alebo 24 hodín.
Výsledkom bolo, že účastníci dostali šifrovaný tunel s parametrami, ktoré im všetkým vyhovujú, a posielajú tam dátové toky, ktoré sa majú zašifrovať. Periodicky, v súlade s životnosťou, sa aktualizujú šifrovacie kľúče pre hlavný tunel: účastníci sa znova pripájajú cez tunel ISAKMP, prechádzajú druhou fázou a obnovujú SA.

režimy IKEv1

Pozreli sme sa na základnú mechaniku fungovania IPsec ako prvé priblíženie, ale je tu niekoľko ďalších vecí, na ktoré sa treba zamerať. Prvá fáza okrem iného môže fungovať v dvoch režimoch: hlavný režim alebo agresívny režim. Prvú možnosť sme už zvažovali vyššie, no zaujíma nás agresívny režim. V tomto režime sa používajú tri správy (namiesto šiestich v hlavnom režime). Zároveň ten, kto iniciuje spojenie, dáva naraz všetky svoje údaje - čo chce a čo môže robiť, aj svoju časť ústredne CZT. Druhá strana potom okamžite dokončí svoju časť generácie DH. Výsledkom je, že v tomto režime sú v skutočnosti iba dve fázy. To znamená, že prvé dva stupne z hlavného režimu (koordinácia hashov a výmena DH) sú akoby zhustené do jedného. V dôsledku toho je tento režim oveľa nebezpečnejší z toho dôvodu, že veľa technická informácia v otvorenom texte. A čo je najdôležitejšie, brána VPN dokáže poslať hash hesla, ktoré sa používa na autentifikáciu v prvej fáze (toto heslo sa často nazýva predzdieľaný kľúč alebo PSK).

Všetko následné šifrovanie prebieha bez zmien, ako obvykle. Prečo sa teda tento režim stále používa? Faktom je, že je to oveľa rýchlejšie, asi dvakrát rýchlejšie. Pre pentestera je obzvlášť zaujímavá skutočnosť, že agresívny režim sa veľmi často používa v RA IPsec VPN. Ďalšia malá vlastnosť RA IPsec VPN pri použití agresívneho režimu: keď klient pristupuje na server, pošle mu identifikátor (názov skupiny). Názov skupiny tunela (pozri obrázok 2) je názov položky, ktorá obsahuje sadu politík pre toto pripojenie IPsec. Toto je už jedna z vlastností špecifických pre zariadenia Cisco.


Dve fázy nestačili

Zdalo by sa, že to dopadá a tak nie príliš jednoduchý obvod práce, no v skutočnosti je to predsa len trochu zložitejšie. Postupom času sa ukázalo, že len jeden PSK na zabezpečenie bezpečnosti nestačí. Ak je napríklad napadnutá pracovná stanica zamestnanca, útočník by mohol okamžite získať prístup do celej internej siete podniku. Preto bola fáza 1.5 vyvinutá práve medzi prvou a druhou klasickou fázou. Mimochodom, táto fáza sa zvyčajne nepoužíva pri štandardnom pripojení VPN typu site-to-site, ale používa sa pri organizovaní vzdialených pripojení VPN (náš prípad). Táto fáza obsahuje dve nové rozšírenia – Extended Authentication (XAUTH) a Mode-Configuration (MODECFG).

XAUTH je dodatočná autentifikácia užívateľa v rámci protokolu IKE. Táto autentifikácia sa niekedy označuje ako druhý faktor IPsec. No a na prenos slúži MODECFG Ďalšie informácie klient, môže to byť IP adresa, maska, DNS server atď. Je zrejmé, že táto fáza iba dopĺňa tie, ktoré sa predtým uvažovali, ale jej užitočnosť je nepopierateľná.

IKEv2 vs IKEv1

Oba protokoly fungujú na porte UDP číslo 500, sú však navzájom nekompatibilné, situácia nie je povolená pre IKEv1 na jednom konci tunela a IKEv2 na druhom konci. Tu sú hlavné rozdiely medzi druhou a prvou verziou:

  • V IKEv2 už neexistujú také pojmy ako agresívne alebo hlavné režimy.
  • V IKEv2 je termín prvá fáza nahradený IKE_SA_INIT (výmena dvoch správ, ktorá zabezpečuje vyjednanie šifrovacích/hashovacích protokolov a generovanie DH kľúčov) a druhá fáza je nahradená IKE_AUTH (tiež dve správy, ktoré implementujú skutočnú autentifikáciu).
  • Mode Config (to, čo sa v IKEv1 nazývalo fáza 1.5) je teraz popísané priamo v špecifikácii protokolu a je jej neoddeliteľnou súčasťou.
  • IKEv2 pridáva ďalší mechanizmus na ochranu pred útokmi DoS. Jej podstatou je, že VPN brána pred odpoveďou na každú požiadavku pri nadviazaní zabezpečeného spojenia (IKE_SA_INIT) IKEv2 odošle cookie zdroju takejto požiadavky a čaká na odpoveď. Ak zdroj odpovedal - všetko je v poriadku, môžete s ním začať generovať DH. Ak zdroj neodpovedá (čo sa stane v prípade útoku DoS, táto technika je podobná TCP SYN záplava), potom na to brána VPN jednoducho zabudne. Bez tohto mechanizmu by sa brána VPN pri každej požiadavke od kohokoľvek pokúšala vygenerovať DH kľúč (čo je dosť náročný proces na zdroje) a čoskoro by narazila na problémy. Výsledkom je, že vzhľadom na skutočnosť, že všetky operácie teraz vyžadujú potvrdenie z druhej strany pripojenia, nie je možné na napadnutom zariadení vytvoriť veľké množstvo polootvorených relácií.

Ideme na hranicu

Keď sme konečne prišli na zvláštnosti fungovania IPsec a jeho komponentov, môžeme prejsť k tomu hlavnému – k praktickým útokom. Topológia bude celkom jednoduchá a zároveň blízka realite (viď obr. 3).


Prvým krokom je určenie prítomnosti brány IPsec VPN. Môžete to urobiť vykonaním skenovania portov, ale je tu malý zvrat. ISAKMP používa protokol UDP, port 500, zatiaľ čo predvolené skenovanie pomocou Nmap ovplyvňuje iba porty TCP. A výsledkom bude správa: Všetkých 1000 naskenovaných portov na 37.59.0.253 je filtrovaných .

Zdá sa, že všetky porty sú filtrované a neexistujú žiadne otvorené porty. Ale po vykonaní príkazu

Nmap -sU --top-ports=20 37.59.0.253 Spustenie Nmap 6.47 (http://nmap.org) o 21.03.2015 12:29 GMT Správa skenovania Nmap pre 37.59.0.253 Hostiteľ je zapnutý (latencia 0,066 s) . ŠTÁTNA SLUŽBA PRÍSTAVU 500/udp otvorená isakmp

dbáme na to, aby to tak nebolo a naozaj máme pred sebou VPN zariadenie.

Útok na prvú fázu

Teraz nás bude zaujímať prvá fáza, agresívny režim a autentifikácia pomocou predzdieľaného kľúča (PSK). V tomto scenári si pamätajte, že zariadenie VPN alebo odpovedač odosiela hash PSK iniciátorovi. Jednou z najznámejších utilít na testovanie protokolu IKE je ike-scan, je súčasťou distribúcie Kali Linux. Ike-scan vám umožňuje posielať správy IKE s rôznymi parametrami a podľa toho dekódovať a analyzovať pakety odpovedí. Pokus o testovanie cieľového zariadenia:

[chránený e-mailom]:~# ike-scan -M -A 37.59.0.253 0 vrátené podanie ruky; 0 vrátené oznámenie

Prepínač -A znamená, že by sa mal použiť agresívny režim, a -M znamená, že výsledky by sa mali zobrazovať riadok po riadku (viacriadkové) pre ľahšie čítanie. Je vidieť, že sa nedosiahol žiadny výsledok. Dôvodom je, že musíte zadať rovnaký identifikátor, názov skupiny VPN. Samozrejme, pomôcka ike-scan umožňuje zadať tento identifikátor ako jeden z jeho parametrov. Ale keďže je nám stále neznámy, zoberme si ľubovoľnú hodnotu, napríklad 0000.

[chránený e-mailom]:~# ike-scan -M -A --id=0000 37.59.0.253 37.59.0.253 Handshake v agresívnom režime sa vrátil

Tentokrát vidíme, že odpoveď bola prijatá (pozri obr. 5) a bolo nám poskytnuté pomerne veľa užitočná informácia. Pomerne dôležitou prijatou informáciou je transformačný súbor. V našom prípade to hovorí "Enc=3DES Hash=SHA1 Group=2:modp1024 Auth=PSK".

Všetky tieto možnosti je možné zadať aj pre pomôcku ike-scan pomocou prepínača --trans. Napríklad --trans=5,2,1,2 by povedalo, že šifrovací algoritmus 3DES, hashovanie HMAC-SHA, metóda autentifikácie PSK a druhý typ skupiny DH (1024-bitový MODP). Tabuľky mapovania hodnôt si môžete pozrieť na tejto adrese. Pridajme ešte jeden kľúč (-P), aby sme priamo zobrazili užitočné zaťaženie balíka, alebo skôr hash PSK.

[chránený e-mailom]:~# ike-scan -M -A --id=0000 37.59.0.253 -P

Prekonanie prvých ťažkostí

Zdalo by sa, že hash bol prijatý a môžete sa ho pokúsiť brutálne, ale všetko nie je také jednoduché. Kedysi, v roku 2005, sa na nejakom hardvéri Cisco vyskytla zraniteľnosť: tieto zariadenia vrátili hash iba v prípade, že útočník preniesol správnu hodnotu ID. Teraz je už, samozrejme, takmer nemožné stretnúť sa s takýmto zariadením a hashovaná hodnota je odoslaná vždy, bez ohľadu na to, či útočník poslal správnu hodnotu ID alebo nie. Je zrejmé, že je zbytočné brutálne upravovať nesprávny hash. Prvou úlohou je preto určiť správnu hodnotu ID, aby ste získali správny hash. A k tomu nám pomôže nedávno objavená zraniteľnosť. Ide o to, že medzi odpoveďami pri prvotnej výmene správ je nepatrný rozdiel. Stručne povedané, pri použití správneho názvu skupiny existujú štyri pokusy o pokračovanie nadviazania pripojenia VPN plus dva šifrované pakety druhej fázy. Zatiaľ čo v prípade nesprávneho ID prichádzajú ako odpoveď iba dva pakety. Ako vidíte, rozdiel je dosť výrazný, a tak SpiderLabs (autor nemenej zaujímavého nástroja Responder) najprv vyvinul PoC a potom utilitu IKEForce na zneužitie tejto zraniteľnosti.

Aká je sila IKE

IKEForce môžete nainštalovať do ľubovoľného adresára spustením príkazu

Git klon https://github.com/SpiderLabs/ikeforce

Pracuje v dvoch hlavných režimoch – výpočtový režim -e (výpočet) a režim hrubej sily -b (bruteforce). K druhému sa dostaneme, keď sa pozrieme na útoky na druhý faktor, no teraz sa budeme zaoberať tým prvým. Pred začatím samotného procesu určenia ID musíte nastaviť presnú hodnotu transform-set. Už sme ho definovali skôr, takže ho špecifikujeme voľbou -t 5 2 1 2. V dôsledku toho bude proces nájdenia ID vyzerať takto:

Python ikeforce.py 37.59.0.253 -e -w zoznamy slov/skupina.txt -t 5 2 1 2

V dôsledku toho sa pomerne rýchlo získala správna hodnota ID (obr. 7). Prvý krok prešiel, môžete ísť ďalej.

Získajte PSK

Teraz je potrebné pomocou správneho názvu skupiny uložiť hash PSK do súboru, to sa dá urobiť pomocou ike-scan:

Ike-scan -M -A --id=vpn 37.59.0.253 -Pkey.psk

A teraz, keď bola vybratá správna hodnota ID a bol získaný správny hash PSK, môžeme konečne začať offline hrubú silu. Existuje veľa možností pre takúto hrubú silu - toto je klasický nástroj psk-crack a John the Ripper (s jumbo patchom) a dokonca aj oclHashcat, ktorý, ako viete, vám umožňuje využívať výkon GPU . Pre jednoduchosť použijeme psk-crack, ktorý podporuje priame útoky hrubou silou aj slovníkové útoky:

Psk-crack -d /usr/share/ike-scan/psk-crack-dictionary key.psk

Ale aj úspešné obnovenie PSK (pozri obrázok 8) je len polovica úspechu. V tejto fáze si musíme uvedomiť, že na nás čaká XAUTH a druhý faktor IPsec VPN.

Zaoberanie sa druhým faktorom IPsec

Dovoľte mi teda pripomenúť, že XAUTH je dodatočná ochrana, druhý autentifikačný faktor a je vo fáze 1.5. Pre XAUTH môže byť viacero možností – ide o kontrolu pomocou protokolu RADIUS, a jednorazové heslá(OTP) a obvyklú miestnu používateľskú základňu. Zameriame sa na štandardnú situáciu, kedy sa na kontrolu druhého faktora používa lokálna používateľská základňa. Až donedávna neexistoval žiadny verejne dostupný nástroj hrubej sily XAUTH. Ale s príchodom IKEForce táto úloha dostala dôstojné riešenie. Hrubá sila XAUTH sa spúšťa celkom jednoducho:

Python ikeforce.py 37.59.0.253 -b -i vpn -k cisco123 -u admin -w wordlists/passwd.txt -t 5 2 1 2 [+]Program spustený v XAUTH Brute Force Mode [+]Zabezpečený jeden používateľ - hrubé vynútenie heslá pre používateľa: admin [*]Autentifikácia XAUTH bola úspešná! Používateľské meno: admin Heslo: cisco

V tomto prípade sú uvedené všetky predtým nájdené hodnoty: ID (kľúč -i), obnovený PSK (kľúč -k) a predpokladané prihlásenie (kľúč -u). IKEForce podporuje vyhľadávanie hrubou silou prihlásenia aj iteráciu zoznamu prihlásení, ktoré je možné zadať pomocou parametra -U. V prípade možného blokovania zápasu je tu možnosť -s, ktorá umožňuje znížiť rýchlosť hrubej sily. Mimochodom, pomôcka prichádza s niekoľkými dobrými slovníkmi, ktoré sú užitočné najmä na nastavenie hodnoty parametra ID.

Vstup do internej siete

Teraz, keď máme všetky dáta, zostáva posledný krok – samotný prienik do lokálnej siete. Na to potrebujeme nejakého VPN klienta, ktorých je veľmi veľa. Ale v prípade Kali môžete jednoducho použiť už predinštalované - VPNC. Aby to fungovalo, musíte opraviť jeden konfiguračný súbor - /etc/vpnc/vpn.conf . Ak tam nie je, musíte vytvoriť a vyplniť niekoľko zrejmých parametrov:

IPSec brána 37.59.0.253 IPSec ID vpn IPSec tajné cisco123 IKE Authmode psk Xauth Používateľské meno admin Xauth heslo cisco

Tu vidíme, že boli použité úplne všetky údaje nájdené v predchádzajúcich krokoch – hodnota ID, PSK, login a heslo druhého faktora. Potom dôjde k samotnému pripojeniu jedným príkazom:

[chránený e-mailom]:~# vpnc vpn

Deaktivácia je tiež celkom jednoduchá:

[chránený e-mailom]:~# vpnc-disconnect

Či pripojenie funguje, môžete skontrolovať pomocou príkazu ifconfig tun0.

Ako vybudovať silnú ochranu

Ochrana proti útokom, o ktorých sa dnes diskutuje, by mala byť komplexná: musíte inštalovať záplaty včas, používať silné predzdieľané kľúče, ktoré by sa podľa možnosti mali úplne nahradiť digitálnymi certifikátmi. Pri zabezpečovaní bezpečnosti zohráva dôležitú úlohu aj politika hesiel a ďalšie zrejmé prvky informačnej bezpečnosti. Treba si tiež uvedomiť, že situácia sa postupne mení a časom zostane len IKEv2.

Aký je výsledok

Podrobne sme sa venovali procesu auditu RA IPsec VPN. Áno, samozrejme, táto úloha nie je ani zďaleka triviálna. Je potrebné urobiť veľa krokov a na každý z nich môžu čakať ťažkosti, no ak sa podarí, výsledok je viac než pôsobivý. Získanie prístupu k vnútorným zdrojom siete otvára najširšie možnosti ďalšia akcia. Preto by sa tí, ktorí sú zodpovední za ochranu perimetra siete, nemali spoliehať na hotové predvolené šablóny, ale dôkladne zvážiť každú vrstvu zabezpečenia. Pre tých, ktorí vykonávajú penetračné testy, je zistený port UDP 500 príležitosťou vykonať hĺbkovú analýzu zabezpečenia IPsec VPN a prípadne získať dobré výsledky.

0 Tento článok poskytuje prehľad IPSEC (IP Security) a súvisiacich protokolov IPSec dostupných v produktoch Cisco a používaných na vytváranie virtuálnych privátnych sietí (VPN). V tomto článku definujeme, čo je IPSEC a aké protokoly a bezpečnostné algoritmy sú základom IPSEC.

Úvod

IP Security je sada protokolov zaoberajúcich sa šifrovaním, autentifikáciou a bezpečnosťou pri prenose IP paketov; teraz obsahuje takmer 20 návrhov noriem a 18 RFC.

Produkty Cisco VPN využívajú sadu protokolov IPSec, čo je dnes priemyselný štandard pre poskytovanie bohatých funkcií VPN. IPSec poskytuje mechanizmus na bezpečný prenos dát cez IP siete, zaisťuje dôvernosť, integritu a platnosť dát prenášaných cez nezabezpečené siete, ako je internet. IPSec poskytuje nasledujúce možnosti VPN v sieťach Cisco:

  • Ochrana osobných údajov. Odosielateľ údajov IPSec má schopnosť zašifrovať pakety pred ich odovzdaním cez sieť.
  • Integrita údajov. Prijímač údajov IPSec má schopnosť autentifikovať strany, ktoré s ním komunikujú (zariadenia alebo softvér, kde sa začínajú a končia tunely IPSec) a pakety IPSec odoslané týmito stranami, aby sa zabezpečilo, že údaje neboli počas prenosu zmenené.
  • Overenie pôvodu údajov. Prijímač IPSec má schopnosť autentifikovať zdroj paketov IPSec, ktoré prijíma. Táto služba závisí od služby integrity údajov.
  • Ochrana hry. Prijímač IPSec dokáže detekovať a odmietnuť prehrávané pakety, čím zabraňuje ich sfalšovaniu a útokom typu man-in-the-middle.

IPSec je na štandardoch založený súbor bezpečnostných protokolov a algoritmov. Technológia IPSec a súvisiace bezpečnostné protokoly sú v súlade s otvorenými štandardmi udržiavanými IETF (Internet Engineering Task Force) a popísanými v špecifikáciách RFC a návrhoch IETF. IPSec funguje na sieťovej vrstve a poskytuje bezpečnosť a autentifikáciu pre IP pakety odosielané medzi IPSec zariadeniami (stranami), ako sú Cisco smerovače, PIX Firewally, Cisco VPN klienti a koncentrátory a mnoho ďalších produktov, ktoré podporujú IPSec. Podpora IPSec umožňuje škálovanie od najmenších po veľmi veľké siete.

Security Association (SA)

IPSec poskytuje štandardný spôsob autentifikácie a šifrovania komunikácie medzi komunikujúcimi stranami. Na zabezpečenie komunikácie používa IPSec štandardné šifrovacie a autentifikačné algoritmy (t.j. matematické vzorce) nazývané preklady. IPSec využíva otvorené štandardy na vyjednávanie šifrovacích kľúčov a správu pripojení, aby sa umožnila interoperabilita medzi stranami. Technológia IPSec poskytuje metódy, ktoré umožňujú stranám IPSec „vyjednať“ dohodnuté používanie služieb. IPSec používa bezpečnostné priradenia na špecifikovanie parametrov na vyjednávanie.

Združenie obrany(Security Association - SA) je dohodnutá politika alebo spôsob nakladania s údajmi, ktoré sa majú vymieňať medzi dvoma zariadeniami komunikujúcich strán. Jednou zo súčastí takejto politiky môže byť algoritmus používaný na šifrovanie údajov. Obe strany môžu použiť rovnaký algoritmus na šifrovanie aj dešifrovanie. Platné parametre SA sú uložené v databáze bezpečnostných asociácií (SAD) oboch strán.

Dva počítače na každej strane SA ukladajú režim, protokol, algoritmy a kľúče používané v SA. Každá SA sa používa iba v jednom smere. Na obojsmernú komunikáciu sú potrebné dve SA. Každá SA implementuje jeden režim a protokol; teda, ak je potrebné použiť dva protokoly (ako AH a ESP) pre jeden paket, potom sú potrebné dva SA.

IKE (Internet Key Exchange) je hybridný protokol, ktorý poskytuje špecifické služby pre IPSec, menovite autentifikáciu strany IPSec, vyjednávanie parametrov priradenia zabezpečenia IKE a IPSec a výber kľúča pre šifrovacie algoritmy používané v rámci IPSec. Protokol IKE sa spolieha na protokoly Internet Security Association and Key Management Protocol (ISAKMP) a Oakley, ktoré sa používajú na riadenie generovania a spracovania šifrovacích kľúčov používaných pri transformáciách IPSec. Protokol IKE sa tiež používa na vytváranie bezpečnostných asociácií medzi potenciálnymi stranami IPSec.
IKE aj IPSec používajú bezpečnostné priradenia na špecifikáciu komunikačných parametrov.
IKE podporuje sadu rôznych primitívnych funkcií na použitie v protokoloch. Medzi nimi je hašovacia funkcia a pseudonáhodná funkcia (PRF).

hašovacia funkcia je funkcia odolná voči kolíziám. Odolnosťou voči kolízii sa rozumie skutočnosť, že nie je možné nájsť dve rôzne správy m1 a m2 tak, že

H(m1)=H(m2), kde H je hašovacia funkcia.

Čo sa týka pseudonáhodných funkcií, v súčasnosti sa v dizajne HMAC namiesto špeciálnych PRF používa hašovacia funkcia (HMAC je mechanizmus autentifikácie správ pomocou hašovacích funkcií). Na určenie HMAC potrebujeme kryptografickú hašovaciu funkciu (označenú ako H) a tajný kľúč K. Predpokladáme, že H je hašovacia funkcia, kde sú údaje hašované pomocou kompresnej procedúry aplikovanej postupne na sekvenciu dátových blokov. Dĺžku takýchto blokov v bajtoch a dĺžku blokov získanú v dôsledku hašovania označíme ako L (L
ipad = byte 0x36 opakovaný B-krát;
opad = byte 0x5C opakovaný B-krát.

Ak chcete vypočítať HMAC z „textových“ údajov, musíte vykonať nasledujúcu operáciu:

H(K XOR opad, H(K XOR ipad, text))

Z popisu vyplýva, že IKE používa hodnoty HASH na autentifikáciu strán. Všimnite si, že HASH v tomto prípade znamená iba názov Payload v ISAKMP a tento názov nemá nič spoločné s jeho obsahom.

IPSec infraštruktúra

IPSec VPN je možné vytvoriť pomocou rôznych zariadení Cisco – smerovače Cisco, brány CiscoSecure PIX Firewall, klientsky softvér CiscoSecure VPN a koncentrátory série Cisco VPN 3000 a 5000. iOS, ktorý znižuje zložitosť sieťové riešenia a znižuje celkové náklady na VPN s možnosťou vybudovania viacúrovňovej ochrany poskytovaných služieb. PIX Firewall má vysoký výkon sieťové zariadenie, ktorý môže slúžiť koncovým bodom tunela a poskytuje im vysoké priepustnosť a nádherná funkčnosť POŽARNE DVERE. softvér Klient CiscoSecure VPN podporuje najprísnejšie požiadavky VPN na vzdialený prístup pre aplikácie elektronického obchodu a mobilného prístupu, ponúka kompletnú implementáciu štandardov IPSec a zaisťuje spoľahlivú interoperabilitu medzi smerovačmi Cisco a bránami PIX Firewall.

Ako funguje IPSec


IPSec sa spolieha na množstvo technologických riešení a metód šifrovania, ale fungovanie IPSec možno zhrnúť do nasledujúcich hlavných krokov:
  • Krok 1: Začnite proces IPSec. Prevádzka, ktorá musí byť šifrovaná podľa bezpečnostnej politiky IPSec dohodnutej stranami IPSec, spustí proces IKE.
  • Krok 2 Fáza IKE. Proces IKE overuje IPSec strany a vyjednáva parametre priradenia zabezpečenia IKE, čím sa vytvorí bezpečný kanál na vyjednávanie parametrov priradenia zabezpečenia IPSec počas druhej fázy IKE.
  • Krok 3 Fáza 2 IKE. Proces IKE dohodne parametre priradenia zabezpečenia IPSec a vytvorí vhodné priradenia zabezpečenia IPSec pre zariadenia komunikujúcich strán.
  • Krok 4. Prenos dát. Komunikácia prebieha medzi IPSec komunikujúcimi stranami, ktorá je založená na IPSec parametroch a kľúčoch uložených v databáze bezpečnostných asociácií.
  • Krok 5: Ukončite tunel IPSec. Priradenia zabezpečenia IPSec sú ukončené buď v dôsledku ich vymazania, alebo preto, že prekročili svoj limit životnosti.
Nasledujúce časti popisujú tieto kroky podrobnejšie.

stručné historické pozadie vzhľadu protokolu

V roku 1994 vydala Rada pre internetovú architektúru (IAB) správu „Internet Architectural Security“. Tento dokument popisuje hlavné oblasti použitia dodatočných bezpečnostných nástrojov na internete, konkrétne ochranu pred neoprávneným monitorovaním, spoofing paketov a kontrolu toku údajov. Medzi prioritné a najdôležitejšie ochranné opatrenia bola označená potreba vypracovať koncepciu a základné mechanizmy na zabezpečenie integrity a dôvernosti dátových tokov. Keďže zmena základných protokolov rodiny TCP/IP by spôsobila úplnú reštrukturalizáciu internetu, úlohou bolo zabezpečiť bezpečnosť výmeny informácií v otvorených telekomunikačných sieťach založených na existujúcich protokoloch. Začala sa tak vytvárať špecifikácia Secure IP, ktorá dopĺňa protokoly IPv4 a IPv6.

Architektúra IPSec

IP Security je sada protokolov zaoberajúcich sa šifrovaním, autentifikáciou a bezpečnosťou pri prenose IP paketov; teraz obsahuje takmer 20 návrhov noriem a 18 RFC.
Špecifikáciu IP Security (dnes známu ako IPsec) vyvíja pracovná skupina IP Security Protocol IETF. IPsec spočiatku obsahoval 3 základné špecifikácie nezávislé od algoritmov publikované ako RFC „IP Security Architecture“, „Authentication Header (AH)“, „Encrypted Data Encapsulation (ESP)“ (RFC1825, 1826 a 1827). Je potrebné poznamenať, že v novembri 1998 Pracovná skupina pre protokol zabezpečenia IP navrhla nové verzie týchto špecifikácií, ktoré majú v súčasnosti štatút predbežných noriem, ide o RFC2401 - RFC2412. Všimnite si, že RFC1825-27 sa už niekoľko rokov považuje za zastaraný a v skutočnosti sa nepoužíva. Okrem toho existuje niekoľko špecifikácií závislých od algoritmu, ktoré používajú protokoly MD5, SHA, DES.

Obr.1. Architektúra IPSec

IP Security Protocol Working Group tiež vyvíja protokoly správy kľúčových informácií. Úlohou tejto skupiny je vyvinúť Internet Key Management Protocol (IKMP), protokol správy kľúčov aplikačnej vrstvy, ktorý je nezávislý od používaných bezpečnostných protokolov. Koncepcie správy kľúčov sa v súčasnosti zvažujú pomocou špecifikácie Internet Security Association a Key Management Protocol (ISAKMP) a protokolu Oakley Key Determination Protocol. Špecifikácia ISAKMP popisuje mechanizmy vyjednávania o atribútoch používaných protokolov, zatiaľ čo protokol Oakley umožňuje nastaviť kľúče relácie na počítačoch na internete. Predtým sa uvažovalo aj o možnostiach využitia mechanizmov správy kľúčov SKIP, no v súčasnosti sa takéto možnosti prakticky nikde nevyužívajú. Štandardy správy kľúčových informácií, ktoré sa vytvárajú, budú pravdepodobne podporovať centrá distribúcie kľúčov podobné tým, ktoré sa používajú v systéme Kerberos. Protokoly správa kľúčov pre IPSec na báze Kerberos na ňom v súčasnosti pracuje relatívne nová pracovná skupina KINK (Kerberized Internet Negotiation of Keys).
Záruky integrity a dôvernosti údajov v špecifikácii IPsec sú poskytované prostredníctvom mechanizmov autentifikácie a šifrovania. Tie sú zasa založené na predbežnej dohode strán o takzvanej výmene informácií. "bezpečnostný kontext" - použité kryptografické algoritmy, algoritmy správy kľúčových informácií a ich parametre. Špecifikácia IPsec poskytuje stranám možnosť vymieňať si informácie na podporu rôznych protokolov a parametrov na autentifikáciu a šifrovanie dátových paketov, ako aj rôznych schém distribúcie kľúčov. Výsledkom vyjednávania o bezpečnostnom kontexte je zároveň stanovenie indexu bezpečnostných parametrov (SPI), ktorý je ukazovateľom na určitý prvok vnútornej štruktúry strany výmeny informácií, ktorý popisuje možné súbory bezpečnostných parametrov.
V skutočnosti IPSec, ktorý sa stane súčasťou IPv6, funguje na tretej vrstve, teda na sieťovej vrstve. V dôsledku toho budú prenášané IP pakety chránené spôsobom, ktorý je transparentný pre sieťové aplikácie a infraštruktúru. Na rozdiel od protokolu SSL (Secure Socket Layer), ktorý funguje na štvrtej (t. j. transportnej) vrstve a je užšie spojený s vyššími vrstvami modelu OSI, je IPSec navrhnutý tak, aby poskytoval bezpečnosť na nízkej úrovni.

Obr.2. Model OSI/ISO

IPSec pridáva hlavičku k údajom IP pripraveným na odoslanie cez VPN na identifikáciu chránených paketov. Pred prenosom cez internet sú tieto pakety zapuzdrené do iných IP paketov. IPSec podporuje niekoľko typov šifrovania, vrátane Data Encryption Standard (DES) a Message Digest 5 (MD5).
Na vytvorenie bezpečného spojenia sa musia byť obaja účastníci relácie schopní rýchlo dohodnúť na bezpečnostných parametroch, ako sú autentifikačné algoritmy a kľúče. IPSec podporuje dva typy schém správy kľúčov, prostredníctvom ktorých môžu účastníci vyjednávať parametre relácie. Táto dvojitá podpora spôsobila v pracovnej skupine IETF v tom čase určité rozpory.
S aktuálnou verziou IP, IPv4, je možné použiť buď Internet Secure Association Key Management Protocol (ISAKMP) alebo Simple Key Management for Internet Protocol. S novou verziou IP, IPv6, sa bude musieť použiť ISAKMP, teraz známy ako IKE, hoci SKIP je stále možné. Treba však mať na pamäti, že SKIP sa už nepovažuje za kľúčového kandidáta na manažment a už v roku 1997 bol vyškrtnutý zo zoznamu možných kandidátov.

AH a ESP hlavičky

Hlavička overenia AH

Autentifikačná hlavička (AH) je normálna voliteľná hlavička a zvyčajne sa nachádza medzi hlavičkou hlavného IP paketu a dátovým poľom. Prítomnosť AH neovplyvňuje proces prenosu informácií transportných a vyšších vrstiev. Hlavným a jediným účelom AH je poskytnúť ochranu pred útokmi spojenými s neoprávnenými zmenami obsahu balíka, a to aj pred sfalšovaním zdrojovej adresy. sieťová vrstva. Protokoly vyššej úrovne sa musia upraviť, aby bolo možné overiť pravosť prijatých údajov.
Formát AH je pomerne jednoduchý a pozostáva z 96-bitovej hlavičky a údajov s premenlivou dĺžkou 32-bitových slov. Názvy polí celkom jasne odrážajú ich obsah: Next Header označuje nasledujúcu hlavičku, Payload Len predstavuje dĺžku paketu, SPI je ukazovateľ na bezpečnostný kontext a Sequence Number Field obsahuje poradové číslo paketu.

Obr.3. Formát hlavičky AH

Sekvenčné číslo paketu bolo zavedené do AH v roku 1997 počas procesu revízie špecifikácie IPsec. Hodnotu tohto poľa generuje odosielateľ a slúži na ochranu pred útokmi súvisiacimi s opätovným použitím dát autentifikačného procesu. Keďže internet negarantuje poradie, v akom budú pakety doručené, príjemca musí uchovávať informácie o maximálnom sekvenčnom čísle paketu, ktorý bol úspešne overený, a o prijatí určitého počtu paketov obsahujúcich predchádzajúce poradové čísla (zvyčajne je toto číslo 64).
Na rozdiel od algoritmov na výpočet kontrolného súčtu používaných v protokoloch na prenos informácií cez dial-up komunikačné linky alebo cez LAN kanály a zameraných na opravu náhodných chýb v prenosovom médiu, mechanizmy integrity dát v otvorených telekomunikačných sieťach musia mať prostriedky ochrany proti cielené zmeny. Jedným z týchto mechanizmov je špeciálna aplikácia algoritmu MD5: počas tvorby AH sa postupne vypočítava hašovacia funkcia z kombinácie samotného paketu a nejakého vopred dohodnutého kľúča a potom z kombinácie výsledku a transformovaného kľúč. Tento mechanizmus sa štandardne používa s cieľom poskytnúť všetkým implementáciám IPv6 aspoň jeden spoločný algoritmus, ktorý nepodlieha exportným obmedzeniam.

zapuzdrenie zašifrovaných dát ESP

V prípade zapuzdrenia šifrovaných dát je hlavička ESP posledná z voliteľných hlavičiek "viditeľných" v pakete. Keďže hlavným účelom ESP je zabezpečiť dôvernosť údajov, rôzne typy informácií môžu vyžadovať použitie výrazne odlišných šifrovacích algoritmov. Preto môže formát ESP prejsť významnými zmenami v závislosti od použitých kryptografických algoritmov. Je však možné rozlíšiť nasledujúce povinné polia: SPI označujúce bezpečnostný kontext a Sekvenčné číslo Pole obsahujúce poradové číslo paketu. Pole "ESP Authentication Data" (kontrolný súčet) je v hlavičke ESP nepovinné. Príjemca paketu ESP dešifruje hlavičku ESP a použije parametre a dáta použitého šifrovacieho algoritmu na dekódovanie informácií transportnej vrstvy.

Obr.4. Formát hlavičky ESP

Existujú dva spôsoby použitia ESP a AH (ako aj ich kombinácie) - doprava a tunel:
Transportný režim sa používa na šifrovanie dátového poľa IP paketu obsahujúceho protokoly transportnej vrstvy (TCP, UDP, ICMP), ktoré zase obsahuje informácie o aplikačných službách. Príkladom aplikácie transportného režimu je prenos Email. Všetky medziľahlé uzly na ceste paketu od odosielateľa k prijímaču používajú iba informácie o vrstve verejnej siete a prípadne niektoré voliteľné hlavičky paketov (v IPv6). Nevýhodou transportného režimu je nedostatok mechanizmov na skrytie konkrétneho odosielateľa a príjemcu paketu, ako aj možnosť analýzy prevádzky. Výsledkom takejto analýzy môžu byť informácie o objeme a smere prenosu informácií, oblastiach záujmu predplatiteľov, umiestnení manažérov.
Tunelový režim zašifruje celý paket vrátane hlavičky sieťovej vrstvy. Tunelový režim sa používa, keď je potrebné skryť výmenu informácií organizácie s vonkajším svetom. Zároveň sú polia adries hlavičky sieťovej vrstvy paketu využívajúceho režim tunela vyplnené firewallom organizácie a neobsahujú informácie o konkrétnom odosielateľovi paketu. Pri prenose informácií z vonkajšieho sveta do lokálnej siete organizácie sa ako cieľová adresa používa sieťová adresa brány firewall. Keď firewall dešifruje úvodnú hlavičku sieťovej vrstvy, paket sa odošle príjemcovi.

bezpečnostné asociácie

Asociácia zabezpečenia (SA) je spojenie, ktoré poskytuje bezpečnostné služby pre prenos, ktorý ním prechádza. Dva počítače na každej strane SA ukladajú režim, protokol, algoritmy a kľúče používané v SA. Každá SA sa používa iba v jednom smere. Na obojsmernú komunikáciu sú potrebné dve SA. Každá SA implementuje jeden režim a protokol; teda, ak je potrebné použiť dva protokoly (ako AH a ESP) pre jeden paket, potom sú potrebné dva SA.

bezpečnostná politika

Bezpečnostná politika je uložená v SPD (Security Policy Database). SPD môže špecifikovať jednu z troch akcií pre dátový paket: zahodiť paket, nespracovať paket pomocou IPSec, spracovať paket pomocou IPSec. V druhom prípade SPD tiež špecifikuje, ktorý SA má použiť (samozrejme za predpokladu, že vhodný SA už bol vytvorený) alebo špecifikuje, s akými parametrami má byť vytvorený nový SA.
SPD je veľmi flexibilný riadiaci mechanizmus, ktorý umožňuje veľmi dobré riadenie spracovanie každého paketu. Pakety sú klasifikované podľa veľkého počtu polí a SPD môže skontrolovať niektoré alebo všetky polia, aby určil vhodnú akciu. To môže viesť k tomu, že všetka prevádzka medzi dvoma počítačmi bude odoslaná pomocou jedného SA alebo že sa pre každú aplikáciu alebo dokonca pre každé TCP spojenie použijú samostatné SA.

ISAKMP/Oakley protokol

Protokol ISAKMP definuje všeobecnú štruktúru protokolov, ktoré sa používajú na vytvorenie SA a na vykonávanie ďalších funkcií správy kľúčov. ISAKMP podporuje niekoľko domén interpretácie (DOI), jednou z nich je IPSec-DOI. ISAKMP nedefinuje úplný protokol, ale poskytuje „stavebné bloky“ pre rôzne DOI a protokoly výmeny kľúčov.
Protokol Oakley je protokol na určenie kľúča využívajúci algoritmus na nahradenie kľúča Diffie-Hellman. Protokol Oakley podporuje Perfect Forward Secrecy (PFS). Prítomnosť PFS znamená, že všetku komunikáciu nemožno dešifrovať, ak je ohrozený akýkoľvek kľúč v systéme.

protokol IKE

IKE je predvolený protokol výmeny kľúčov pre ISAKMP av súčasnosti je jediný. IKE stojí na vrchole ISAKMP a skutočne zakladá ISAKMP SA aj IPSec SA. IKE podporuje sadu rôznych primitívnych funkcií na použitie v protokoloch. Medzi nimi je hašovacia funkcia a pseudonáhodná funkcia (PRF).
Hašovacia funkcia je funkcia, ktorá je odolná voči kolíziám. Odolnosť voči kolízii je chápaná ako skutočnosť, že nie je možné nájsť dve rôzne správy m1 a m2 tak, že H(m1)=H(m2), kde H je hašovacia funkcia.
Čo sa týka pseudonáhodných funkcií, v súčasnosti sa v dizajne HMAC namiesto špeciálnych PRF používa hašovacia funkcia (HMAC je mechanizmus autentifikácie správ pomocou hašovacích funkcií). Na definovanie HMAC potrebujeme kryptografickú hašovaciu funkciu (označenú ako H) a tajný kľúč K. Predpokladáme, že H je hašovacia funkcia, kde sa údaje hašujú pomocou kompresnej procedúry aplikovanej sekvenčne na sekvenciu dátových blokov. Dĺžku takýchto blokov v bajtoch a dĺžku blokov získanú v dôsledku hašovania označíme ako L (L

ipad = byte 0x36 opakovaný B-krát;
opad = byte 0x5C opakovaný B-krát.

Ak chcete vypočítať HMAC z „textových“ údajov, musíte vykonať nasledujúcu operáciu:

H(K XOR opad, H(K XOR ipad, text))

Z popisu vyplýva, že IKE používa hodnoty HASH na autentifikáciu strán. Všimnite si, že HASH v tomto prípade odkazuje výlučne na názov Payload v ISAKMP a tento názov nemá nič spoločné s jeho obsahom.

útoky na AH, ESP a IKE

Všetky typy útokov na komponenty IPSec možno rozdeliť do nasledujúcich skupín: útoky využívajúce obmedzenosť systémových prostriedkov (typickým príkladom je útok Denial of Service, Denial-of-service alebo útok DOS), útoky využívajúce funkcie a chyby konkrétnej implementácie IPSec a napokon útoky založené na slabinách samotných protokolov AH a ESP. Čisto kryptografické útoky možno ignorovať – oba protokoly definujú pojem „transformácií“, kde je všetka kryptografia skrytá. Ak je použitý kryptoalgoritmus odolný a transformácia ním definovaná neprináša ďalšie slabiny (nie je to vždy tak, preto je správnejšie zvážiť stabilitu celého systému - Protocol-Transform-Algorithm), potom z toho zo strany je všetko v poriadku. Čo zostáva? Replay Attack - vyrovnaný pomocou Sequence Number (v jednom jedinom prípade nefunguje - pri použití ESP bez autentifikácie a bez AH). Ďalej, poradie akcií (najprv šifrovanie, potom autentifikácia) zaručuje rýchle odmietnutie „zlých“ paketov (navyše podľa najnovších výskumov vo svete kryptografie je práve toto poradie akcií najbezpečnejšie, opačné poradie v niektorých, aj keď veľmi špeciálnych prípadoch, môže viesť k potenciálnym bezpečnostným dieram, našťastie ani SSL, ani IKE, ani iné bežné protokoly s protokolom „najskôr overiť, potom zašifrovať“ medzi tieto špeciálne prípady nepatria, a preto nemajú tieto otvory). Čo zostáva, je útok Denial-Of-Service.

Ako viete, ide o útok, proti ktorému neexistuje úplná ochrana. Rýchle odmietnutie zlých paketov a absencia akejkoľvek vonkajšej reakcie na ne (podľa RFC) však umožňuje vysporiadať sa s týmto útokom viac-menej dobre. V zásade platí, že väčšine (ak nie všetkým) známym sieťovým útokom (sniffing, spoofing, hijacking, atď.) úspešne čelia AH a ESP, ak sa používajú správne. S IKE je to trochu zložitejšie. Protokol je veľmi zložitý, ťažko sa analyzuje. Navyše kvôli preklepom (vo vzorci na výpočet HASH_R) pri jej písaní a nie celkom úspešným riešeniam (rovnaké HASH_R a HASH_I) obsahuje niekoľko potenciálnych „dier“ (najmä nie všetky Payloady v správe sú overené v prvá fáza), nie sú však veľmi závažné a vedú nanajvýš k odmietnutiu nadviazania spojenia IKE je viac či menej úspešne chránené pred útokmi, ako sú opakované prehrávanie, spoofing, sniffing, hijacking. S kryptografiou je to o niečo komplikovanejšie – nerenderuje sa oddelene, ako v AH a ESP, ale je implementované v samotnom protokole. Pri použití perzistentných algoritmov a primitív (PRF) by však nemali nastať žiadne problémy. Do určitej miery možno považovať za slabinu IPsec, že ​​DES je v súčasných špecifikáciách indikovaný ako jediný povinný kryptalgoritmus na implementáciu (to platí pre ESP aj IKE), ktorého 56 bitov kľúča sa už nezohľadňuje dostatočné. Ide však o čisto formálnu slabinu – samotné špecifikácie sú nezávislé od algoritmu a takmer všetci známi predajcovia už dávno implementovali 3DES (a niektorí už implementovali AES). Ak sa teda implementuje správne, Denial-Of-Service zostáva „najnebezpečnejší“ útok.

Hodnotenie protokolu IPSec

Protokol IPSec získal zmiešané recenzie od odborníkov. Na jednej strane je potrebné poznamenať, že protokol IPSec je najlepší zo všetkých ostatných protokolov na ochranu údajov prenášaných cez sieť, vyvinutých skôr (vrátane protokolu vyvinutého spoločnosťou Microsoft PPTP). Podľa druhej strany ide o nadmernú zložitosť a redundanciu protokolu. Napríklad Niels Ferguson a Bruce Schneier vo svojej práci „A Cryptographic Evaluation of IPsec“ poznamenávajú, že našli vážne bezpečnostné problémy takmer vo všetkých hlavných komponentoch IPsec. Títo autori tiež poukazujú na to, že balík protokolov vyžaduje veľa práce, aby poskytoval dobrú úroveň zabezpečenia.