Araştırma 05/08
Wireshark ile Ağ Trafiği Analizi
Yetkili PCAP kayıtlarında filtreleme, protokol davranışı ve şüpheli trafik örüntülerini kanıta dönüştürmek için hazırlanmış ağ analizi rehberi.
Araştırma 05/08
Yetkili PCAP kayıtlarında filtreleme, protokol davranışı ve şüpheli trafik örüntülerini kanıta dönüştürmek için hazırlanmış ağ analizi rehberi.
Bu rehber yalnızca sahibi olduğunuz veya inceleme izni aldığınız ağ trafiği içindir. Paket yakalamak, içerdiği kişisel ve kurumsal veriler nedeniyle açık kapsam ve saklama kuralları gerektirir.
Wireshark, ağ trafiğini gerçek zamanlı yakalayan ve analiz eden açık kaynaklı bir paket analizörüdür. SOC analistleri için şüpheli trafiği incelemek, pentest uzmanları için kimlik bilgisi avlamak ve CTF oyuncuları için PCAP dosyalarından flag çıkarmak amacıyla kullanılır.
Ağı anlamak istiyorsanız paketi okuyun. Her şey orada.
Wireshark'ın gücü display filter'larından gelir. Doğru filtreyle milyonlarca paket arasından istediğinizi saniyede bulursunuz.
# Protokol bazlı
# Sadece GET istekleri
http.request.method == "GET"
# POST — form verileri burada
http.request.method == "POST"
# Belirli host
http.host == "target.com"
# Yetkilendirme başlığı içerenler
http.authorizationBir HTTP isteğine sağ tıklayıp Follow → HTTP Stream seçeneğiyle tam oturumu okuyabilirsiniz. Cleartext kimlik bilgileri, cookie'ler ve form verileri burada görünür.
# Tüm DNS sorguları
dns
# Belirli domain sorguları
dns.qry.name contains "google"
# Yanıt koduna göre (NXDOMAIN = 3)
dns.flags.rcode == 3
# Uzun DNS sorguları — DNS tüneli işareti
dns.qry.name.len > 50DNS tüneli tespiti için:
# tshark ile komut satırından analiz
tshark -r capture.pcap -Y "dns" \
-T fields -e dns.qry.name \
| sort | uniq -c | sort -rn | head -20# FTP — cleartext parola
ftp.request.command == "PASS"
# Telnet oturumu
telnet
# HTTP Basic Auth
http.authorization contains "Basic"HTTP Basic Auth'u decode etmek için:
import base64
encoded = "dXNlcjpwYXNzd29yZA=="
decoded = base64.b64decode(encoded).decode()
print(decoded) # user:password# Tüm HTTP objeleri kaydet
tshark -r traffic.pcap --export-objects http,./output/
# Belirli alanı çıkar
tshark -r traffic.pcap -Y "http.request" \
-T fields -e http.host -e http.request.uri
# TCP stream'i text olarak al
tshark -r traffic.pcap -q -z follow,tcp,ascii,0# Wireshark File → Export Objects → HTTP/FTP/SMB
# Veya tshark ile:
tshark -r capture.pcap --export-objects http,http_files/
# Dosya tiplerini kontrol et
file http_files/*
# Steganografi için resim dosyalarını incele
ls http_files/*.png http_files/*.jpg 2>/dev/null# Büyük ICMP paketleri şüpheli
icmp && data.len > 100# ICMP data alanını çıkar
tshark -r capture.pcap -Y "icmp.type == 8" \
-T fields -e data.data \
| xxd -r -pHTTPS trafiğini decrypt etmek için tarayıcının oturum anahtarlarına ihtiyaç vardır:
# Chrome / Firefox için SSLKEYLOGFILE ayarla
export SSLKEYLOGFILE=~/ssl-keys.log
chromium &
# Wireshark'ta:
# Edit → Preferences → Protocols → TLS
# (Pre)-Master-Secret log filename: ~/ssl-keys.logBu sayede HTTPS trafiği de HTTP gibi okunabilir hale gelir.
# Arayüzleri listele
tshark -D
# Belirli arayüzden yakala
tshark -i eth0 -w capture.pcap
# Canlı filtreli görüntüle
tshark -i eth0 -Y "http || dns"
# İstatistikler
tshark -r capture.pcap -q -z io,phs # protokol hiyerarşisi
tshark -r capture.pcap -q -z conv,tcp # TCP konuşmaları
tshark -r capture.pcap -q -z endpoints,ip # IP endpoint'leri| Bulgu | Açıklama | |---|---| | Düzenli aralıklı beacon | C2 iletişimi | | Uzun DNS sorgu isimleri | DNS tüneli | | ICMP'de büyük data | ICMP exfiltration | | Cleartext kimlik bilgisi | Güvensiz protokol | | Port tarama paterni | Keşif aktivitesi | | Anormal veri transferi | Veri sızıntısı |
Bu işaretlerin hiçbiri tek başına olay kararı değildir. Zaman çizgisi, varlık rolü ve normal trafik taban çizgisiyle ilişkilendirilmeden yalnızca araştırma ipucu olarak değerlendirilmelidir.
Okuma rotası
Topluluk masası
Soru sor, kanıt bırak veya bir düzeltme öner.