Gelişmiş Wireshark Kullanımı (Advanced Wireshark Usage)
Last updated
Last updated
Dünyanın en çok kullanılan network analiz programlarından bir tanesi Wireshark'tır. Açık kaynak kodlu ve ücretsizdir. Windows, Macintosh ve Linux gibi birden fazla platformda çalışabilmektedir. Ve network analistlerinin şirketlerdeki bir sorunda ilk sarılacağı program denebilir. 1997'de network analiz dünyası fiyatı 5000 ila 20000 dolar arasında değişkenlik gösteren analiz programlarından ibaretti. O dönemde aktif olarak bu programları kullanan Gerald Combs, Wireshark'ın ve diğer taşınabilir network sniffer'ların atası olan Ethereal'i geliştirdi. Fakat bu marka isminin ticari haklarına sahip olmadığı için ismini Wireshark olarak değiştirdi ve piyasaya sürdü.
Network kartından gelen veriyi LibPcap, WinPcap, AirPcap, Npcap gibi kütüphaneler aracılığıyla işleyip Capture Engine'e taşır. Capture Engine, paketleri ne zaman yakalamaya başlanacağını ve ne zaman durdurulacağını organize eden kısımdır. Burada yakalanan veri henüz işlenmemiş ve hex veri olarak durmaktadır. Daha sonra bu veri Core Engine'e aktarılır. Burada, son kullanıcının görebileceği şekilde işlenir ve son string halini alır. Öte yandan, anlık olarak yakalanan paketlerin incelenmesinin yanı sıra, diskte bulunan herhangi bir pcap dosyasını WireTap kütüphanesi aracılığıyla işleyerek yine Wireshark içerisinde inceleme yapılabilir.
Wireshark'ta capture filtreleri, ağ trafiğini analiz etmek için kullanılan önemli araçlardan biridir. Syntax olarak Berkeley paket filtreleme yöntemini kullanırlar. Bu filtreler, yakalanan veri miktarını azaltarak sadece belirli trafiği görmenizi sağlar. Bu filtrelerden bazıları şunlardır ;
Host: Belirli bir kaynak veya hedef IP adresini filtrelemek için kullanılır. Örneğin, host 192.168.1.1
.
Port: Belirli bir kaynak veya hedef port numarasını filtrelemek için kullanılır. Örneğin, port 80
veya portrange 1000-2000
.
Protocol: Belirli bir protokolü filtrelemek için kullanılır. Örneğin, tcp
veya udp
.
Net: Belirli bir ağ veya alt ağı filtrelemek için kullanılır. Örneğin, net 192.168.1.0/24
.
Src/Dst: Kaynak veya hedef adresi belirtmek için kullanılır. Örneğin, src host 192.168.1.1
veya dst net 10.0.0.0/24
.
Logical Operators: Filtreler arasında mantıksal bağlantılar kurmak için kullanılır. Örneğin, and
, or
, not
.
Keyword Filters: Belirli protokoller veya durumları filtrelemek için anahtar kelimeler kullanılır. Örneğin, tcp.flags.syn == 1
(Sadece SYN paketlerini filtreler).
Wireshark'ta "Display Filter" olarak adlandırılan filtreler, ağ trafiği analizinde kullanılan güçlü araçlardır. Bu filtreler, belirli özelliklere, protokollere veya paket özelliklerine göre paketleri filtrelemeye ve analiz etmeye olanak tanır. Bu filtrelerden bazıları şunlardır;
ip.src ve ip.dst: Belirli bir kaynak veya hedef IP adresine sahip paketleri filtrelemek için kullanılır. Örneğin, "ip.src == 192.168.1.1" ifadesi, sadece 192.168.1.1 IP adresinden gelen paketleri gösterecektir.
tcp.port ve udp.port: Belirli bir TCP veya UDP portuna sahip paketleri filtrelemek için kullanılır. Örneğin, "tcp.port == 80" ifadesi, 80 numaralı TCP portuna gelen veya giden paketleri gösterecektir (genellikle HTTP trafiği için kullanılır).
eth.addr: Belirli bir MAC adresine sahip paketleri filtrelemek için kullanılır. Örneğin, "eth.addr == 00:11:22:33:44:55" ifadesi, belirtilen MAC adresine sahip paketleri gösterecektir.
dns: DNS trafiğini filtrelemek için kullanılır. Örneğin, "dns" ifadesi, sadece DNS ile ilgili paketleri gösterecektir.
http: HTTP trafiğini filtrelemek için kullanılır. Örneğin, "http" ifadesi, sadece HTTP ile ilgili paketleri gösterecektir.
icmp: ICMP trafiğini filtrelemek için kullanılır. Örneğin, "icmp" ifadesi, sadece ICMP ile ilgili paketleri gösterecektir.
ip.addr: Belirli bir IP adresine sahip paketleri filtrelemek için kullanılır. Örneğin, "ip.addr == 192.168.1.0/24" ifadesi, belirtilen IP adresi aralığına sahip paketleri gösterecektir.
Wiresharkta bulunan Display ekranında paketerin içerikleri incelenir. Erişilmek istenen bilgi ve türüne göre göz atmanız gereken kısımlar farklılık gosterir ve aşağıda bu ekranda bulunan pencereler ve işlervleri listelenmiştir.
Paket Listesi (Packet List): Wireshark'ın ana ekranında bulunan bu bölüm, yakalanan tüm paketleri listeler. Her paketin bir sıra numarası, zaman bilgisi, kaynak ve hedef IP adresleri, protokol türü, uzunluğu ve diğer bilgileri bulunur.
Paket Ayrıntıları (Packet Details): Seçili paketin ayrıntılarını gösterir. Bu bölüm, seçilen paketin tüm katmanlarını (Ethernet, IP, TCP/UDP, uygulama katmanı protokolleri vb.) ayrıntılı olarak açıklar. Her bir katmanın altında, o katmana ait özel bilgiler ve değerler bulunur.
Hexadecimal ve ASCII Gösterim (Hexadecimal and ASCII Representation): Paketin veri yükünü hem onaltılık (hexadecimal) hem de ASCII formatında gösterir. Bu bölüm, paketin içeriğini daha ayrıntılı olarak incelemek için kullanılır.
Paket Akış Grafiği (Packet Flow Graph): Seçilen paketin akışını grafiksel olarak gösterir. Bu grafik, seçilen paketin kaynak ve hedef arasındaki iletişim akışını görselleştirir.
Filter Bar (Filtre Çubuğu): Kullanıcının belirli protokolleri, IP adreslerini veya diğer özellikleri filtrelemek için kullanabileceği bir araç çubuğu bulunur. Burada kullanıcılar, belirli kriterlere göre paketleri filtreleyebilir ve analiz edebilirler.
Statistical Information (İstatistiksel Bilgiler): Wireshark, yakalanan paketler hakkında çeşitli istatistiksel bilgiler sunar. Bu bilgiler, toplam paket sayısı, belirli protokollere ait paket sayıları, veri akışı istatistikleri vb. olabilir.
Protokol Ağacı (Protocol Tree): Paketin içerdiği protokolleri hiyerarşik olarak gösterir. Bu bölüm, paketin içeriğini katman katman açıklar ve her bir katmandaki protokollerin ayrıntılarını sunar.