tcpdump

Průvodce nástrojem pro analýzu síťového provozu TCPDUMP

Průvodce nástrojem pro analýzu síťového provozu TCPDUMP

Tcpdump je nástroj příkazového řádku pro čichání síťových paketů. Nejčastěji se používá k řešení potíží se sítěmi a testování bezpečnostních problémů. Navzdory absenci grafického uživatelského rozhraní je to nejpopulárnější, nejvýkonnější a nejuniverzálnější nástroj příkazového řádku.

Je nativní pro Linux, takže většina distribucí Linuxu jej instaluje jako součást standardního OS. Tcpdump je program propojený s libpcap, což je knihovna pro zachycení síťového datagramu.

Tento článek demystifikuje tcpdump tím, že ukazuje, jak v tomto nástroji zachytit, číst a analyzovat zachycený síťový provoz. Později použijeme naše porozumění ke kontrole datových paketů s pokročilými filtry příznaků TCP.

Instalace Tcpdump

Výchozí instalace Tcpdump ve vaší distribuci závisí na možnostech vybraných během procesu instalace. V případě vlastní instalace je možné, že balíček není k dispozici. Instalaci tcpdump můžete zkontrolovat pomocí dpkg příkaz s „-s“Možnost.

ubuntu $ ubuntu: ~ $ dpkg -s tcpdump

Nebo použijte příkaz „sudo apt-get install tcpdump“ pro instalaci tcpdump v Ubuntu Linux.

Zachycování paketů v Tcpdump:

Abychom mohli zahájit proces snímání, musíme nejprve najít naše pracovní rozhraní pomocí „ifconfig”Příkaz. Nebo můžeme zobrazit všechna dostupná rozhraní pomocí tcpdump příkaz s „-D“Možnost.

ubuntu $ ubuntu: ~ $ tcpdump -D

Chcete-li zahájit proces snímání, můžete použít syntaxi;

tcpdump [-options] [výraz]

Například v níže uvedeném příkazu použijeme „-i„Možnost zachytit provoz na„enp0s3“Rozhraní s„-C„Příznak k omezení zachycených paketů a zápisu“-w„To na a test_capture.pcap soubor.

ubuntu $ ubuntu: ~ $ sudo tcpdump -i enp0s3 -c 20 -w / tmp / test_capture.pcap

Podobně můžete použít různé kombinace filtrů k izolaci provozu podle vašeho požadavku. Jeden takový příklad zahrnuje zachycení síťových dat opouštějících a přicházejících k hostiteli pomocí hostitel příkaz pro konkrétní přístav. Navíc jsem použil „-n„Příznak, který zabrání tcpdump v zachycení vyhledávání DNS. Tento příznak je velmi užitečný při nasycení provozu při řešení potíží se sítí.

ubuntu $ ubuntu: ~ $ sudo tcpdump -i enp0s3 -c 20 hostitel 10.0.2.15 a dst port 80 -w / tmp / test_capture1.pcap
tcpdump: poslech na enp0s3, linkový typ EN10MB (Ethernet), velikost záznamu 262144 bajtů
Zachyceno 20 paketů
21 paketů přijatých filtrem
0 paketů vynechaných jádrem

Používáme „a”Příkaz k zachycení pouze paketů obsahujících hostitele 10.0.2.15 a cílový port 80. Podobně lze pro usnadnění řešení problémů použít různé další filtry.

Pokud nechcete použít „-C„Pro omezení provozu zachycení, můžete použít signál přerušení, tj.E., Ctrl + C, zastavit proces izolace.

Čtení souborů Tcpdump

Čtení zachycených souborů tcpdump může být hodně ohromující. Ve výchozím nastavení přiřazuje tcp názvy IP adresám a portům. Použijeme „-r„Příznak pro čtení našeho již zachyceného souboru test_capture.pcap uložen v / tmp složku. Výstup přivedeme na potrubí awk příkaz pouze na výstup zdrojové adresy IP a portů a připojení k příkazu hlava zobrazit pouze prvních 5 položek.

ubuntu $ ubuntu: ~ $ sudo tcpdump -r / tmp / test_capture1.pcap | awk -F „“ 'tisk $ 3' | hlava -5
čtení ze souboru / tmp / test_capture.pcap, linkový typ EN10MB (Ethernet)
IP ubuntu.53298
IP ubuntu.53298
IP ubuntu.53298
IP ubuntu.53298
IP ubuntu.53298

K řešení problémů se sítí se však doporučuje používat čísla a adresy IP a porty. Zakážeme rozlišení názvu IP pomocí „-n„Vlajka a názvy portů s“-nn".

ubuntu $ ubuntu: ~ $ sudo tcpdump -i enp0s3 -n
tcpdump: podrobný výstup potlačen, použijte -v nebo -vv pro úplné dekódování protokolu
poslech na enp0s3, linkový typ EN10MB (Ethernet), velikost záznamu 262144 bajtů
20:08:22.146354 IP 10.0.2.15.54080> 172.67.39.148.443: Vlajky [str.], násl. 1276027591: 1276027630, ack 544039114, výhra 63900, délka 39
20:08:22.146745 IP 10.0.2.15.43456> 54.204.39.132.443: Vlajky [str.], nás 3381018839: 3381018885, ack 543136109, výhra 65535, délka 46
20:08:22.147506 IP 172.67.39.148.443> 10.0.2.15.54080: Příznaky [.], ack 39, vyhrajte 65535, délka 0
20:08:22.147510 IP 54.204.39.132.443> 10.0.2.15.43456: Příznaky [.], ack 46, vyhrajte 65535, délka 0
20:08:22.202346 IP 216.58.209.142.443> 10.0.2.15.41050: Příznaky [str.], nás 502925703: 502925826, ack 1203118935, výhra 65535, délka 123
20:08:22.202868 IP 10.0.2.15.41050> 216.58.209.142.443: Vlajky [str.], nás 1:40, ack 123, vyhraj 65535, délka 39

Porozumění zachycenému výstupu

Tcpdump zachycuje mnoho protokolů, včetně UDP, TCP, ICMP atd. Není snadné je zde všechny pokrýt. Je však důležité pochopit, jak se informace zobrazují a jaké parametry obsahují.

Tcpdump zobrazuje každý paket v řadě s časovým razítkem a informacemi o protokolu. Obecně platí, že formát protokolu TCP je následující:

. > .: , , , , ,

Vysvětlíme jedno ze zachycených polí paketů podle polí:

20:08:22.146354 IP 10.0.2.15.54080> 172.67.39.148.443: Vlajky [str.], nás 1276027591: 1276027630, ack 544039114, výhra 63900, délka 39
  • 20:08:22.146354: Časové razítko zachyceného paketu
  • IP: Protokol síťové vrstvy.
  • 10.0.2.15.54080: Toto pole obsahuje zdrojovou adresu IP a zdrojový port.
  • 172.67.39.148.443: Toto pole představuje cílovou adresu IP a číslo portu.
  • Vlajky [P.] /: Příznaky představují stav připojení. V tomto případě [P.] označuje PUSH potvrzovací paket. Pole vlajky obsahuje také některé další hodnoty, jako například:
    1. S: SYN
    2. P: PUSH
    3. [.]: ACK
    4. F: FIN
    5. [S.]: SYN_ACK
    6. R: RST
  • seq 1276027591: 1276027630: Pořadové číslo v prvním: poslední formát označuje počet dat v paketu. Kromě prvního paketu, kde jsou čísla v absolutních číslech, mají následující pakety relativní čísla. V tomto případě zde čísla znamenají, že paket obsahuje datové bajty od 1276027591 do 1276027630.
  • ack 544039114: Potvrzovací číslo zobrazuje další očekávané pořadové číslo dat.
  • win 63900: Velikost okna zobrazuje počet dostupných bajtů v přijaté vyrovnávací paměti.
  • délka 39: Délka dat užitečného zatížení, v bajtech.

Pokročilé filtry

Nyní můžeme použít některé pokročilé možnosti filtrování záhlaví k zobrazení a analýze pouze datových paketů. V libovolném paketu TCP začínají příznaky TCP od 14. bajtu, takže PSH a ACK jsou reprezentovány 4. a 5. bitem.

Tyto informace můžeme použít zapnutím těchto bitů 00011000 nebo 24 k zobrazení datových paketů pouze s příznaky PSH a ACK. Toto číslo předáme tcpdump s filtrem „tcp [13] = 24“, Všimněte si, že index pole v TCP začíná na nule.

Tento balíček odfiltrujeme z našeho text_capture.pcap soubor a použijte -A možnost zobrazit všechny podrobnosti paketu za vás.

Podobně můžete odfiltrovat některé další příznakové pakety pomocí „Tcp [13] = 8“ a „tcp [13] = 2“ pouze pro příznaky PSH a SYN atd.

ubuntu $ ubuntu: ~ $ sudo tcpdump -A 'tcp [13] = 24' -r / tmp / test_capture.pcap
čtení ze souboru / tmp / test_capture.pcap, linkový typ EN10MB (Ethernet)
19:26:17.827902 IP ubuntu.53298> 32.121.122.34.před naším letopočtem.googleusercontent.com.http: Vlajky [P.], seq 4286571276: 4286571363, potvrzeno 252096002, výhra 64240, délka 87: HTTP: GET / HTTP / 1.1
E…:?@[email protected].
… "z y .2.P… P… GET / HTTP / 1.1
Hostitel: kontrola připojení.ubuntu.com
Akceptovat: */*
Připojení: zavřít

Závěr

V tomto článku jsme vám představili některá z nejdůležitějších témat tcpdump. Tcpdump v kombinaci s výkonem CLI může být velkou pomocí při řešení problémů se sítí, automatizaci a správě zabezpečení. Po prostudování a sloučení mohou jeho filtry a možnosti příkazového řádku hodně přispět k vašim každodenním úkolům při řešení problémů a automatizaci a celkovému porozumění síti.

Trackpad a ukazatel myši AppyMouse na obrazovce pro tablety Windows
Uživatelé tabletů často postrádají ukazatel myši, zejména když obvykle používají notebooky. Dotykové smartphony a tablety mají mnoho výhod a jediným o...
Střední tlačítko myši nefunguje ve Windows 10
The prostřední tlačítko myši pomáhá procházet dlouhé webové stránky a obrazovky se spoustou dat. Pokud se to zastaví, budete nakonec používat klávesni...
Jak změnit levé a pravé tlačítko myši na počítači se systémem Windows 10
Je úplnou normou, že všechna zařízení počítačových myší jsou ergonomicky navržena pro praváky. K dispozici jsou však myší zařízení, která jsou speciál...