Packet Analysis

Packet analizi konusu başlı başına bir kursu doldurabilir ve sırf packet analizi üzerine yazılmış birçok kitap vardır. Ancak bugün sadece temelleri öğreneceğiz. İki son derece popüler packet analyzer vardır: Wireshark ve tcpdump. Bu araçlar network interface’lerinizi tarar, packet aktivitesini yakalar, paketleri parse eder ve bilgileri görmemiz için çıktı verir. Network analizinin en ince ayrıntılarına inmemizi ve düşük seviyeli şeylerle uğraşmamızı sağlarlar. Daha basit bir arayüze sahip olduğu için tcpdump’ı kullanacağız, ancak araç setinize packet analizi eklemek istiyorsanız Wireshark’a bakmanızı öneririm.

Install tcpdump

$ sudo apt install tcpdump

Bir interface üzerinde packet verisi yakalama

pete@icebox:~$ sudo tcpdump -i wlan0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on wlan0, link-type EN10MB (Ethernet), capture size 65535 bytes

11:28:23.958840 IP icebox.lan > nuq04s29-in-f4.1e100.net: ICMP echo request, id 1901, seq 2, length 64
11:28:23.970928 IP nuq04s29-in-f4.1e100.net > icebox.lan: ICMP echo reply, id 1901, seq 2, length 64
11:28:24.960464 IP icebox.lan > nuq04s29-in-f4.1e100.net: ICMP echo request, id 1901, seq 3, length 64
11:28:24.979299 IP nuq04s29-in-f4.1e100.net > icebox.lan: ICMP echo reply, id 1901, seq 3, length 64
11:28:25.961869 IP icebox.lan > nuq04s29-in-f4.1e100.net: ICMP echo request, id 1901, seq 4, length 64
11:28:25.976176 IP nuq04s29-in-f4.1e100.net > icebox.lan: ICMP echo reply, id 1901, seq 4, length 64
11:28:26.963667 IP icebox.lan > nuq04s29-in-f4.1e100.net: ICMP echo request, id 1901, seq 5, length 64
11:28:26.976137 IP nuq04s29-in-f4.1e100.net > icebox.lan: ICMP echo reply, id 1901, seq 5, length 64
11:28:30.674953 ARP, Request who-has 172.254.1.0 tell ThePickleParty.lan, length 28
11:28:31.190665 IP ThePickleParty.lan.51056 > 192.168.86.255.rfe: UDP, length 306

Packet capture çalıştırdığınızda çok fazla şeyin olduğunu fark edeceksiniz, bu beklenen bir şeydir çünkü arka planda çok fazla network aktivitesi olur. Yukarıdaki örneğimde, www.google.com’a ping atmaya karar verdiğim zamana ilişkin capture’dan yalnızca bir snippet aldım.

Çıktıyı anlamak

11:28:23.958840 IP icebox.lan > nuq04s29-in-f4.1e100.net: ICMP echo request, id 1901, seq 2, length 64
11:28:23.970928 IP nuq04s29-in-f4.1e100.net > icebox.lan: ICMP echo reply, id 1901, seq 2, length 64
  • İlk alan, network aktivitesinin timestamp’idir

  • IP, protokol bilgisini içerir

  • Sonraki kısımda source ve destination address’i görürsünüz: icebox.lan > nuq04s29-in-f4.1e100.net

  • seq, TCP packet’inin başlangıç ve bitiş sequence number’ıdır

  • length, byte cinsinden uzunluktur

Tcpdump çıktımızda gördüğünüz gibi, www.google.com’a bir ICMP echo request packet gönderiyoruz ve karşılığında bir ICMP echo reply packet alıyoruz! Ayrıca farklı packet’lerin farklı bilgiler çıktıladığını unutmayın, bunların neler olduğunu görmek için man sayfasına bakın.

tcpdump çıktısını bir dosyaya yazmak

$ sudo tcpdump -w /some/file

Son düşünceler: packet analizi konusunda yalnızca yüzeyi kazıdık. Bakılacak çok şey var ve Hex ve ASCII çıktılarıyla daha da derine inmeye hiç değinmedik. Packet analyzer’lar hakkında daha fazla bilgi edinmenize yardımcı olacak tonlarca kaynak çevrimiçi mevcut ve onları bulmanızı tavsiye ederim!

Last updated