ANALÝZA TCP/IP 2 ANALÝZA PROTOKOLŮ DHCP, ARP, ICMP A DNS V této části se seznámíte s funkcemi a principy protokolů DHCP, ARP, ICMP a DNS. Síť je uspořádána dle následujícího schématu zapojení.
Zahajte zachytávání paketů pomocí programu Wireshark na monitorovacím PC. Zapojte cílové PC do sítě (kabel označený štítkem „LAN“) a počkejte na IP přidělení adresy.
DHCP (DYNAMIC HOST CONFIGURATION PROTOCOL) Protokol DHCP slouží k dynamické konfiguraci stanic nově připojených k síti. Potřebnými parametry jsou zejména IP adresa, maska podsítě, IP adresa výchozí brány a IP adresy DNS serverů.
Na monitorovacím PC vyberte v programu Wireshark přednastavený filtr „DHCP“ a analyzujte průběh přidělení IP adresy. o Poznamenejte si postup přidělení IP adresy. o Poznamenejte si zdrojové a cílové MAC a IP adresy rámců / paketů s DHCP datagramy. o Poznamenejte si klíčové části obsahu DHCP datagramů (přidělená IP adresa, maska podsítě a IP adresa výchozí brány).
1
ARP (ADDRESS RESOLUTION PROTOCOL) Protokol ARP slouží k překladu adres. Primárně umožňuje přeložit známou L3 (IP) adresu z lokální sítě na L2 (MAC) adresu, nicméně existuje také reverzní varianta tohoto protokolu, která umožňuje i opačný překlad. Aby nedocházelo ke zbytečnému vytěžování sítě, ukládají si operační systémy mapování mezi L3 a L2 adresami do tzv. ARP cache, ve které záznamy přetrvávají řádově minuty, než jsou automaticky odstraněny.
Na monitorovacím PC vyberte v programu Wireshark přednastavený filtr „ARP“ a analyzujte průběh získání MAC adresy výchozí brány z její známé IP adresy. o Poznamenejte si postup získání MAC adresy výchozí brány. o Poznamenejte si zdrojové a cílové MAC adresy ARP rámců. o Poznamenejte si obsah ARP rámců. Na cílovém PC otevřete příkazovou řádku a zobrazte obsah jeho ARP cache pomocí příkazu „arp –a“. o Ověřte, že ARP cache obsahuje MAC adresu výchozí brány.
ICMP (INTERNET CONTROL ME SSAGE PROTOCOL) Protokol ICMP slouží k diagnostice a řízení IP vrstvy TCP/IP zásobníku. Nejznámější z diagnostických zpráv používaných tímto protokolem je zřejmě dvojce Echo Request a Echo Reply. Příkladem řídicích zpráv může být například zpráva Destination Unreachable, která je zasílána mezilehlým L3 zařízením při zjištění nedosažitelnosti cíle, např. kvůli neznámé cestě k cílové stanici nebo kvůli filtraci provozu.
Na cílovém PC otevřete příkazovou řádku a zadejte příkaz „ping 147.32.192.2“. Na monitorovacím PC vyberte v programu Wireshark přednastavený filtr „ICMP“ a analyzujte zachycené ICMP zprávy. o Poznamenejte si obsahy zpráv požadavku (Echo Request) a příslušné odpovědi (Echo Reply).
DNS (DOMAIN NAME SYSTEM) Protokol DNS slouží k překladu doménových jmen (tedy lidmi snadno čitelných názvů) serverů do jejich L3 adres. Obdobně jako v případě protokolu ARP uchovávají operační záznamy mapování mezi doménovými jmény serverů a jejich L3 adresami v tzv. DNS cache za účelem snížení zátěže sítě.
Na cílovém PC zadejte adresu www.seznam.cz do webového prohlížeče. Na monitorovacím PC vyberte v programu Wireshark přednastavený filtr „DNS“ a analyzujte průběh získání IP adresy serveru z jeho doménového jména. o Poznamenejte si postup získání IP adresy. o Poznamenejte si zdrojové a cílové MAC a IP adresy rámců s DNS datagramy. o Poznamenejte si klíčové části DNS datagramů (žádané doménové jméno a IP adresa serveru).
2
ANALÝZA ÚTOKŮ V této části budete analyzovat dva typy útoků. První využívá kombinaci protokolů DHCP a DNS, druhý využívá kombinaci ARP a DNS. Síť je uspořádána dle následujícího schématu.
DHCP ÚTOK
V příkazové řádce cílového PC zadejte příkaz „ipconfig –release“ a vypojte cílové PC ze sítě (Ethernet). V příkazové řádce cílového PC zadejte příkaz „ipconfig –flushdns“. Požádejte cvičícího, aby připojil útočící PC do sítě (kabel označený štítkem „LAN“) a spustil útok. Zapojte cílové PC do sítě (kabel označený štítkem „LAN“) a počkejte na přidělení IP adresy. Na cílovém PC otevřete příkazovou řádku a zadejte příkaz „ping 147.32.192.2“. Na cílovém PC zadejte adresu www.seznam.cz do webového prohlížeče. Na monitorovacím PC využijte v programu Wireshark přednastavené filtry „DHCP“, „ICMP“ a „DNS“ a analyzujte komunikaci obdobně jako v předchozí části. Porovnejte poznámky pořízené v průběhu útoku s poznámkami pořízenými za normálního provozu a pokuste se vysvětlit princip útoku.
ARP ÚTOK
V příkazové řádce cílového PC zadejte příkaz „ipconfig –release“ a vypojte cílové PC ze sítě. V příkazové řádce cílového PC zadejte příkaz „ipconfig –flushdns“. 3
Zapojte cílové PC do sítě (kabel označený štítkem „LAN“) a počkejte na IP přidělení adresy. Požádejte cvičícího, aby připojil útočící PC do sítě (kabel označený štítkem „LAN“) a spustil útok. Na cílovém PC otevřete příkazovou řádku a zadejte příkaz „ping 147.32.192.2“. Na cílovém PC zadejte adresu www.seznam.cz do webového prohlížeče. Na monitorovacím PC využijte v programu Wireshark přednastavené filtry „ARP“, „ICMP“ a „DNS“ a analyzujte komunikaci obdobně jako v předchozí části. Porovnejte poznámky pořízené v průběhu útoku s poznámkami pořízenými za normálního provozu a pokuste se vysvětlit princip útoku.
FIREWALL V této části budete seznámeni s funkcemi firewallu a možnostech jeho překonání z chráněné strany. V této části je cílové PC nazýváno chráněným PC a síť je uspořádána dle následujícího schématu.
OVĚŘENÍ FUNKCE FIREWA LLU
Vypojte chráněné PC ze sítě. Zapojte chráněné PC do sítě (kabel označený štítkem „FIREWALL“) a počkejte na přidělení IP adresy. Zapněte server a přihlaste se (uživatelské jméno „student“ a heslo „student“). Otevřete příkazovou řádku serveru a pomocí příkazu „ip addr show“ zjistěte IP adresu serveru. Na chráněném PC otevřete příkazovou řádku a zadejte příkaz „ping A“, kde A je IP adresa serveru. Na monitorovacím PC vyberte v programu Wireshark přednastavený filtr „ICMP“ a potvrďte, že sítí LAN proběhly zprávy Echo Request i Echo Reply. Na serveru otevřete příkazovou řádku a zadejte příkaz „ping 192.168.50.2“ (tedy ping na IP adresu chráněného PC). Na operačním systému GNU/Linux poběží příkaz ping do té doby, dokud není ukončen, proto po chvíli ukončete příkaz stiskem klávesové kombinace Ctrl + C. Na monitorovacím PC vyberte v programu Wireshark přednastavený filtr „ICMP“ a analyzujte ICMP zprávy. Která z dvojce Echo Request a Echo Reply nyní chybí? Na chráněném PC otevřete webový prohlížeč a ověřte, že domovská stránka (či libovolná jiná) je nedostupná. Na monitorovacím PC vyberte v programu Wireshark přednastavený filtr „HTTP“ a ověřte, že žádné HTTP požadavky se do sítě LAN nedostaly. 4
SSH TUNEL Jedna z možností, jak firewall z chráněné části sítě překonat, je využití SSH tunelu. Následující instrukce vykonejte pouze na chráněném PC.
Spusťte program TeraTerm a proveďte následující. o Zavřete okno New Session. o V menu vyberte Setup/SSH Forwarding. o Klikněte na Add a v nově otevřeném okně vyplňte následující. Local port nastavte na libovolný dynamický port, tedy libovolnou hodnotu X větší, než 16383. Remote machine nastavte na doménové jméno serveru s domovskou stránkou prohlížeče (tedy measure.feld.cvut.cz). Port nastavte na „http“. o Klikněte na Ok a pozavírejte okna s nastavením. o V menu vyberte File/New session. o V nově otevřeném okně ponechte stávající nastavení a vyplňte pouze IP adresu serveru. Poté klikněte na Connect. o V nově otevřeném okně zadejte uživatelské jméno a heslo (stejné, přes jaké jste se přihlašovali na server a klikněte na Ok. Počkejte, až se v okně programu TeraTerm zobrazí příkazová řádka serveru. Otevřete webový prohlížeč a ověřte, že domovská stránka je stále nedostupná. Zadejte ve webovém prohlížeči adresu localhost:X, kde X je výše uvedená hodnota zadaná jako Local port. Ověřte, že se načetla webová stránka Katedry měření (tedy původní domovská stránka). Na monitorovacím PC vyberte v programu Wireshark přednastavený filtr „SSH tunel“ a analyzujte zachycené SSH a HTTP pakety. o Poznamenejte si zdrojové a cílové IP adresy v SSH a HTTP paketech. Na základě zachycených dat se pokuste vysvětlit, k čemu došlo. Zkuste navrhnout, jak by se dalo pomocí programu TeraTerm zajistit, aby byla přístupná i jiná webová stránka. Zkuste navrhnout, jak by se dalo pomocí SSH tunelování zajistit, aby se dalo z libovolného PC v nechráněné síti LAN a prostřednictvím serveru v nechráněné síti LAN přistoupit na libovolný server / PC v chráněné síti LAN.
5