Cílem laboratorní úlohy je seznámit se s možnými hrozbami a analyzovat zranitelnosti ohrožující síťovou vrstvu počítačových sítí, zejména s útokem IP spoofing, a také demonstrovat způsoby kryptografického zabezpečení datových přenosů využitím technologie IPsec.
V první části laboratorní úlohy pomocí vhodných nástrojů ve virtuálním stroji Kali Linux nejprve provedete simulaci síťového útoku IP spoofing za účelem demonstrace manipulace s řídicími informacemi obsaženými v IP záhlaví přenášeného datového paketu, konkrétně generováním paketů s podvrženou zdrojovou IP adresou zařízení, které má být cílem tohoto útoku. Kromě samotného provedení útoku budete sledovat a následně analyzovat jeho průběh v prostředí síťového analyzátoru Wireshark. Nakonec se zaměříte na implementaci bezpečnostního rozšíření IPsec za účelem zabezpečení datových přenosů na úrovni síťové vrstvy, a to nejprve v transportním a později i v tunelovém režimu.
V této laboratorní úloze budete seznámeni s problematikou možných bezpečnostních hrozeb na úrovni síťové vrstvy referenčního modelu ISO/OSI. Seznámíte se se základním principem útoku IP spoofing, jehož simulaci si také prakticky vyzkoušíte. Ve druhé části cvičení se pokusíte za účelem ochrany probíhajících datových přenosů na úrovni síťové vrstvy implementovat bezpečnostní rozšíření IPsec které pomocí kryptografických mechanismů zajišťuje důvěrnost a také autentizaci IP paketů.
IP spoofing je typ síťového útoku spočívající ve falšování (podvržení) zdrojové IP adresy v IP záhlaví odesílaných paketů s cílem vyvolat dojem, že pakety pocházejí z jiného zařízení než z útočníkova. Tato technika umožňuje útočníkovi obejít určitá bezpečnostní opatření, jako jsou pravidla firewallu pro filtrování komunikace nebo autentifikační mechanismy, které používají jako identifikátor při ověřování identity právě IP adresu. IP spoofing může útočník využit například při realizaci DDoS útokov Typicky se s IP spoofingem můžeme setkat při realizaci útoku typu SYN flood ([2], [3]), nebo při útoku ICMP flood či Smurf útoku. , kdy je cílem útočníka zpravidla zahlcení cílové stanice (oběti) generováním a odesíláním falešných požadavků s podvrženými IP adresami.
Základní mechanismus IP spoofing útoku spočívá v odesílání IP paketů, ve kterých útočník manuálně a cíleně upraví informace přenášené v poli zdrojové IP adresy na IP adresu oběti (konkrétního zařízení v síti) nebo legitimního serveru. [1]
Vhodnou ochranou proti popsanému typu útoku může být použití technik jako např. ingress filtering, Více informací o technice Network Ingress Filtering naleznete v oficiálním RFC dokumentu. které blokují příjem příchozích paketů se zdrojovou IP adresou, která neodpovídá očekávané adrese pro dané rozhraní, nebo použití bezpečnostního rozšíření IPsec (Internet Protocol Security) pro zabezpečení komunikace pomocí autentizace a šifrování přenášených dat.
IPsec (Internet Protocol Security) představuje bezpečnostní rozšíření síťového IP protokolu. Jedná se o sadu protokolů, které společně poskytují kombinaci bezpečnostních mechanismů pro komplexní zabezpečení datových přenosů probíhajících na úrovni síťové vrstvy počítačových sítí využívajících IP protokol. IPsec je používán v různých prostředích, zpravidla se s jeho implementací setkáme například při zabezpečení virtuálních privátních sítí VPN.
IPsec zajišťuje integritu, autentizaci a šifrování přenášených IP paketů, čímž chrání datové přenosy před neoprávněným přístupem a manipulací.
Protokol IPsec může být implementován ve dvou základních režimech:
Bezpečnostní rozšíření IPsec poskytuje možnosti komplexního zabezpečení přenášených datových jednotek prostřednictvím dvou hlavních protokolů:
Zapouzdření přenášeného IP paketu, které spočívá v přidání odpovídajících záhlaví a zápatí nesoucích řídicí informace, při použití AH a/nebo ESP protokolu pro zabezpečení přenášeného datového obsahu, je znázorněno pro oba režimy IPsec (transportní i tunelový) na obr. 2.
Podrobnější popis technologie IPsec lze nalézt v literatuře.
V rámci této laboratorní úlohy budou pro útok IP spoofing, záznam a analýzu probíhající datové komunikace a později pro implementaci bezpečnostního rozšíření IPsec postupně využity níže uvedené nástroje
hping3 je flexibilní nástroj umožňující generovat TCP/IP pakety, simulovat různé typy útoků, jako jsou IP spoofing, port scanning nebo různé typy DoS útoků, a může být použit také k testování firewallů. Pomocí hping3 je možné vytvářet vlastní pakety s upraveným IP záhlavím, což umožňuje analyzovat reakce cílových systémů (jestli reagují na požadavky, blokují komunikaci anebo generují chyby apod.).
Při práci s nástrojem hping3 lze využít „pomocníka“ k zobrazení dostupných příkazů podporujících různé funkce nástroje pomocí příkazu:
Nástroj hping3 umožňuje také ověřit i dostupnost cílové služby (např. webového serveru). Pomocí níže uvedeného příkazu lze zjistit, zda je služba dostupná a zda firewall neblokuje přístup k příslušnému portu:
kde přepínač -S zajistí odeslaní postupně tří TCP/IP paketů s nastaveným příznakem SYN = 1 na port 80 cílového zařízení s uvedenou IP adresou
Pro účely simulace IP spoofingu je možné hping3 použít následovně:
Uvedený příkaz vygeneruje celkem pět TCP SYN paketů směřovaných na port 80 cílové IP adresy 192.168.126.130, přičemž do hlavičky těchto paketů bude vložena (pomocí přepínače -a) falešná zdrojová IP adresa s hodnotou 192.168.126.129.
Vysvětlení použitých přepínačů a parametrů příkazu:
Wireshark je pokročilý síťový analyzátor umožňující zachytávat, vizualizovat a analyzovat síťový provoz v reálném čase. Je vhodný pro analýzu komunikačních protokolů a obsahu přenášených datových jednotek, detekci podezřelých paketů a identifikaci síťových problémů. Nástroj nabízí možnost filtrování zachycené komunikace podle různých kritérií (např. zdrojová/cílová IP adresa, protokol, port).
S nástrojem Wireshark jste se již seznámili v předchozím cvičení, kdy jste si rovněž vyzkoušeli jeho praktické použití. Pro účely praktické části tohoto počítačového cvičení je v tabulce níže uveden přehled několika základních filtrů pro selektivní zobrazení paketů.
| účel | filtr |
|---|---|
| zobrazení všech paketů ICMP protokolu: | icmp |
| sledování datové komunikace mezi dvěma IP adresami: |
ip.src == 192.168.126.129 &&
|
| zobrazení všech ESP paketů: | esp |
strongSwan je open-source implementace protokolů IPsec a IKE (Internet Key Exchange) IKE (Internet Key Exchange) je protokol používaný v rámci IPsec spojení pro bezpečnou výměnu kryptografických klíčů a vyjednání bezpečnostních parametrů mezi dvěma komunikujícími stranami. Jeho cílem je vytvořit a spravovat tzv. Security Associations (SA), které definují, jaké kryptografické mechanismy budou použity k zajištění důvěrnosti a integrity přenášených dat. V rámci knihovny strongSwan představuje IKE nezbytnou součást, která zajišťuje bezpečné navázání IPsec spojení a následné obnovení a/nebo ukončení vytvořeného tunelu. , která umožňuje vytvoření bezpečného propojení mezi dvěma nebo více uzly (zařízeními) na síťové vrstvě. Podporuje jak IPv4, tak IPv6, a umožňuje provoz v transportním i tunelovém režimu IPsec. V rámci IKE protokolu podporuje statickou i dynamickou výměnu klíčů.
Pro konfiguraci bezpečnostního rozšíření IPsec k zabezpečení síťové komunikace jsou klíčové následující konfigurační soubory:
Pro práci s knihovnou strongSwan je nutné spustiť odpovídající službu příkazem:
Knihovna strongSwan umožňuje navázání IPsec spojení, resp. tunelu mezi dvěma koncovými body komunikace. Manuální navázání zabezpečeného spojení lze provést příkazem:
Aktuální stav aktivních IPsec tunelů lze zobrazit pomocí příkazu:
V rámci praktické části počítačového cvičení bude simulován útok IP spoofing pomocí nástroje hping3, následovaný analýzou síťové komunikace prostřednictvím nástroje Wireshark.Simulovaný útok bude probíhat ve virtuální síti složené ze tří virtuálních strojů s OS Kali Linux (klient, server a útočník), jejíž topologie je schematicky znázorněna na obrázku níže. Komunikace mezi těmito virtuálními stroji bude probíhá postřednictvím virtuálního přepínače VMware Virtual Switch, jak je znázorněno v uvedeném schématu. Cílem útoku IP spoofing, který spočívá v generování IP paketů s podvrženou zdrojovou IP adresou, může být vyvolání následného DDoS útoku, jehož účelem je způsobit nefunkčnost nebo nedostupnost cílového zařízení (tzv. oběti útoku).
V navazující části se dále za účelem zabezpečení přenášených dat na síťové vrstvě zaměříte na konfiguraci bezpečnostního rozšíření IPsec, které zajišťuje důvěrnost přenášených IP paketů pomocí šifrování, dále jejich autentizaci a odolnost proti narušení integrity.
Všechny virtuální stroje musí být připojeny ve stejné virtuální podsíti pomocí síťového režimu Host-Only nebo NAT, aby bylo možné na VM „útočník“ zachytávat komunikaci mezi klientem a serverem.
Spuštění virtuálních strojů
Přihlašovací údaje:
Ověření síťové konektivity
Pomocí nástroje hping3 lze na VM útočníka simulovat IP spoofing útok generováním IP paketů s podvrženou zdrojovou IP adresou. Cílem je odesílat pakety, které se jeví, jako by byly odeslány klientem. Tento útok umožňuje ověřit, že cílové zařízení (server) nedokáže odhalit skutečného odesílatele – tedy útočníka. Probíhající komunikace bude monitorována pomocí nástroje Wireshark.
Použití nástroje hping3
Sledování příchozí komunikace (server) ve Wiresharku
V následující části laboratorního úkolu si vyzkoušíte práci s knihovnou strongSwan, která podporuje implementaci IPsec.
Konfigurace IPsec v transportním režimu
conn test
left=192.168.126.129 # klient (aktuální VM)
right=192.168.126.130 # server (protistrana)
authby=secret
auto=start
ike=aes256-sha1-modp1024
esp=aes256-sha1
keyexchange=ikev2
⚠️ Poznámka: uvedená konfigurace se týká nastavení IPsec na straně klienta.
Tímto nastavením jsou definovány parametry zabezpečeného spojení mezi klientem (left) a serverem (right). Pro autentizaci komunikujících stran bude použito sdílené tajemství (PSK). Pro výměnu klíčů je použitý IKEv2 s konkrétními šifrovacími a autentizačními algoritmy. Parametr auto=start zajistí automatické navázání definovaného IPsec spojení při startu služby.192.168.126.129 192.168.126.130 : PSK "tajneheslo"
Připojení a ověření konfigurace IPsec
Pomocí nástroje hping3 opět spusťte na VM útočníka simulaci útoku IP spoofing a sledujte, zda jsou odeslané pakety ze strany útočníka na serveru odmítnuty. Správně nakonfigurované spojení by mělo zabránit přijetí neautentizované komunikace. Průběh komunikace sledujte rovněž pomocí nástroje Wireshark.
V poslední části úkolu si samostatně vyzkoušíte praktické nasazení bezpečnostního rozšíření IPsec v tunelovém režimu pro zabezpečení komunikace odesílané přes simulovanou „veřejnou síť“.
Poznámka: Některé otázky mohou mít více než jednu správnou odpověď. Pro správné zodpovězení otázky je nutné označit všechny správné odpovědi.
V tomto laboratorním úkolu jste se seznámili s problematikou bezpečnosti síťové vrstvy počítačových sítí a v této souvislosti také s riziky spojenými s podvržením IP adresy (tzv. IP spoofing), což představuje častý způsob narušení integrity nebo důvěrnosti komunikace na síťové vrstvě.
V praktické části jste pomocí nástroje hping3 realizovali simulaci útoku, který ilustruje, jakým způsobem lze oklamat cílové zařízení pomocí falešné zdrojové IP adresy uvedené v hlavičce odesílaných datových jednotek. Následně jste si vyzkoušeli praktickou implementaci rozšíření IPsec, které umožňuje komplexní zabezpečení IP komunikace, a to včetně šifrování dat, autentizace a zajištění integrity přenosu. Porovnáním transportního a tunelového režimu IPsec jste získali přehled o různých způsobech ochrany datového provozu a rovněž o jejich vlivu na výslednou podobu paketů či celkový výkon počítačové sítě.
Kompletní seznam použitých zdrojů naleznete na samostatné stránce: Seznam literatury