Chris Sanders. Analýza sítí a řešení problémů v programu Wireshark



Podobné dokumenty
Obsah PODĚKOVÁNÍ...11

Chris Sanders. Analýza sítí a řešení problémů v programu Wireshark

7. Aplikační vrstva. Aplikační vrstva. Počítačové sítě I. 1 (5) KST/IPS1. Studijní cíl. Představíme si funkci aplikační vrstvy a jednotlivé protokoly.

3.17 Využívané síťové protokoly

Počítačová síť. je skupina počítačů (uzlů), popřípadě periferií, které jsou vzájemně propojeny tak, aby mohly mezi sebou komunikovat.

MODELY POČÍTAČOVÝCH SÍTÍ

metodický list č. 1 Internet protokol, návaznost na nižší vrstvy, směrování

ZÁKLADNÍ ANALÝZA SÍTÍ TCP/IP

Přednáška 3. Opakovače,směrovače, mosty a síťové brány

Komunikační protokoly počítačů a počítačových sítí

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Počítačové sítě. Lekce 4: Síťová architektura TCP/IP

Analýza síťového provozu. Ing. Dominik Breitenbacher Mgr. Radim Janča

Hodinový rozpis kurzu Správce počítačové sítě (100 hod.)

Identifikátor materiálu: ICT-3-03

Internet protokol, IP adresy, návaznost IP na nižší vrstvy

Telekomunikační sítě Protokolové modely

Obsah. Úvodem 9 Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10

6. Transportní vrstva

POČÍTAČOVÉ SÍTĚ 1. V prvním semestru se budeme zabývat těmito tématy:

JAK ČÍST TUTO PREZENTACI

POČÍTAČOVÉ SÍTĚ Metodický list č. 1

Téma bakalářských a diplomových prací 2014/2015 řešených při

Relační vrstva SMB-Síťový komunikační protokol aplikační vrstvy, který slouží ke sdílenému přístupu k souborům, tiskárnám, sériovým portům.

Model ISO - OSI. 5 až 7 - uživatelská část, 1 až 3 - síťová část

Název školy: Základní škola a Mateřská škola Žalany. Číslo projektu: CZ. 1.07/1.4.00/ Téma sady: Informatika pro devátý ročník

KLASICKÝ MAN-IN-THE-MIDDLE

Aktivní prvky: brány a směrovače. směrovače

Univerzita Jana Evangelisty Purkyně Automatizace Téma: Datová komunikace. Osnova přednášky

Obsah. Úvod 7 Zpětná vazba od čtenářů 7 Dotazy 8 Errata 8 Poznámka k aktuálnosti 8 Konvence použité v knize 8

Počítačové sítě. Lekce 3: Referenční model ISO/OSI

Maturitní okruhy pro 1.KŠPA Kladno, s.r.o. Počítačové sítě a komunikace

Inovace a zkvalitnění výuky prostřednictvím ICT Počítačové sítě Vrstvový model TCP/IP Ing. Zelinka Pavel

9. Sítě MS Windows. Distribuce Windows. Obchodní označení. Jednoduchý OS pro osobní počítače, pouze FAT, základní podpora peer to peer sítí,

Routování směrovač. směrovač

Úvod do analýzy. Ústav informatiky, FPF SU Opava Poslední aktualizace: 8. prosince 2013

Analýza aplikačních protokolů

1 Protokol TCP/IP (Transmission Control Protocol/Internet Protocol) a OSI model

Počítačové sítě Teoretická průprava II. Ing. František Kovařík

SSL Secure Sockets Layer

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

ANALÝZA TCP/IP 2 ANALÝZA PROTOKOLŮ DHCP, ARP, ICMP A DNS

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Inovace bakalářského studijního oboru Aplikovaná chemie

Poděkování 21 Konvence a prvky použité v této knize 22. O autorech 24. ČÁST 1 Práce v síti s Windows XP

Studentská unie ČVUT v Praze, klub Silicon Hill. 22. února Ondřej Caletka (SU ČVUT) IPv6 nové (ne)bezpečí? 22.

POČÍTAČOVÉ SÍTĚ A KOMUNIKACE OBOR: INFORMAČNÍ TECHNOLOGIE

POČÍTAČOVÉ SÍTĚ A KOMUNIKACE

EU-OPVK:VY_32_INOVACE_FIL9 Vojtěch Filip, 2013

Aktivní prvky: síťové karty

Maturitní témata pro 1.KŠPA Kladno, s.r.o. Počítačové sítě a komunikace

TCP-Wedge ZDARMA. Přidává podporu TCP/IP: Sběr dat z adres portu IP na libovolné síti TCP/IP - ethernet / internet.

Inovace bakalářského studijního oboru Aplikovaná chemie

Počítačové sítě ve vrstvách model ISO/OSI

Obsah. Úvod. Kapitola 1. Kapitola 2. Co budete potřebovat 11 Rozlišení sítí podle přenosového média 12 Kabelová síť 13 Bezdrátová síť 14

Vlastnosti podporované transportním protokolem TCP:

Audit bezpečnosti počítačové sítě. Předmět: Správa počítačových sítí Jiří Kalenský

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

SPŠ a VOŠ Písek, Písek, K. Čapka 402. Učební texty. Datové sítě I. Vypracovala: Mgr. Radka Pecková

KAPITOLA 1 SOCIÁLNÍ SÍTĚ A PHP...17

Inovace výuky prostřednictvím šablon pro SŠ

4. Síťová vrstva. Síťová vrstva. Počítačové sítě I. 1 (6) KST/IPS1. Studijní cíl. Představíme si funkci síťové vrstvy a jednotlivé protokoly.

Konfigurace DHCP serveru a překladu adres na směrovačích Cisco

12. Virtuální sítě (VLAN) VLAN. Počítačové sítě I. 1 (7) KST/IPS1. Studijní cíl. Základní seznámení se sítěmi VLAN. Doba nutná k nastudování

Protokoly: IP, ARP, RARP, ICMP, IGMP, OSPF

Počítačové sítě. Počítačová síť. VYT Počítačové sítě

Audit bezpečnosti počítačové sítě

Počítačové sítě. Miloš Hrdý. 21. října 2007

Počítačové sítě Transportní vrstva. Transportní vrstva

Systémy pro sběr a přenos dat

Technologie počítačových komunikací

Počítačové sítě Systém pro přenos souborů protokol FTP

5. Směrování v počítačových sítích a směrovací protokoly

Seznámit posluchače se základními principy činnosti lokálních počítačových sítí a způsobu jejich spojování:

TOPOLOGIE DATOVÝCH SÍTÍ

Počítačové sítě pro V3.x Teoretická průprava II. Ing. František Kovařík

Představíme základy bezdrátových sítí. Popíšeme jednotlivé typy sítí a zabezpečení.

CCNA I. 3. Connecting to the Network. CCNA I.: 3. Connecting to the network

Inovace výuky prostřednictvím šablon pro SŠ

X.25 Frame Relay. Frame Relay

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Internet a zdroje. (ARP, routing) Mgr. Petr Jakubec. Katedra fyzikální chemie Univerzita Palackého v Olomouci Tř. 17. listopadu

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Uživatel počítačové sítě

PŘÍRUČKA SÍŤOVÝCH APLIKACÍ

Základy počítačových sítí Model počítačové sítě, protokoly

Technologie počítačových sítí 2. přednáška

Obsah. Úvodem 9. Kapitola 1 Než začneme 11. Kapitola 2 Dynamické zobrazování obsahu 25. Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10

Obsah. O autorech 9. Předmluva 13. KAPITOLA 1 Počítačové sítě a Internet 23. Jim Kurose 9 Keith Ross 9

Ing. Jitka Dařbujanová. TCP/IP, telnet, SSH, FTP

Co je Symantec pcanywhere 12.0? Hlavní výhody Snadné a bezpečné vzdálené připojení Hodnota Důvěra

Počítačová síť a internet. V. Votruba

Rozdělení (typy) sítí

Obsah. Část I Začínáme s jazykem AppleScript

Ing. Jitka Dařbujanová. , SSL, News, elektronické konference

DUM 16 téma: Protokoly vyšších řádů

Flow Monitoring & NBA. Pavel Minařík

PB169 Operační systémy a sítě

Transkript:

Chris Sanders Analýza sítí a řešení problémů v programu Wireshark Computer Press Brno 2012

Analýza sítí a řešení problémů v programu Wireshark Chris Sanders Překlad: Jakub Goner Odpovědný redaktor: Libor Pácl Technický redaktor: Jiří Matoušek Copyright 2011 by Chris Sanders. Title of English-language original: Practical Packet Analysis, 2nd Edition, ISBN 978-1-59327-266-1. Czech-language edition copyright 2012 by Albatros Media a. s. All rights reserved. Objednávky knih: http://knihy.cpress.cz www.albatrosmedia.cz eshop@albatrosmedia.cz bezplatná linka 800 555 513 ISBN 978-80-251-3718-5 Vydalo nakladatelství Computer Press v Brně roku 2012 ve společnosti Albatros Media a. s. se sídlem Na Pankráci 30, Praha 4. Číslo publikace 15 946. Albatros Media a. s. Všechna práva vyhrazena. Žádná část této publikace nesmí být kopírována a rozmnožována za účelem rozšiřování v jakékoli formě či jakýmkoli způsobem bez písemného souhlasu vydavatele. 1. vydání

Obsah PODĚKOVÁNÍ..........................................11 ÚVOD.................................................13 Cíle knihy............................................. 13 Koncepce a přístup..................................... 13 Jak s knihou pracovat................................... 15 Ukázkové zachycené soubory............................. 15 Nadace Rural Technology Fund............................ 16 Kontakt s autorem...................................... 16 Zpětná vazba od čtenářů................................. 16 Errata............................................... 17 KAPITOLA 1 ÚVOD DO ANALÝZY PAKETŮ A SÍTÍ........................19 Analýza paketů a nástroje pro sledování paketů............... 20 Hodnocení paketového snifferu...........................20 Principy paketových snifferů.............................21 Principy komunikace počítačů............................. 22 Protokoly............................................22 Model OSI se sedmi vrstvami.............................22 Zapouzdření dat.......................................25 Síťový hardware.......................................28 Klasifikace provozu..................................... 33 Všesměrový provoz....................................33 Vícesměrový provoz....................................34 3

Obsah Jednosměrový provoz..................................34 Závěrečné poznámky.................................... 34 KAPITOLA 2 NAPÍCHNUTÍ LINKY.....................................35 Promiskuitní život....................................... 35 Sledování s rozbočovači................................. 37 Sledování v přepínaném prostředí.......................... 38 Zrcadlení portu........................................39 Rozbočování..........................................40 Použití odposlechu.....................................42 Znehodnocení mezipaměti ARP...........................45 Sledování ve směrovaném prostředí........................ 49 Umístění snifferu v praxi.................................. 50 KAPITOLA 3 ÚVOD DO PROGRAMU WIRESHARK.......................53 Stručná historie programu Wireshark........................ 53 Výhody programu Wireshark.............................. 54 Instalace programu Wireshark............................. 55 Instalace v systémech Microsoft Windows..................55 Instalace v systémech Linux..............................57 Instalace v systémech Mac OS X..........................59 Základy programu Wireshark.............................. 59 První zachycené pakety.................................59 Hlavní okno programu Wireshark..........................60 Předvolby programu Wireshark...........................62 Barevné kódování paketů................................63 KAPITOLA 4 ZPRACOVÁNÍ ZACHYCENÝCH PAKETŮ.....................67 Zpracování zachycených souborů.......................... 67 Ukládání a export zachycených souborů....................67 Sloučení zachycených souborů...........................69 Zpracování paketů...................................... 70 Hledání paketů........................................70 Označování paketů.....................................71 Tisk paketů...........................................71 4

Obsah Nastavení formátu zobrazení času a referencí................. 72 Formáty zobrazení času.................................72 Referenční čas paketu..................................73 Nastavení možností zachytávání........................... 74 Nastavení Capture.....................................74 Nastavení Capture File(s)................................75 Nastavení Stop Capture.................................77 Nastavení Display Options...............................77 Nastavení Name Resolution..............................77 Použití filtrů............................................ 77 Filtry zachytávání......................................78 Filtry zobrazení........................................84 Ukládání filtrů.........................................87 KAPITOLA 5 POKROČILÉ FUNKCE PROGRAMU WIRESHARK.............89 Koncové body sítě a konverzace........................... 89 Zobrazení koncových bodů..............................90 Zobrazení síťových konverzací............................91 Řešení potíží pomocí oken Endpoints a Conversations.........92 Okno Protocol Hierarchy Statistics......................... 94 Překlad názvů.......................................... 95 Povolení překladu názvů.................................95 Potenciální nevýhody překladu názvů......................96 Rozbor protokolů....................................... 96 Změna disektoru.......................................97 Zobrazení zdrojového kódu disektoru......................99 Sledování datových proudů TCP........................... 99 Okno Packet Lengths................................... 101 Vytváření grafů........................................ 102 Zobrazení vstupně-výstupních grafů......................102 Grafy času obousměrného přenosu.......................104 Grafy toku...........................................106 Expertní informace..................................... 106 KAPITOLA 6 BĚŽNÉ PROTOKOLY NIŽŠÍCH VRSTEV....................109 Protokol ARP (Address Resolution Protocol)................. 109 Hlavička ARP........................................111 5

Obsah Paket 1: požadavek ARP...............................112 Paket 2: odpověď ARP.................................113 Nevyžádané ARP.....................................114 Protokol IP (Internet Protocol)............................ 115 IP adresy............................................116 Hlavička IPv4........................................117 Time to Live.........................................118 Fragmentace IP......................................120 Protokol TCP (Transmission Control Protocol)................ 123 Hlavička TCP........................................123 Porty TCP...........................................124 Trojcestné ověřování TCP typu handshake.................127 Proces TCP teardown..................................130 Reset TCP..........................................131 Protokol UDP (User Datagram Protocol).................... 132 Hlavička UDP........................................133 Protokol ICMP (Internet Control Message Protocol)........... 134 Hlavička ICMP.......................................134 Typy a zprávy ICMP...................................134 Požadavky a odpovědi echo............................135 Traceroute...........................................138 KAPITOLA 7 BĚŽNÉ PROTOKOLY VYŠŠÍ VRSTVY......................141 Protokol DHCP (Dynamic Host Configuration Protocol)........ 141 Struktura paketu DHCP................................142 Proces obnovení DHCP................................143 Obnovení během zápůjčky protokolu DHCP................148 Možnosti a typy zpráv protokolu DHCP....................148 Systém DNS (Domain Name System)...................... 149 Struktura paketu DNS..................................149 Jednoduchý dotaz DNS................................151 Typy dotazů DNS.....................................152 Rekurze DNS........................................153 Přenosy zóny DNS....................................156 Protokol HTTP (Hypertext Transfer Protocol)................. 159 Prohlížení webu pomocí HTTP...........................159 Odesílání dat protokolem HTTP..........................161 Závěrečné poznámky................................... 162 6

Obsah KAPITOLA 8 BĚŽNÉ SCÉNÁŘE Z PRAXE..............................163 Sociální sítě na úrovni paketů............................ 164 Zachytávání provozu služby Twitter.......................164 Zachytávání provozu služby Facebook....................168 Porovnání metod Twitteru a Facebooku....................170 Zachytávání provozu služby ESPN.com.................... 170 Použití okna Conversations.............................171 Použití okna Protocol Hierarchy Statistics..................171 Zobrazení provozu DNS................................172 Zobrazení požadavků HTTP.............................173 Praktické problémy.................................... 174 Nedostupný Internet: konfigurační problémy................174 Nedostupný Internet: nežádoucí přesměrování..............177 Nedostupný Internet: problémy mimo lokální síť.............181 Nespolehlivá tiskárna..................................183 Izolovaná pobočka....................................187 Naštvaný vývojář.....................................190 Závěrečné poznámky................................... 195 KAPITOLA 9 ZRYCHLENÍ POMALÉ SÍTĚ..............................197 Funkce opravy chyb protokolu TCP........................ 198 Opakované přenosy TCP...............................198 Duplicitní potvrzení TCP a rychlé opakované přenosy.........201 Řízení toku TCP....................................... 206 Úpravy hodnoty Window Size...........................207 Zastavení toku dat pomocí oznámení nulové velikosti okna....208 Posuvné okno protokolu TCP v praxi......................209 Poučení z paketů opravy chyb a řízení toku protokolu TCP..... 213 Určení zdroje vysoké latence............................. 213 Normální komunikace..................................214 Pomalá komunikace latence linky.......................214 Pomalá komunikace latence klienta.....................216 Pomalá komunikace latence serveru.....................216 Schéma určování zdroje latence..........................217 Standardní hodnoty sítě................................. 218 Standardní hodnoty lokality.............................218 Standardní hodnoty hostitele............................219 7

Obsah Standardní hodnoty aplikace............................220 Další poznámky ke standardním hodnotám.................221 Závěrečné poznámky................................... 221 KAPITOLA 10 ANALÝZA PAKETŮ A ZABEZPEČENÍ......................223 Průzkum............................................. 223 Skenování SYN.......................................224 Zjišťování otisků operačního systému.....................229 Napadení systému..................................... 232 Operace Aurora......................................232 Znehodnocení mezipaměti ARP..........................238 Trojský kůň se vzdáleným přístupem......................242 Závěrečné poznámky................................... 250 KAPITOLA 11 ANALÝZA BEZDRÁTOVÝCH PAKETŮ...............................251 Fyzická hlediska....................................... 251 Postupné sledování jednotlivých kanálů....................251 Interference bezdrátového signálu........................253 Detekce a analýza interference signálu....................253 Režimy bezdrátových karet.............................. 254 Bezdrátové sledování v systému Windows.................. 256 Konfigurace karty AirPcap..............................256 Zachytávání provozu pomocí zařízení AirPcap...............257 Bezdrátové sledování v systému Linux..................... 259 Struktura paketu 802.11................................. 260 Doplnění sloupců specifických pro bezdrátové sítě do podokna Packet List........................................... 262 Filtry specifické pro bezdrátové sítě....................... 263 Filtrování provozu podle konkrétní hodnoty BSS ID...........263 Filtrování konkrétních typů bezdrátových paketů.............264 Filtrování konkrétní frekvence............................265 Zabezpečení bezdrátové sítě............................. 266 Úspěšná autentizace WEP..............................266 Neúspěšná autentizace WEP............................268 Úspěšná autentizace WPA..............................269 8

Obsah Neúspěšná autentizace WPA............................270 Závěrečné poznámky................................... 272 PŘÍLOHA DALŠÍ INFORMACE....................................273 Nástroje na analýzu paketů.............................. 273 tcpdump a Windump..................................273 Cain & Abel..........................................274 Scapy..............................................274 Netdude............................................274 Colasoft Packet Builder................................275 CloudShark..........................................275 pcapr..............................................276 NetworkMiner........................................276 Tcpreplay...........................................277 ngrep..............................................277 libpcap.............................................277 hping...............................................277 Domain Dossier......................................277 Perl a Python........................................277 Informační zdroje týkající se analýzy paketů................. 278 Domovská stránka programu Wireshark...................278 Podrobný bezpečnostní kurz detekce vniknutí pořádaný organizací SANS......................................278 Blog Chrise Sanderse..................................278 Blog Packetstan......................................279 Univerzita programu Wireshark..........................279 IANA...............................................279 REJSTŘÍK............................................281 9

Poděkování Tato kniha mohla vzniknout díky přímým i nepřímým příspěvkům mnoha různých lidí. V prvé řadě všechna sláva patří Bohu. Při psaní knihy se projevuje mnoho pozitivních i negativních emocí. Když jsem nervózní, uklidňuje mě. Když jsem zklamaný, utěšuje mě. Když jsem zmatený, dává mi odhodlání. Když jsem unavený, přináší mi odpočinek. Když jsem pyšný, zachovává moji rozvážnost. Za tuto knihu, svou kariéru i vlastní existenci vděčím pouze Bohu a jeho synu Ježíši Kristu. Táto, svou motivaci jsem čerpal z mnoha zdrojů. Nic mě však nepotěší tolik, jako když mi říkáš, že jsi na mě pyšný. Nemůžu Ti dostatečně poděkovat za to, že mi to dáváš najevo. Mami, druhé vydání této knihy se objeví přímo před desátým výročím Tvého odchodu. Vím, že mě sleduješ a že jsi na mě hrdá. Doufám, že v dalších letech budeš ještě více. Teto Debi a strýci Randy, od prvního dne jste mě maximálně podporovali. Moje rodina není velká, ale velmi si cením těch příbuzných, které mám především vás. Nesetkáváme se sice tak často, jak bych si přál, ale nemohu vám dostatečně poděkovat za to, že jste pro mě byli druhými rodiči. Tino Nance, sice už spolu nemluvíme tak často jako dříve, ale vždy Tě budu považovat za náhradní mámu. Bez Tvé podpory a důvěry bych nedělal to, co dnes dělám. Jasone Smithi, musel jsi vyslechnout více mých tirád než kdokoli jiný, ale díky tomu jsem si zachoval zdravý rozum. Jsem rád, že mám v Tobě dobrého kamaráda a spolupracovníka, který mi pomáhá s různými projekty. Dodatečně Ti ještě děkuji za to, žes mi tehdy na půl roku půjčil svou garáž. Co se týče mých spolupracovníků (minulých i současných): vždy jsem věřil tomu, že pokud se člověk obklopí dobrými lidmi, sám se stane lepším. Mám štěstí, že spo- 11

Poděkování lupracuji s mnoha skvělými lidmi, kteří patří mezi nejlepší a nechytřejší v branži. Počítám vás do své rodiny. Mike Poor je bez diskuze mým idolem v oboru analýzy paketů. Tvoje práce a přístup mě inspirují a pomáhají mi v tom, co sám dělám. Tylerovi Regulymu děkuji za odborné korektury této knihy. Určitě to nebyla žádná zábava, ale bylo to nezbytné a moc si toho vážím. Děkuji také Geraldu Combsovi a vývojářskému týmu programu Wireshark. Díky Geraldovi a stovkám jiných vývojářů je program Wireshark vynikající analytickou platformou. Nebýt jejich úsilí, tato knihy by neexistovala nebo pokud by přece jen vznikla, popisovala by program tcpdump a to by nikoho nebavilo. Bill a zaměstnanci nakladatelství No Starch Press dali šanci klukovi z Kentucky, a to nejen jednou, ale dvakrát. Děkuji za vaši důvěru a trpělivost a za to, že jsem si mohl splnit své sny. 12

Úvod Druhé vydání knihy Analýza sítí a řešení problémů v programu Wireshark vzniklo během jednoho a půl roku od sklonku roku 2009 do poloviny roku 2011, tj. asi čtyři roky poté, co se objevilo vydání první (pouze v anglickém jazyce). Cíle knihy Možná přemýšlíte nad tím, proč byste si měli koupit zrovna tuto knihu o analýze paketů, a ne nějakou jinou. Odpověď se skrývá v titulu: Analýza sítí a řešení problémů v programu Wireshark. Není nad praktické zkušenosti a v knize lze tyto zkušenosti nejlépe nahradit díky praktickým příkladům analýzy paketů a reálným scénářům. První polovina této knihy přináší nezbytné znalosti, které potřebujete k analýze paketů a práci v programu Wireshark. Druhá polovina knihy je věnována výhradně praktickým příkladům, se kterými se můžete běžně setkat při každodenní správě sítě. Nehledě na to, zda pracujete jako síťový technik, správce sítě, šéf oddělení IT, správce pracovních stanic, nebo dokonce síťový bezpečnostní analytik, mohou vám značně pomoci metody analýzy paketů, které jsou popsány v této knize. Koncepce a přístup Obecně se můžu označit za pohodáře. Při výuce se tedy snažím postupovat neformálním způsobem. Tento přístup se projevuje i v jazyce této knihy. Při rozboru technických koncepcí je snadné zapadnout do technického žargonu, ale vyvinul jsem maximální úsilí, abych výklad udržel na konverzační rovině. Všechny definice jsem psal jasně, přímo a věcně, bez zbytečné vaty. Pokud to s učením analýzy paketů myslíte vážně, měli byste si osvojit koncepce v prvních několika kapitolách, protože bez nich nemůžete porozumět zbytku 13

Úvod knihy. Druhá polovina knihy je zcela praktická. Ve své práci se sice nemusíte setkat s přesně stejnými scénáři, ale měli byste umět příslušné koncepce aplikovat v situacích, které budete řešit. Následuje stručný přehled obsahu kapitol této knihy: Kapitola 1: Úvod do analýzy paketů a sítí Co to je analýza paketů? Jak funguje? Jak se provádí? Tato kapitola se zabývá základy síťové komunikace a analýzy paketů. Kapitola 2: Napíchnutí linky V této kapitole si ukážeme různé metody, jak lze do sítě připojit paketový sniffer. Kapitola 3: Úvod do programu Wireshark Tato kapitola obsahuje základní informace o programu Wireshark kde jej získat, jak jej používat, co dělá, proč je skvělý a další užitečné podrobnosti. Kapitola 4: Zpracování zachycených paketů Po instalaci a zprovoznění programu Wireshark se musíte naučit, jak zachycené pakety zpracovávat. V této kapitole získáte základy. Kapitola 5: Pokročilé funkce programu Wireshark Jakmile se naučíte lézt, je čas s výukou chození. V této kapitole se pustíme do pokročilých funkcí programu Wireshark a podíváme se mu pod kapotu, abychom mohli využít některé méně triviální funkce. Kapitola 6: Běžné protokoly nižších vrstev Tato kapitola ukazuje, jak na úrovni paketů vypadají některé běžné síťové komunikační protokoly nižších vrstev, např. TCP, UDP a IP. Chcete-li porozumět možným chybám těchto protokolů, musíte nejdříve chápat, jak správně fungují. Kapitola 7: Běžné protokoly vyšší vrstvy Tato kapitola pokračuje v rozboru protokolů a představuje na úrovni paketů nejrozšířenější síťové komunikační protokoly vyšší vrstvy: HTTP, DNS a DHCP. Kapitola 8: Běžné scénáře z praxe V této kapitole naleznete rozbor některých běžných vzorů provozu a první sadu praktických scénářů. Všechny scénáře mají přehledný formát, který postupuje od problému přes jeho analýzu k řešení. Tyto základní scénáře se týkají pouze několika počítačů a nevyžadují rozsáhlou analýzu pouze do té míry, abyste získali základní přehled problematiky. 14

Jak s knihou pracovat Kapitola 9: Zrychlení pomalé sítě Síťoví technici nejčastěji řeší stížnosti, které se týkají nedostatečného výkonu sítě. Devátá kapitola je věnována řešení tohoto typu problémů. Kapitola 10: Analýza paketů a zabezpečení Zabezpečení sítě patří mezi nejsledovanější témata z oblasti IT. Kapitola 10 představuje některé scénáře, které se týkají řešení bezpečnostních potíží metodami analýzy paketů. Kapitola 11: Analýza bezdrátových paketů Tato kapitola slouží jako úvod do analýzy bezdrátových paketů. Rozebírá rozdíly mezi analýzou v bezdrátových a kabelových sítích a uvádí některé příklady provozu v bezdrátových sítích. Příloha: Další informace Příloha knihy doporučuje některé další referenční nástroje a weby, které se vám mohou hodit při rozvíjení postupů analýzy paketů, s nimiž jste se seznámili v předchozí části knihy. Jak s knihou pracovat Tuto knihu lze používat dvěma způsoby: Jako výukový text, který můžete přečíst po jednotlivých kapitolách od začátku do konce a který vám umožní porozumět základům analýzy paketů. Přitom je vhodné věnovat zvláštní pozornost praktickým scénářům v posledních několika kapitolách. Jako referenční zdroj. Některé funkce programu Wireshark se nepoužívají příliš často, takže můžete zapomenout, jak pracují. Knihu Analýza sítí a řešení problémů v programu Wireshark je vhodné mít po ruce, potřebujete-li si rychle osvěžit, jak se určitá funkce používá. Kniha také obsahuje unikátní grafy, diagramy a postupy, které se mohou při praktické analýze paketů hodit. Ukázkové zachycené soubory Všechny zachycené soubory v této knize jsou k dispozici na stránce nakladatelství No Starch Press: http://www.nostarch.com/packet2.htm po klepnutí na odkaz Download the capture files for this book. Chcete-li z knihy vytěžit maximum, rozhodně doporučuji, abyste si tyto soubory stáhli a používali je při čtení příslušných příkladů. 15

Úvod Nadace Rural Technology Fund 16 V tomto úvodu nesmí chybět zmínka o velkém přínosu originálního vydání knihy Analýza sítí a řešení problémů v programu Wireshark. Krátce po prvním vydání této knihy jsem založil neziskovou organizaci typu 501(c)(3), která završuje mé největší sny. Studenti z venkova, i když mají výborné známky, mívají často méně příležitostí k seznámení s technologiemi než jejich kolegové z měst. Nadace Rural Technology Fund (RTF), založená roku 2008, se snaží vyrovnat digitální příkop mezi venkovskými komunitami a jejich městskými a předměstskými protějšky. Přitom se využívají cílené stipendijní programy, komunitní práce a obecná propagace technologií ve venkovských oblastech. Naše stipendia jsou zaměřena na studenty žijící ve vesnických komunitách, kteří se zajímají o počítačové technologie a plánují se v tomto oboru dále vzdělávat. S potěšením oznamuji, že 100 procent autorských honorářů z této knihy směřuje přímo do nadace Rural Technology Fund, která bude poskytovat tato stipendia. Chcete-li získat další informace o nadaci Rural Technology Fund nebo o tom, jak můžete sami přispět, navštivte náš web na adrese http://www.ruraltechfund.org/. Kontakt s autorem Pokaždé jsem nadšený, když dostanu zpětnou vazbu od svých čtenářů. Pokud byste mě chtěli z jakéhokoli důvodu kontaktovat, můžete posílat libovolné otázky, komentáře, hrozby a návrhy k sňatku přímo na moji adresu chris@chrissanders.org. Pravidelně také píši blog na adrese http://www.chrissanders.org/ a můžete mě následovat na účtu Twitter @chrissanders88. Zpětná vazba od čtenářů Nakladatelství a vydavatelství Computer Press, které pro vás tuto knihu přeložilo, stojí také o zpětnou vazbu a bude na vaše podněty a dotazy reagovat. Můžete se obrátit na následující adresy: redakce PC literatury Computer Press Spielberk Office Centre Holandská 3 639 00 Brno nebo sefredaktor.pc@cpress.cz

Errata Computer Press neposkytuje rady ani jakýkoli servis pro aplikace třetích stran. Pokud budete mít dotaz k programu, obraťte se prosím na jeho tvůrce. Errata Přestože jsme udělali maximum pro to, abychom zajistili přesnost a správnost obsahu, chybám se úplně vyhnout nelze. Pokud v některé z našich knih najdete chybu, ať už chybu v textu nebo v kódu, budeme rádi, pokud nám ji oznámíte. Ostatní uživatele tak můžete ušetřit frustrace a nám můžete pomoci zlepšit následující vydání této knihy. Veškerá existující errata zobrazíte na adrese http://knihy.cpress.cz/k1986 po klepnutí na odkaz Soubory ke stažení. 17

Errata KAPITOLA 1 Úvod do analýzy paketů a sítí V každé počítačové síti se může denně vyskytnout spousta problémů: od prosté infekce spywarem po složitou chybu konfigurace směrovače. Některé potíže přitom nelze vyřešit okamžitě. Můžeme nanejvýš doufat, že jsme na problémy plně připraveni a máme dostatečné znalosti a potřebné nástroje, abychom dokázali vhodně reagovat. Všechny síťové problémy začínají na úrovni paketů, kde se může ukázat, že i nejpřitažlivější aplikace má zcela neefektivní implementaci a zdánlivě spolehlivé protokoly obsahují bezpečnostní díry. Chceme-li síťovým problémům lépe porozumět, musíme přejít na úroveň paketů. Zde je vidět úplně vše nic neschovají matoucí struktury nabídek, vizuálně atraktivní uživatelské rozhraní ani nespolehliví zaměstnanci. Na této úrovni neexistují žádná skutečná tajemství (pouze ta šifrovaná). Čím více toho zvládneme na úrovni paketů, tím lépe dokážeme kontrolovat svou síť a řešit síťové potíže. To je doménou analýzy paketů. V této knize se do světa analýzy paketů pustíme okamžitě. Na praktických příkladech ukážeme, jak zrychlit síťovou komunikaci, identifikovat úzká hrdla aplikací, nebo dokonce stopovat hackery. Po přečtení této knihy dokážete implementovat pokročilé postupy analýzy paketů, které vám pomohou vyřešit i ty nejobtížnější síťové potíže. V této kapitole začneme od základů a zaměříme se na síťovou komunikaci. S využitím těchto základních informací pak analyzujeme různé scénáře. 19

Kapitola 1 Úvod do analýzy paketů a sítí Analýza paketů a nástroje pro sledování paketů 20 Analýza paketů, která se často označuje jako sledování paketů (packet sniffing) nebo analýza protokolů, popisuje proces zachytávání a interpretace aktuálních dat přenášených po síti. Díky tomu lze lépe porozumět fungování dané sítě. K analýze paketů se obvykle používá paketový sniffer (packet sniffer nástroj pro sledování paketů), který umožňuje zachytávat neformátovaná síťová data při jejich přenosu. Analýza paketů poskytuje následující možnosti: Seznámení s vlastnostmi sítě Zjištění uživatelů sítě Zjištění, kdo nebo co spotřebovává dostupnou šířku pásma Identifikace časů špičkového využití sítě Identifikace možných útoků nebo škodlivé aktivity Vyhledání nezabezpečených a neefektivních aplikací K dispozici jsou paketové sniffery různých typů včetně bezplatných a komerčních. Každý program je navržen k odlišným účelům. Mezi oblíbené programy na analýzu paketů patří tcpdump, OmniPeek a Wireshark (v této knize se budeme zabývat pouze posledním uvedeným programem). tcpdump je program pro příkazový řádek. OmniPeek a Wireshark mají grafická uživatelská rozhraní (GUI). Hodnocení paketového snifferu Při výběru paketového snifferu je nutné zohlednit několik faktorů, mj.: Podporované protokoly všechny paketové sniffery umožňují interpretovat více protokolů. Většina z nich dokáže interpretovat běžné síťové protokoly (např. IPv4 a ICMP), protokoly transportní vrstvy (např. TCP a UDP), a dokonce protokoly aplikační vrstvy (mezi něž patří DNS a HTTP). Nemusí však podporovat netradiční nebo novější protokoly (třeba IPv6, SMBv2 či SIP). Před nasazením snifferu byste měli ověřit, zda je kompatibilní s protokoly, které chcete analyzovat. Snadné používání vezměte v úvahu uspořádání ovládacích prvků programu, snadnost instalace a celkové postupy standardních operací. Zvolený program by měl odpovídat úrovni vašich znalostí. Pokud nemáte s analýzou paketů delší praxi, raději se vyhněte pokročilejším paketovým snifferům pro příkazový řádek, jako je tcpdump. Na druhou stranu máte-li bohaté zkušenosti, můžete dát pokročilejšímu programu přednost. Když získáte v oblasti analýzy paketů více praxe, můžete v některých případech dokonce s výhodou kombinovat více paketových snifferů. Náklady na paketových snifferech je potěšující, že existuje mnoho bezplatných programů tohoto typu, které jsou srovnatelné s kterýmkoli komerčním

Analýza paketů a nástroje pro sledování paketů produktem. Komerční produkty a jejich bezplatně dostupné alternativy se liší zejména svými vykazovacími moduly. Komerční programy obvykle obsahují nějaký modul na generování složitých výkazů, který má u bezplatných aplikací často jen omezené možnosti nebo úplně chybí. Podpora programu i když postupně zvládnete základy používání paketového snifferu, můžete příležitostně potřebovat pomoc při řešení nových problémů. Když porovnáváte dostupnou podporu, všímejte si vývojářské dokumentace, veřejných fór a e-mailových konferencí. Bezplatně dostupné programy na sledování paketů jako Wireshark sice obvykle nenabízejí podporu vývojářů, ale tuto mezeru často zaplňují komunity uživatelů těchto aplikací. Tyto komunity uživatelů a přispěvatelů provozují diskuzní fóra, wiki a blogy, kde můžete získat dostatek informací, abyste svůj paketový sniffer lépe využili. Podpora operačních systémů některé paketové sniffery bohužel nejsou kompatibilní se všemi operačními systémy. Zvolte si ten program, který bude fungovat ve všech operačních systémech, které potřebujete používat. Pracujete-li jako konzultant, často musíte zachytávat a analyzovat pakety v různých operačních systémech. Hledejte proto nástroj, který funguje ve většině systémů. Pamatujte také na to, že někdy je nutné zachytávat pakety v jednom počítači a analyzovat je v jiném. Kvůli rozdílům mezi operačními systémy může být potřeba použít v každém zařízení jinou aplikaci. Principy paketových snifferů Proces sledování paketů vyžaduje spolupráci softwaru a hardwaru. Celý proces lze rozdělit na tři fáze: Shromažďování v prvním kroku paketový sniffer sbírá neformátovaná binární data, která putují po síti. Přitom se vybrané síťové rozhraní obvykle přepíná do promiskuitního režimu. V tomto režimu dokáže síťová karta naslouchat veškerému provozu v síťovém segmentu, nikoli pouze datům, která jsou jí adresována. Konverze v tomto kroku jsou zachycená binární data převedena do čitelného tvaru. Zde končí možnosti většiny pokročilých paketových snifferů pro příkazový řádek. V této fázi mají síťová data podobu, kterou lze interpretovat pouze na zcela základní úrovni. Větší část analýzy zůstává na koncovém uživateli. Analýza třetí a závěrečný krok zahrnuje vlastní analýzu zachycených a konvertovaných dat. Paketový sniffer načte zachycená síťová data, na základě extrahovaných informací zkontroluje síťové protokoly a zahájí analýzu konkrétních vlastností příslušného protokolu. 21