5Výměna klíčů u protokolu IPSec – metoda ISAKMP/IKE

Výměna klíčů mezi klienty před započetím vlastní zabezpečené komunikace je důležitá hned z několika hledisek. Vyvstává zde však otázka, jak vlastně řešit bezpečnou výměnu klíčů? Před vlastní komunikací je nutné zajistit:

1. dohodu na typu klíče a způsobu jeho tvorby, tj. stanovit sdílený klíč PSK (Pre-Shared Key)
2. autentizaci účastníků, tj. vzájemné ověření identity účastníků komunikace
3. ochranu identity účastníků, tj. pasivní útočník nemá být schopen odhalit identitu účastníků pouhým sledováním komunikace
4. ochranu proti DoS (Denial of Service), tj. zlomyslný uživatel by neměl být schopný zneužít protokol tak, aby nutil protistranu plýtvat zdroji (CPU (Central Processing Unit), pamět, kapacita úložiště,…)

Protokol ISAKMP je definován doporučením RFC 2408. Pro svou činnost využívá transportní protokol UDP na portu 500.

Protokol ISAKMP je obecným protokolem pro vytváření SA, tj. neřeší, jak konkrétně se mají autentizované klíče vyměnit. To je práce protokolu IKE. Protokol ISAKMP slouží k autentizaci komunikujících stran a výměně dat pro šifrovací klíče.

Nejedná se o komunikaci typu Klient-Server, ale typu Výzva-Odpověď. Strana, která chce vytvořit nové SA iniciuje komunikaci protokolem ISAKMP.

Protokol IKE je flexibilní vyjednávací protokol definovaný doporučení RFC 2409. Umožňuje vyjednání konkrétní metody autentizace, šifrování, délek klíčů a jejich bezpečnou výměnu. Pro svou činnost používá Diffie-Hellmanův algoritmus (D-H algoritmus).

Protokol IKE je využíván k výměně relačních klíčů, tzv. Session Keys. Zprávy protokolu IKE jsou zapouzdřeny do paketů protokolu ISAKMP.

Činnost protokolu IKE lze rozdělit na dvě nezávislé fáze. První fáze realizuje sestavení bezpečného autentizovaného kanálu mezi komunikujícími entitami (počítači). V rámci této fáze je chráněným způsobem autentizována identita komunikujících stran. Obě komunikující strany se dohodnou, jaké použijí SA a provedou autentizovanou výměnu sdílených klíčů PSK. Následně je sestaven bezpečný tunel pro druhou fázi. Pro sestavení tunelu jsou k dispozici dva režimy:

- hlavní režim, tzv. Main Mode
  - dojedná algoritmy a hashovací funkce, vygeneruje sdílené tajemství pomocí D-H algoritmu a ověří identitu protistrany. Celkem jde o 6 zpráv
- agresivní režim, tzv. Agressive Mode
  - zkrátí vyjednávání do menšího množství paketů. Celkem jde o 3 zprávy.

Výhodou agresivního režimu je úspora přenosového pásma a času nutných pro přenos zpráv.

Nevýhodou agresivního režimu je výměna důležitých informací ještě před sestavením šifrovaného spojení, což je náchylné na odposlech, tzv. Sniffing.

Procesní diagram Fáze 1 protokolu IKE (hlavní režim)

V první fázi je možné využít čtyř různých způsobů výměny klíče PSK:

- asymetrické šifrování veřejným klíčem (původní verze)
- asymetrické šifrování veřejným klíčem (zdokonalená verze)
- digitální podpis
- tajný klíč (dle symetrického algoritmu)

Každou variantu výměny klíče lze využít v hlavním nebo agresivním režimu, tj. dohromady existuje osm různých variant první fáze protokolu IKE !!! Hlavní režim musí být implementován vždy, agresivní režim je volitelný, tj. měl by být implementován.

Výsledkem první fáze protokolu IKE je vzájemná autentizace komunikujících stran, výměna sdíleného symetrického klíče PSK a ustanovení IKE Security Association (SA).

Druhá fáze (tzv. Quick Mode) vytvoří SA pro IPSec relaci, tj. dojednávají se parametry SA IPsec spojení, dochází k sestavení IPSec SA pro konkrétní spojení (např.: FTP, telnet, apod.), provádí se periodická obnova IPSec SA, volitelně jsou realizovány další D-H výměny a specifikuje se další klíčový materiál pro vlastní komunikaci.

Tato komunikace je od počátku chráněna pomocí algoritmů a klíčů získaných během první fáze.

Pro šifrování běžné komunikace se použije relační klíč (Session Key) odvozený z D-H Master Key získaného z Main Mode SA a z Nonce dané Quick Mode SA.

Využití PFS (Perfect Forward Secrecy) označuje stav, kdy nejsou aktuální klíče použity ke generování dalších klíčů. Je-li totiž náhodou konkrétní klíč rozšifrován, tj. prozrazen, neumožní to útočníkovi snadné rozlomení dalších klíčů. Pokud je PFS použito, pak se v Quick módu znovu generuje pomocí D-H nová sdílená tajná informace. Využití PFS je bezpečnější, ale trochu náročnější na výkon a čas při sestavování spojení. Relační klíč se získá z nového D-H Secret Key a Nonce získaných z dané Quick Mode SA. Aplikací PFS je tak zajištěno, že relační klíč není nikdy generován ze stejného materiálu.

Procesní diagram Fáze 2 protokolu IKE (Quick Mode)

Porovnání se SSL/TLS – SSL relace odpovídá první fázi činnosti protokolu IKE, SSL spojení odpovídá druhé fázi činnosti protokolu IKE.