Bu rehberde güvenli ve yetkili trafik yakalamadan başlayarak capture ve display filtreleri, TLS trafiğinin yasal yollarla çözülmesi, tshark ile otomasyon ve tarama, DNS tünelleme, kaba kuvvet ve komuta kontrol (C2) izlerinin tespitini adım adım inceleyeceğiz.
1. Başlamadan önce: yetki ve kapsam
Paket yakalama, parolalar, oturum çerezleri ve kişisel veriler içerebilir. Bu nedenle yalnızca yönettiğiniz veya yazılı izinle incelediğiniz ağlarda trafik yakalayın. Kurumsal ortamlarda yakalama kapsamı, saklama süresi ve erişim yetkisi önceden belirlenmeli; KVKK kapsamındaki kişisel verilerin gereğinden uzun tutulmaması sağlanmalıdır.
- Yakalama dosyalarını (.pcapng) şifreli bir dizinde saklayın ve erişimi sınırlayın.
- Mümkünse yakalamayı ilgili host, port veya VLAN ile sınırlayarak gereksiz veri toplamayın.
- Wireshark'ı yönetici/root olarak çalıştırmayın; Linux'ta wireshark grubu ve dumpcap yetkisi, Windows'ta Npcap kullanın.
CODE TERMINAL
# Debian/Ubuntu: root olmadan yakalama yetkisi
sudo apt install wireshark tshark
sudo usermod -aG wireshark $USER
# Oturumu kapatıp açtıktan sonra arayüzleri listeleyin
tshark -D2. Capture filter ile display filter arasındaki fark
En sık yapılan hata bu iki filtre türünü karıştırmaktır. Capture filter, BPF (Berkeley Packet Filter) söz dizimini kullanır ve hangi paketlerin diske yazılacağını belirler; kaçırılan paket geri gelmez. Display filter ise Wireshark'ın kendi söz dizimidir ve yakalanmış veriyi yalnızca görünüm düzeyinde süzer.
| Özellik | Capture filter (BPF) | Display filter |
|---|---|---|
| Uygulandığı an | Yakalama sırasında | Yakalama sonrasında |
| Söz dizimi örneği | host 192.0.2.10 and port 443 | ip.addr == 192.0.2.10 && tcp.port == 443 |
| Protokol alanı derinliği | Sınırlı (başlık düzeyi) | Çok derin (HTTP, DNS, TLS alanları) |
| Veri kaybı riski | Var; eşleşmeyen paket kaydedilmez | Yok; filtre kaldırılınca tüm veri görünür |
| Kullanım amacı | Disk ve performans tasarrufu | Analiz ve hipotez testi |
CODE TERMINAL
# Yalnızca bir sunucunun DNS ve HTTPS trafiğini 100 MB'lık dosyalara döngüsel yaz
dumpcap -i eth0 -f "host 192.0.2.10 and (port 53 or port 443)" \
-b filesize:102400 -b files:20 -w /srv/pcap/sunucu.pcapngUzun süreli yakalamalarda dumpcap tercih edilmelidir; Wireshark arayüzüne göre çok daha az bellek kullanır ve halka tampon (ring buffer) desteği sayesinde diski doldurmaz.
3. Güvenlik analizinde en çok kullanılan display filtreleri
| Amaç | Display filter | ||
|---|---|---|---|
| Yalnızca TCP bağlantı başlatma denemeleri | tcp.flags.syn == 1 && tcp.flags.ack == 0 | ||
| Reddedilen bağlantılar (RST) | tcp.flags.reset == 1 | ||
| Yeniden iletimler ve ağ sorunları | tcp.analysis.retransmission | tcp.analysis.lost_segment | |
| HTTP POST istekleri | http.request.method == "POST" | ||
| Başarısız HTTP yanıtları | http.response.code >= 400 | ||
| Uzun DNS sorguları (tünelleme şüphesi) | dns.qry.name.len > 50 | ||
| NXDOMAIN yanıtları (DGA şüphesi) | dns.flags.rcode == 3 | ||
| TLS istemci selamları ve SNI | tls.handshake.type == 1 | ||
| Belirli bir alan adına SNI | tls.handshake.extensions_server_name contains "ornek" | ||
| Açık metin kimlik bilgisi riski | ftp.request.command == "PASS" | http.authorization | |
| SMB oturum açma hataları | smb2.nt_status == 0xc000006d | ||
| Ağ dışına giden büyük akışlar | ip.dst != 10.0.0.0/8 && frame.len > 1400 |
Filtreleri birleştirirken parantez kullanmak okunabilirliği artırır: (dns || tls) && ip.src == 10.10.5.23. Sık kullandığınız filtreleri filtre çubuğunun yanındaki yer imi simgesiyle kaydedebilir, ayrı analiz senaryoları için Configuration Profile oluşturabilirsiniz.
4. İstatistik menüsüyle büyük resmi görmek
Paket paket incelemeye başlamadan önce yakalamanın genel profilini çıkarmak zaman kazandırır.
- Statistics > Conversations: En çok veri aktaran IP çiftlerini gösterir; beklenmeyen bir dış IP'ye giden yüksek hacim veri sızdırma işareti olabilir.
- Statistics > Protocol Hierarchy: Ağda hangi protokollerin ne oranda kullanıldığını gösterir; kurumsal ağda beklenmeyen IRC, Tor veya özel protokol trafiği dikkat çeker.
- Statistics > Endpoints: En aktif hostları listeler; tarama yapan bir cihaz çok sayıda hedefle kısa bağlantılar üretir.
- Statistics > I/O Graphs: Trafiğin zamana göre dağılımını çizer; düzenli aralıklarla tekrarlanan küçük tepeler C2 beacon davranışına işaret edebilir.
- Analyze > Expert Information: Protokol hatalarını, bozuk paketleri ve olağandışı durumları özetler.
5. TLS trafiğini yasal yollarla çözmek
Günümüzde trafiğin büyük kısmı şifreli olduğundan, kendi test sisteminizde uygulama davranışını incelemek için TLS çözme gerekebilir. TLS 1.3 ve ileri gizlilik (forward secrecy) nedeniyle sunucunun özel anahtarıyla çözme artık çoğu durumda mümkün değildir. Doğru yöntem, istemcinin oturum anahtarlarını SSLKEYLOGFILE ile kaydetmesidir.
CODE TERMINAL
# Linux / macOS: yalnızca test tarayıcısı için anahtar günlüğü
export SSLKEYLOGFILE="$HOME/tls-keys/oturum.log"
firefox &
# Windows PowerShell
$env:SSLKEYLOGFILE = "C:\analiz\tls-keys\oturum.log"
Start-Process "C:\Program Files\Mozilla Firefox\firefox.exe"Ardından Wireshark'ta Edit > Preferences > Protocols > TLS > (Pre)-Master-Secret log filename alanına bu dosyayı gösterin. Anahtar dosyası, trafiğin tamamını çözebilen bir sırdır; analiz bitince güvenli biçimde silinmeli ve asla üretim kullanıcılarının bilgisayarlarında etkinleştirilmemelidir.
Şifre çözme mümkün olmadığında bile TLS meta verisi değerlidir: SNI alanı, sertifika zinciri, JA4 benzeri istemci parmak izleri ve oturum süreleri zararlı yazılım ailelerini ayırt etmeye yardımcı olur.
6. tshark ile otomasyon ve toplu analiz
Grafik arayüz, gigabaytlarca veriyi taramak için ideal değildir. tshark aynı display filter motorunu komut satırında sunar ve çıktıyı alan bazlı olarak dışa aktarabilir.
CODE TERMINAL
# En çok sorgulanan 20 DNS adı
tshark -r trafik.pcapng -Y "dns.flags.response == 0" \
-T fields -e dns.qry.name | sort | uniq -c | sort -rn | head -20
# TLS SNI değerlerini hedef IP ile birlikte listele
tshark -r trafik.pcapng -Y "tls.handshake.type == 1" \
-T fields -e ip.dst -e tls.handshake.extensions_server_name | sort -u
# HTTP User-Agent dağılımı
tshark -r trafik.pcapng -Y http.request -T fields -e http.user_agent \
| sort | uniq -c | sort -rn
# Konuşma istatistiği (TCP)
tshark -r trafik.pcapng -q -z conv,tcp
# Yalnızca şüpheli host trafiğini yeni dosyaya ayır
tshark -r trafik.pcapng -Y "ip.addr == 10.10.5.23" -w supheli-host.pcapngtshark çıktısını -T json veya -T ek biçiminde alarak Elasticsearch/OpenSearch gibi platformlara aktarabilir, böylece tekrar eden analizleri SOC süreçlerine bağlayabilirsiniz.
7. Saldırı izlerini tanımak: dört pratik senaryo
Port taraması: Tek bir kaynaktan çok sayıda farklı porta SYN gönderilmesi ve yanıtların büyük bölümünün RST olması tipik bir işarettir.
CODE TERMINAL
tshark -r trafik.pcapng -Y "tcp.flags.syn==1 && tcp.flags.ack==0" \
-T fields -e ip.src -e tcp.dstport | sort -u \
| awk '{print $1}' | uniq -c | sort -rn | headDNS tünelleme: Uzun, rastgele görünen alt alan adları, yüksek sorgu sıklığı ve TXT/NULL kayıt türleri veri kaçırma amaçlı tünel kullanımına işaret edebilir. dns.qry.name.len > 50 && dns.qry.type == 16 filtresi iyi bir başlangıçtır.
Kaba kuvvet denemeleri: SSH, RDP veya web oturum açma uç noktalarına aynı kaynaktan kısa aralıklarla yeni bağlantılar kurulması ve HTTP tarafında art arda 401/403 yanıtları dikkat çeker. SMB tarafında smb2.nt_status == 0xc000006d başarısız oturum açma denemelerini gösterir.
C2 beacon davranışı: Bir hostun aynı dış hedefe sabit aralıklarla ve benzer boyutlarda istek göndermesi otomatik iletişime işaret eder. I/O Graphs üzerinde ilgili IP için 1 saniyelik aralıkla grafik çizmek, insan davranışında görülmeyen bu ritmi görünür kılar.
8. Dosya ve nesne çıkarma
File > Export Objects menüsü HTTP, SMB, TFTP ve IMF (e-posta) oturumlarında aktarılan dosyaları çıkarabilir. Çıkarılan dosyalar potansiyel olarak zararlıdır: bunları yalnızca izole bir analiz makinesinde açın, önce özet değerlerini (SHA-256) alın ve tehdit istihbaratı kaynaklarında sorgulayın. Doğrudan açmak yerine statik analiz araçlarıyla incelemek daha güvenlidir.
9. Performans ve doğruluk ipuçları
- Çok büyük dosyaları önce editcap ile zaman aralığına göre bölün: editcap -A "2026-09-18 10:00:00" -B "2026-09-18 10:30:00" buyuk.pcapng dilim.pcapng
- Birden fazla sensörden gelen dosyaları mergecap ile zaman sırasına göre birleştirin.
- Ad çözümlemeyi (View > Name Resolution) büyük dosyalarda kapatın; hem hızlanır hem de analiz sırasında dış DNS sorgusu üretilmez.
- Sanal makinelerde ve bulutta NIC offload özellikleri nedeniyle hatalı checksum uyarıları görülebilir; bunları saldırı belirtisi sanmayın.
- Zaman damgası doğruluğu için sensörlerin NTP ile eşitlendiğinden emin olun; olay müdahalesinde zaman çizelgesi bu verilere dayanır.
10. Sık yapılan hatalar
- Capture filter'ı gereğinden dar tutup kritik trafiği kaçırmak.
- Anahtarlı ağlarda yalnızca kendi bilgisayarının trafiğini görüp ağın tamamını izlediğini sanmak; bunun için SPAN/port mirroring veya TAP gerekir.
- SSLKEYLOGFILE değişkenini sistem genelinde kalıcı bırakmak.
- Yakalama dosyalarını paylaşırken içindeki kimlik bilgilerini ve kişisel verileri temizlememek.
- Tek bir göstergeye dayanarak kesin hüküm vermek; paket bulguları uç nokta ve sunucu günlükleriyle doğrulanmalıdır.
Operasyon kontrol listesi
- Yakalama için yazılı yetki ve kapsam belirlendi mi?
- dumpcap halka tamponu ve disk kotası yapılandırıldı mı?
- Kurum için standart display filter profilleri hazırlandı mı?
- TLS anahtar günlükleri yalnızca test ortamında ve geçici olarak mı kullanılıyor?
- tshark ile düzenli DNS, SNI ve konuşma raporları otomatikleştirildi mi?
- pcap saklama süresi ve imha prosedürü belgelendi mi?
Sonuç
Wireshark, doğru kullanıldığında olay müdahalesinden ağ sorun gidermeye kadar her aşamada tartışmasız kanıt sunar. Farkı yaratan aracın kendisi değil; yakalamanın doğru noktada ve doğru kapsamda yapılması, display filtrelerinin hipotez test eder gibi kullanılması ve tshark ile tekrar eden analizlerin otomatikleştirilmesidir. Bu rehberdeki filtreleri kendi laboratuvarınızda deneyerek başlayın ve kurumunuz için ortak bir filtre kütüphanesi oluşturun.
Kaynaklar
- Wireshark User's Guide
- tshark Kılavuz Sayfası
- Wireshark Display Filter Reference
- Wireshark Wiki: TLS
TR Siber Ekibi