Mobil uygulama trafiği analizi: hazır yakalamalar, TLS ve sabitleme
Bir mobil uygulamanın ağ davranışını hazır trafik yakalamaları üzerinden okursun: hangi sunuculara ne gönderdiğini, TLS ayarlarını, sertifika doğrulamasını ve sabitlemeyi değerlendirir, sızıntıları bulursun.
Seviye 201 · 22 ders · 18 pratik lab
Dersler
Yakalamayı okumak
- Uygulama trafiği nasıl yakalanır: vekil, VPN ve anahtar günlüğü
- tshark ile yakalamaya ilk bakış: konuşmalar ve uç noktalar
- DNS ve SNI dökümü: uygulama kimlerle konuşuyor
- HAR ve mitmproxy akış dosyalarını okumak
- Kısa görev: bir yakalamadan uygulamanın konuştuğu sunucuların listesini çıkar
TLS ve sertifikalar
- Yakalamada TLS el sıkışması: sürüm ve şifre takımı
- Düz metin trafiği bulmak
- Sertifika doğrulaması koddan nasıl okunur: güvensiz TrustManager
- Anahtar günlüğüyle laboratuvar trafiğini çözmek
- Kısa görev: bir yakalamada eski TLS sürümü kullanan bağlantıyı bul
Sabitleme ve güven ayarları
- Ağ güvenliği yapılandırmasını denetlemek: güven çapaları ve alan adları
- Sabitleme türleri: yapılandırma, OkHttp ve iOS tarafı
- Pin yenileme, yedek pin ve son kullanma tarihi
- iOS'ta App Transport Security ayarlarını denetlemek
- Kısa görev: yapılandırmadaki pinin sunucu sertifikasıyla eşleşip eşleşmediğini doğrula
İçerik ve sızıntı
- İsteklerde hassas veri: URL'de belirteç, gereksiz kişisel veri
- Analitik ve reklam trafiği: üçüncü taraflara ne gidiyor
- Anlık bildirim, WebSocket ve gRPC trafiği
- Ağ bulgularını raporlamak
- Alan adı sahipliği: uygulamanın konuştuğu sunucu gerçekten kimin
- Kısa görev: akış dosyasından analitik sunucusuna giden e-posta adresini bul
Bitirme
- Bitirme görevi: bir otel rezervasyon uygulamasının ağ davranışı raporunu hazırla
Pratik lablar
- Yakalamadan uygulamanın konuştuğu sunucuları listele: tshark ile hazır yakalamadaki DNS sorgularını ve SNI değerlerini çıkar, alan adı listesini üret.
- Sunucuları birinci ve üçüncü taraf diye ayır: Turnalı Perakende uygulamasının yakalamasındaki alan adlarını kuruma ait, analitik, reklam ve bilinmeyen olarak sınıflandır.
- İki sürümün uç nokta farkını çıkar: İki sürümün yakalamalarını karşılaştır, yeni eklenen sunucuları bul ve her birinin sahibini araştırıp not et.
- Yakalamada TLS sürümlerini say: El sıkışmalarından her bağlantının TLS sürümünü çıkar ve eski sürüm kullananı işaretle.
- Düz metin giden istekleri bul: Yakalamada şifrelenmemiş HTTP isteklerini süz ve içlerinde taşınan veriyi raporla.
- Anahtar günlüğüyle trafiği çöz ve giriş isteğini incele: Verilen anahtar günlüğüyle lab trafiğini çöz, giriş isteğinin gövdesini ve yanıt başlıklarını değerlendir.
- Koddaki özel TrustManager'ı bul: jadx çıktısında sertifika doğrulamasını değiştiren sınıfı bul.
- Her sertifikayı kabul eden kodu kanıtla: Boş doğrulama yöntemini ve ana makine adı denetimini devre dışı bırakan satırları kanıt olarak göster ve bulgu yaz.
- Yakalama ile kodu birleştirerek güven hatasını doğrula: Sahte sertifikayla kurulmuş lab bağlantısının yakalamasını koddaki doğrulama hatasıyla eşleştir ve düzeltme önerisini yaz.
- Ağ güvenliği yapılandırmasındaki pinleri oku: Yapılandırma dosyasındaki alan adlarını, pinleri ve son tarihi listele.
- Pinin sunucu sertifikasıyla eşleştiğini doğrula: Lab sunucusunun sertifikasından açık anahtar özetini hesapla ve yapılandırmadaki pinle karşılaştır.
- Süresi dolmak üzere olan ve yedeği olmayan pini raporla: Üç uygulamanın sabitleme ayarlarını denetle; yedek pini olmayanı, tarihi geçeni ve kapsam dışı kalan alt alan adını bul.
- Info.plist'te ATS istisnalarını bul: Bir IPA'nın Info.plist dosyasındaki ATS anahtarlarını listele.
- Genel ATS kapatmasını alan adı istisnasına indir: Bütün yüklemelere izin veren ayarı yalnızca gereken alan adı için istisnaya çevir.
- Android ve iOS güven ayarlarını karşılaştır: Aynı uygulamanın iki platformdaki ağ güveni ayarlarını tabloya dök ve platformlar arası tutarsızlığı raporla.
- URL'de taşınan belirteci bul: HAR dosyasında sorgu dizgisinde oturum belirteci taşıyan isteği bul.
- Analitik sunucusuna giden e-postayı bul: mitmproxy akış dosyasında üçüncü tarafa giden kişisel veriyi bul ve hangi olayla gittiğini yaz.
- Otel rezervasyon uygulamasının ağ raporunu yaz: Mercanköşk Otelcilik uygulamasının yakalamalarından uç nokta, TLS, sabitleme ve sızıntı bulgularını tek raporda topla.
Kurs hakkında
Bir mobil uygulamanın ağ davranışını hazır trafik yakalamaları üzerinden okursun: hangi sunuculara ne gönderdiğini, TLS ayarlarını, sertifika doğrulamasını ve sabitlemeyi değerlendirir, sızıntıları bulursun.
Ne öğreneceksin
- Yakalamayı okumak
- TLS ve sertifikalar
- Sabitleme ve güven ayarları
- İçerik ve sızıntı
- Bitirme
Ön koşullar
Aynı yolun 101 düzeyindeki kurslarını bitirmiş olmak ya da o konuları biliyor olmak yeterlidir.
Lab ortamı
Dersler, tarayıcında açılan sana özel bir Kali Linux terminalinde geçer. Kurulum gerekmez; lab her derste temiz başlar.
Sık sorulan sorular
- Bu kurs benim düzeyime uygun mu?
- Kurs 201 düzeyindedir; daha düşük düzeydeki kursların konularını bildiğin varsayılır.
- Kurulum gerekir mi?
- Hayır. Her ders tarayıcında açılan sana özel bir lab ortamında geçer.
- Dersler nasıl işleniyor?
- Her ders 8 ile 10 adımdan ve bir kısa sınavdan oluşur. İlk adımlarda yazman gereken komut gösterilir, sonraki adımlarda yardım azalır; iki denemede takılırsan çözüm açılır.
- Ücretsiz deneyebilir miyim?
- Evet. Her kursun ilk üç dersi ücretsizdir.