Press "Enter" to skip to content

Paket Analizcisi: TCPDUMP 15 Komutu Örneği

Tcpdump komutu paket analizcisi olarak adlandırılır. tcpdump komutu unix işletim sisteminin birçok çeşidi üzerinde çalışmaktadır.

Tcpdump, paketleri kaydetmemizi sağlar, böylece gelecekteki analizler için kullanabilirsiniz. Kaydedilen dosya aynı tcpdump komutuyla görüntülenebilir. Tcpdump pcap dosyalarını okumak için wireshark gibi açık kaynaklı yazılımları da kullanabiliriz.

Bu tcpdump öğreticide, tcpdump komutunun nasıl kullanılacağına dair bazı pratik örnekleri tartışalım.

1. tcpdump -i kullanarak belirli bir ethernet arabiriminden paketleri yakalayın.

Herhangi bir seçenek olmadan tcpdump komutunu çalıştırdığınızda, tüm arabirimlerden akan tüm paketleri ele alacaktır. tcpdump komutu ile -i seçeneği, belirli bir ethernet arabirimine filtre uygulamanızı sağlar.

$ tcpdump -i eth1
14:59:26.608728 IP xx.domain.netbcp.net.52497 > valh4.lell.net.ssh: . ack 540 win 16554
14:59:26.610602 IP resolver.lell.net.domain > valh4.lell.net.24151:  4278 1/0/0 (73)
14:59:26.611262 IP valh4.lell.net.38527 > resolver.lell.net.domain:  26364+ PTR? 244.207.104.10.in-addr.arpa. (45)

Bu örnekte, tcpdump, eth1 arabirimindeki tüm paket akışlarını yakaladı ve standart çıktıda göründüğü gibi.

Not: Editcap yardımcı programı, belirli paketleri döküm dosyasından seçmek veya kaldırmak ve bunları belirli bir biçime dönüştürmek için kullanılabilir.

2. tcpdump -c kullanarak sadece N sayıda paket yakalayın

Tcpdump komutunu çalıştırdığınızda, tcpdump komutunu iptal edene kadar paketler verir. -c seçeneğini kullanarak, yakalanacak paket sayısını belirleyebilirsiniz.

$ tcpdump -c 2 -i eth0
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
14:38:38.184913 IP valh4.lell.net.ssh > yy.domain.innetbcp.net.11006: P 1457255642:1457255758(116) ack 1561463966 win 63652
14:38:38.690919 IP valh4.lell.net.ssh > yy.domain.innetbcp.net.11006: P 116:232(116) ack 1 win 63652
2 packets captured
13 packets received by filter
0 packets dropped by kernel

Yukarıdaki tcpdump komutu, eth0 arayüzünden sadece 2 paket ele geçirdi.

Not: Mergecap ve TShark: Mergecap, çoklu dökümleri tek bir döküm dosyasına birleştiren bir paket dökümü birleştirme aracıdır. Tshark, ağ trafiğini analiz etmek için kullanılabilecek ağ paketlerini yakalamak için güçlü bir araçtır. Wireshark ağ analizörü dağıtımı ile birlikte gelir.

3. tcpdump -A kullanarak ASCII’de Yakalanan Paketleri Görüntüle

Aşağıdaki tcpdump sözdizimi, ASCII’de paketi yazdırır.

$ tcpdump -A -i eth0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
14:34:50.913995 IP valh4.lell.net.ssh > yy.domain.innetbcp.net.11006: P 1457239478:1457239594(116) ack 1561461262 win 63652
E.....@.@..]..i...9...*.V...]...P....h....E...>{..U=...g.
......G..7\+KA....A...L.
14:34:51.423640 IP valh4.lell.net.ssh > yy.domain.innetbcp.net.11006: P 116:232(116) ack 1 win 63652
E.....@.@..\..i...9...*.V..*]...P....h....7......X..!....Im.S.g.u:*..O&....^#Ba...
E..(R.@.|.....9...i.*...]...V..*P..OWp........

Not: Ağ arabirimlerini yapılandırmak için Ifconfig komutu kullanılır

4. HEX ve ASCII’de Yakalanan Paketleri tcpdump -XX kullanarak görüntüleme

Bazı kullanıcılar paketleri onaltılık değerler olarak analiz etmek isteyebilir. tcpdump, ASCII ve HEX biçimindeki paketleri yazdırmanın bir yolunu sunar.

 

$tcpdump -XX -i eth0
18:52:54.859697 IP zz.domain.innetbcp.net.63897 > valh4.lell.net.ssh: . ack 232 win 16511
        0x0000:  0050 569c 35a3 0019 bb1c 0c00 0800 4500  .PV.5.........E.
        0x0010:  0028 042a 4000 7906 c89c 10b5 aaf6 0f9a  .(.*@.y.........
        0x0020:  69c4 f999 0016 57db 6e08 c712 ea2e 5010  i.....W.n.....P.
        0x0030:  407f c976 0000 0000 0000 0000            @..v........
18:52:54.877713 IP 10.0.0.0 > all-systems.mcast.net: igmp query v3 [max resp time 1s]
        0x0000:  0050 569c 35a3 0000 0000 0000 0800 4600  .PV.5.........F.
        0x0010:  0024 0000 0000 0102 3ad3 0a00 0000 e000  .$......:.......
        0x0020:  0001 9404 0000 1101 ebfe 0000 0000 0300  ................
        0x0030:  0000 0000 0000 0000 0000 0000            ............

5. Yakalanan Paketler tcpdump -w kullanarak bir dosyaya yazın.

tcpdump, paketleri bir dosyaya kaydetmenizi sağlar ve daha sonra daha fazla analiz için paket dosyasını kullanabilirsiniz.

$ tcpdump -w 08232010.pcap -i eth0
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
32 packets captured
32 packets received by filter
0 packets dropped by kernel

-w seçeneği paketleri belirli bir dosyaya yazar. Dosya uzantısı herhangi bir ağ protokolü tarafından okunabilir .pcap olmalıdır.

6. tcpdump -r kullanarak kaydedilmiş bir dosyadan paketlerin okunması

Yakalanan pcap dosyasını okuyabilir ve aşağıda gösterildiği gibi analiz için paketleri görüntüleyebilirsiniz.

 

$tcpdump -tttt -r data.pcap
2010-08-22 21:35:26.571793 00:50:56:9c:69:38 (oui Unknown) > Broadcast, ethertype Unknown (0xcafe), length 74:
        0x0000:  0200 000a ffff 0000 ffff 0c00 3c00 0000  ............<... 0x0010: 0000 0000 0100 0080 3e9e 2900 0000 0000 ........>.).....
        0x0020:  0000 0000 ffff ffff ad00 996b 0600 0050  ...........k...P
        0x0030:  569c 6938 0000 0000 8e07 0000            V.i8........
2010-08-22 21:35:26.571797 IP valh4.lell.net.ssh > zz.domain.innetbcp.net.50570: P 800464396:800464448(52) ack 203316566 win 71
2010-08-22 21:35:26.571800 IP valh4.lell.net.ssh > zz.domain.innetbcp.net.50570: P 52:168(116) ack 1 win 71
2010-08-22 21:35:26.584865 IP valh5.lell.net.ssh > 11.154.12.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADC

7. tcpdump -n kullanarak IP adresi ile paketleri yakalayın

Yukarıdaki tüm örneklerde, paketleri ip adresi değil, DNS adresiyle yazdırıyordu Aşağıdaki örnek, paketleri yakalar ve söz konusu makinelerin IP adresini gösterir.

$ tcpdump -n -i eth0
15:01:35.170763 IP 10.0.19.121.52497 > 11.154.12.121.ssh: P 105:157(52) ack 18060 win 16549
15:01:35.170776 IP 11.154.12.121.ssh > 10.0.19.121.52497: P 23988:24136(148) ack 157 win 113
15:01:35.170894 IP 11.154.12.121.ssh > 10.0.19.121.52497: P 24136:24380(244) ack 157 win 113

8. tcpdump -tttt kullanarak uygun okunabilir zaman damgası ile paketleri yakalayın

$ tcpdump -n -tttt -i eth0

2010-08-22 15:10:39.162830 IP 10.0.19.121.52497 > 11.154.12.121.ssh: . ack 49800 win 16390
2010-08-22 15:10:39.162833 IP 10.0.19.121.52497 > 11.154.12.121.ssh: . ack 50288 win 16660
2010-08-22 15:10:39.162867 IP 10.0.19.121.52497 > 11.154.12.121.ssh: . ack 50584 win 16586

9. N bayttan daha uzun paketleri okuyun

Tcpdump komutuyla ‘büyük’ filtresini kullanarak yalnızca n sayısından daha büyük olan baytları alabilirsiniz.

$ tcpdump -w g_1024.pcap greater 1024

10. Yalnızca belirli bir protokol türünün paketlerini alma

Paketleri protokol türüne göre alabilirsiniz. Bu protokollerden birini belirleyebilirsiniz – fddi, tr, wlan, ip, ip6, arp, rarp, decnet, tcp ve udp. Aşağıdaki örnek sadece eth0 arayüzünden akan arp paketlerini yakalar.

$ tcpdump -i eth0 arp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
19:41:52.809642 arp who-has valh5.lell.net tell valh9.lell.net
19:41:52.863689 arp who-has 11.154.12.1 tell valh6.lell.net
19:41:53.024769 arp who-has 11.154.12.1 tell valh7.lell.net

11. Paketleri N bayttan daha küçüklerini okuyun

Yalnızca tcpdump komutuyla bir ‘daha az’ filtresi kullanarak n sayıda bayttan daha az sayıda paket alabilirsiniz.

$ tcpdump -w l_1024.pcap  less 1024

12. tcpdump ile belirli bir porttan akan paketleri alır

Bir makinede belirli bir port tarafından alınan tüm paketleri bilmek istiyorsanız, tcpdump komutunu aşağıda gösterildiği gibi kullanabilirsiniz.

$ tcpdump -i eth0 port 22
19:44:44.934459 IP valh4.lell.net.ssh > zz.domain.innetbcp.net.63897: P 18932:19096(164) ack 105 win 71
19:44:44.934533 IP valh4.lell.net.ssh > zz.domain.innetbcp.net.63897: P 19096:19260(164) ack 105 win 71
19:44:44.934612 IP valh4.lell.net.ssh > zz.domain.innetbcp.net.63897: P 19260:19424(164) ack 105 win 71

13. Belirli hedef IP ve Port için paket yakalama

Paketler kaynak ve hedef IP ve port numaralarına sahip olacaktır. Tcpdump kullanarak, kaynak veya hedef IP ve port numarasına filtre uygulayabiliriz. Aşağıdaki komut, paketleri belirli bir hedef ip ve port numarası 22 ile eth0 içinde akar.

$ tcpdump -w xpackets.pcap -i eth0 dst 10.181.140.216 and port 22

14. İki ana bilgisayar arasında TCP iletişim paketlerini yakalayın

İki farklı makineden iki farklı işlem tcp protokolü üzerinden iletişim kuruyorsa, bu paketleri aşağıda gösterildiği gibi tcpdump kullanarak yakalayabiliriz.

$tcpdump -w comm.pcap -i eth0 dst 16.181.170.246 and port 22

Potansiyel sorunların hatalarını ayıklamak için herhangi bir ağ protokolü analiz aracını kullanarak comm.pcap dosyasını açabilirsiniz.

15. tcpdump Filtre Paketleri – Arp ve rarp dışındaki tüm paketleri yakalayın

Tcpdump komutunda, paketleri buna göre filtrelemek için “ve”, “veya” ve “not” koşullarını verebilirsiniz.

$ tcpdump -i eth0 not arp and not rarp
20:33:15.479278 IP resolver.lell.net.domain > valh4.lell.net.64639:  26929 1/0/0 (73)
20:33:15.479890 IP valh4.lell.net.16053 > resolver.lell.net.domain:  56556+ PTR? 255.107.154.15.in-addr.arpa. (45)
20:33:15.480197 IP valh4.lell.net.ssh > zz.domain.innetbcp.net.63897: P 540:1504(964) ack 1 win 96
20:33:15.487118 IP zz.domain.innetbcp.net.63897 > valh4.lell.net.ssh: . ack 540 win 16486
20:33:15.668599 IP 10.0.0.0 > all-systems.mcast.net: igmp query v3 [max resp time 1s]

Hepsi bu kadar umarım faydalı olmuştur.

Buna benzer diğer yazılarım

Yeni dostum Ramel Merhaba arkadaşlar 🙂 Yeni dostum Ramel'den bahsedeyim. Kendime yeni yardımcı aldım hatta öyle demeyelim abes kaçmasın Yeni dostum Ramel 🙂 Evet...
Google AdSense / Google Adwords açığı Çoğunuzun bildiği gibi, Google, reklamverenlerin reklam platformunu manipüle edebildiği bir AdSense kullanımını doğruladı; bu da, birçok AdSense yayın...
Yeni telefonum “Xperia XZ” Merhabalar dostlar, Bu yazıda yeni telefonum Sony peria XZ'den bahsedeceğim, aslında Yavuz'un bu konusu üzerine bana nispet yapması üzerine bende b...
WordPress optimizasyon Merhabalar efenim, Günümüzde wordpress kullanıcılarının geneli demeyelim de büyük çoğunluğu WordPress Güvenlik ve optimizasyon konusunda forumlarda ya...
cPanel/Whm – Server optimizasyon Merhabalar, Bu yazıda birçok kişinin Server üzerinde yaşadığı yavaşlık ve basit güvenlik ayarlarından muzdarip olduğunu ve bu sorunu nasıl çözeceğine ...
WordPress vs Drupal vs Joomla Sizi bilmiyoruz ama biz bir ürünü satın almadan önce o ürünün doğru tercih olup olmadığını enine boyuna araştırıyoruz. Hatta tamamen ücretsiz olan ürü...

Bu yazı 69 Defa okundu. Diğer yazılarımı da oku süper yazarım :)

||||

Ali Çömez
Ali Çömez

Kaldırımda yürürken beyaz çizgilere basmamaya çalışan, Sabah yüzünü yıkarken dirseklerinden su sızmasından nefret eden, Dönerle ayranı aynı anda bitirebilen, son dakikada otobüsü kaçırsada grur yapıp arkasından koşmayan... bir insanım :)

View all posts

    Bir cevap yazın

    E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir