TShark Nedir? *Detaylı Anlatım* / R4V3N

R4V3N

Adanmış Üye
3 Tem 2016
6,250
38
25
Kocaeli

Konu İçeriği:
  • Ağ Trafiği
  • TShark'a Giriş
  • Arayüzler Listesi
  • Trafik Yakalama
  • Promiscuous Modunda Arayüz Yakalama
  • Paket Sayısı Yakalama
  • Bir Dosyada Okuma ve Yazma
  • Ayrıntılı Mod
  • Çıktı Düzeni
    • PDML
    • PS
    • PSML
    • JSON
    • EK
    • Text
    • Tabs
  • Şifrelenmiş Paketler ve Şifresi Kırılmış Paketler Arasındaki Farklar
  • PDML Dosyasını HTML Sayfasına Dönüştürme
  • Belirli bir Port Paketi Yakalama
  • Görüntüleme Filtresi

Ağ Trafiği

Bildiğimiz gibi, ağ trafiği veya veri trafiği, belirli bir zamanda ağ üzerinden aktarılan veri miktarıdır. Bilgisayar ağlarındaki ağ verileri, ağ veri paketleri biçimindedir. Bu ağ paketlerini analiz etmek, trafiği izlememize yardımcı olduğu için ağ güvenliği sağlar. Bir avantaj olarak, bir ağda olası bir saldırı belirtisi olan olağandışı miktarda veri trafiği varsa, Tshark çok geç olmadan bize saldırıyı bitirmede yardımcı olabilir.

Trafik hacmi, ağ trafiği analizinin bir alt terimdir. Ağ trafiği hacmi, yapılan toplam işin ölçüsüdür. Ağ veri paketi çalışmasının ortalama veri trafiği yoğunluğu ve süresi olarak tanımlanır.

TShark'a Giriş

Tshark, iyi bilinen ve güçlü bir komut satırı aracıdır ve bir ağ analizörü olarak kullanılır. Wireshark tarafından geliştirilmiştir. Çalışma yapısı Tcpdump ile oldukça benzer, ondan farklı olarak bazı güçlü kod çözücüleri ve filtreleri var. TShark, farklı ağ katmanlarının veri paketleri bilgilerini yakalayabilir ve farklı formatlarda görüntüleyebilir.

TShark, gerçek zamanlı ağ trafiğini analiz etmek için kullanılır ve bilgileri analiz etmek, bu bağlantıların ayrıntılarını incelemek için .pcap dosyalarını okuyabilir ve güvenlik profesyonellerinin ağ sorunlarını tanımlamasına yardımcı olabilir.

TShark, Wireshark'ın yaptığı her şeyi yapabilen komut satırı tabanlı bir araçtır. Öyleyse TShark ile öğrenme sürecimize başlayalım ve bu aracı başlatalım ve seçeneklerini keşfedelim. Tüm parametreleri kontrol etmek için aşağıdaki komutu kullanın:

Kod:
[COLOR="white"]tshark -h[/COLOR]

t1.png


Arayüzler Listesi

TShark, trafiğini yakalayabileceği arayüzlerin bir listesini yazdırır. Her arayüze seri numaraları denir ve görebildiğiniz gibi ağ arayüzünün metin açıklaması gelir. Bu arayüzler -i parametresi kullanılarak belirtilebilir. Ve bu arayüzleri kontrol etmek için aşağıdaki resimde gösterildiği gibi -D parametresini kullanabilirsiniz:

Kod:
[COLOR="white"]tshark -D[/COLOR]

t2.png


Trafik Yakalama

Şimdi de trafik yakalamaya çalışalım. Elimizde trafiğini yakalayabileceğimiz çeşitli arayüzler var lakin ihtiyacımıza göre sadece bir tanesini seçebileceğiz. Bu konuda biz "eth0" kullanacağız. Trafiği yakalamak için, kontrollü bir ağ üzerinde test ederken de bir tane başlatmamız gerekiyor ve bunun için ping komutu kullanıyoruz ve sonra trafiği yakalamak için aşağıdaki resimde gösterildiği gibi -i parametresini kullanarak arayüz adını belirtmemiz gerekiyor:

Kod:
[COLOR="white"]ping www.hackingarticles.in
tshark -i eth0[/COLOR]

t3.png

Açıkça görebileceğimiz üzere üçlü el sıkışma uyguluyor, sonrasında da ICMP istek ve yanıt işlemini başlatıyor.

Promiscuous Modunda Arayüz Yakalama

Ağ iletişiminde promiscuous modu, tshark'ın kareleri karışık moda geçirmek yerine aldığı tüm trafiği CPU'ya geçirmesine neden olan bir arayüz denetleyicisi olarak kullanılır.

Bu modu kullanırken, ifconfig yardımı ile yapılandırmamız gerekir ki bizim için tüm ağın veri paketlerini yakalayabilsin. Bu yüzden, bir siteyi pingleyip veri paketlerini yakalayarak başlayacağız.

t4.png

Şimdi de aşağıdaki kodlarla promiscuous modu yapılandıralım ve paketleri yakalayalım:

Kod:
[COLOR="white"]ifconfig eth0 promisc
tshark -i eth0[/COLOR]

t5.png


Paket Sayısı Yakalama

Tshark'ın daha verimli çalışmamızı sağlayan harika bir özelliği vardır, biz bu özelliklere çeşitli parametreler kullanarak erişebiliriz. Misal bahsettiğim parametrelerden biri de "-c". Bu bize gereken verilerin tam sayısını yakalamamıza yardımcı olur ve sadece bunu gösterir. Bu seçenek çıktıda bir nevi arıtma yapar ve tam ihtiyacımız buysa sadece bunu göstertir.

Kod:
[COLOR="white"]tshark -i eth0 -c 10[/COLOR]

t6.png

Yukarıdaki resimde de görebileceğimiz üzere 10'dan sonra saymayı durdurdu.

Bir Dosyada Okuma ve Yazma

Tshark'ta .pcap dosyasını okuyabilir ve yazabiliriz de. Yazma seçeneği (-w) bize standart bir .pcap dosyasına raw paketi veri çıktısını yazdırmamıza olanak sağlarken okuma seçeneği ise (-r) bize istediğimiz biçimde raw çıktısı veri paketlerini okumamıza yardımcı oluyor. Aşağıdaki kodla .pcap dosyasına paket yazdırabilirsiniz:

Kod:
[COLOR="white"]tshark -i eth0 -c 10 -w packets.pcap[/COLOR]

Ve söz konusu .pcap dosyasını aşağıdaki kodla okuyabilirsiniz:

Kod:
[COLOR="white"]tshark -r packets.pcap[/COLOR]

t7.png


Ayrıntılı Mod

Ayrıntılı mod, bize trafikte paketin detaylarını ek bilgilerle harbi detaylı şekilde sunuyor. Ayrıntılı modu kullanarak her bir paketin içindeki bilgileri görebiliriz. Bu seçeneği kullanmamız için gereken parametre -V.

Kod:
[COLOR="white"]tshark -r packets.pcap -V[/COLOR]

t8.png

Çıktı Düzeni

Kolaylık açısından tshark'ta, şifresi kırılmış paketleri çeşitli düzenlerde kaydetmemize yarayan -T seçeneği mevcut. Çıktıyı dilediğiniz şekilde alabiliyorsunuz. Tüm seçenekleri görmek için aşağıdaki kod gerekli:

Kod:
[COLOR="white"]tshark -T x[/COLOR]

t9.png

PDML

PDML açılımı Packet Details Mark-Up Language, Türkçesi Paket Detaylı İşaretleme Dili. Bu, XML tabanlı bir çıktıdır. Bunun kullanımı genelde ayrıntılı modda olur ki yukarıda da görebilirsiniz. Bu düzende çıktı alabilmek için gerekli olan kod:

Kod:
[COLOR="white"]tshark -r packets.pcap -T pdml[/COLOR]

t10.png

PS

PS açılımı PostScript. Bu çıktıda tek tek satırda aşağı doğru iner bilgiler ve anlaması da gayet basittir. Kullanım için gereken kod:

Kod:
[COLOR="white"]tshark -r packets.pcap -T ps[/COLOR]

t11.png

PSML

PSML açılımı Packet Summary Mark-Up Language, Türkçesi Paket Detaysız İşaretleme Dili. Bu da PDML gibi XML tabanlı bir düzendir ama ondan farkı paketin detaylandırılan bilgilerini kısa kesmesi özetlemesi. Bu düzen için:

Kod:
[COLOR="white"]tshark -r packets.pcap -T psml[/COLOR]

t12.png

JSON

JSON açılımı Java-Script Object Notation, Türkçesi Java-Script Nesne Gösterimi. Okunabilir bir formda açık olan standart dosya düzenidir. Kullanmak için gereken kod:

Kod:
[COLOR="white"]tshark -r packets.pcap -T json[/COLOR]

t13.png

EK

EK ise JSON'ın yeni satır olmayan hali. Kullanım için:

Kod:
[COLOR="white"]tshark -r packets.pcap -T ek[/COLOR]

t14.png

Text

Adı üstünde metin hali, her bir paket birer satırlarda veriliyor. Böyle çıktı alabilmek için:

Kod:
[COLOR="white"]tshark -r packets.pcap -T text[/COLOR]

t15.png

Tabs

Bu da text'e çok benziyor, tek farkı ASCII yatay sekmeler (oxo9) halinde. Denemek için:

tshark -r packets.pcap -T tabs​

t16.png

Şifrelenmiş Paketler ve Şifresi Kırılmış Paketler Arasındaki Farklar

.pcap dosyasında canlı veri paketlerini yazmaya çalıştığımızda tüm o veri paketlerini daha küçük parçalara sıkıştırırız. Bu veri paketlerini daha iyi anlayabilmek için şifresini kırmamız lazım, ki bu da dosyanın ilk andaki boyutu ile sonrasındaki boyutu arasındaki farka götürür. Bunu kontrol etmek için:

Kod:
[COLOR="white"]ls -lh packets.p*[/COLOR]

t17.png

Bahsettiğimiz gibi bu dosyalar arasında bir hayli fark var, işte bu yüzden bu bilgiyi çıkartmak için şifresini kırmamız lazım.

PDML Dosyasını HTML Sayfasına Dönüştürme

Wireshark ile tshark arasındaki tek fark: Wireshark, GUI tabanlı; tshark ise komut satırı tabanlı bir araçtır. Ama bazı dış kaynakların yardımı ile veri paketlerimizi HTML biçiminde de görebiliyoruz. Bunu yapabilmek için öncelikle veri paketlerini PDML olarak kaydetmemiz, sonrasında XML dosyaya aşağıdaki kodu kullanarak dönüştürmemiz lazım:

Kod:
[COLOR="white"]tshark -r packets.pcap -T pdml > packets.xml[/COLOR]

XML dosyasının kaydedileceği yer /usr/share/wireshark/pdml2html.xsl. Sonrasında da, xsltproc aracını kullanacağız.

Kod:
[COLOR="white"]xsltproc /usr/share/wireshark/pdml2html.xsl packets.xml > packets.html[/COLOR]

HTML sayfasını tarayıcıda açmak için gereken kod:

Kod:
[COLOR="white"]firefox packets.html &[/COLOR]

t18.png


t19.png

Belirli bir Port Paketi Yakalama

Birçok sefer Wireshark'ı belirli bir port için kullandık. -f parametresi sağolsun tshark'ta da belirli bir port'un veri paketlerini yakalayabiliriz. Ağın veri paketlerini daha iyi analiz etmemize yardımcı olur. Misal TCP port 80 için gereken kod:

Kod:
[COLOR="white"]tshark -i eth0 -c 5 -f "tcp port 80"[/COLOR]

t20.png

Görüntüleme Filtresi

Görüntüleme filtresi Wireshark tarafından tanıtıldı. Bizlere, yakalanan veya canlı veri paketlerini filtreleme konusunda yardımcı oluyor. Bu filtreleme yardımı ile istediğimizi karşımıza getirebiliriz.

Misal trafikten sadece GET isteği yakalamak istiyorsak:

Kod:
[COLOR="white"]tshark -i eth0 -c 5 -f "tcp port 80" -Y 'http.request.method == "GET" '[/COLOR]

t21.png
 
Moderatör tarafında düzenlendi:

kanserojen

Katılımcı Üye
1 Ara 2018
880
47
Ellerinize Sağlık hocam çok güzel kaliteli bir konu olmuş bi biz böyle açamadık :D
 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.