Skip to main content

🕵️‍♂️ Mitmproxy ile Trafik Analizi: HTTPS İntersepsiyon, Güvenlik Testi ve Hata Ayıklama


🧠 Bu Rehberde Ne Öğreneceksiniz?

Mitmproxy, ağ trafiğinde hata ayıklama (debugging), penetrasyon testi ve veri gizliliği analizi için kullanılan açık kaynaklı bir vekil sunucu aracıdır.
Bu rehberde, Mitmproxy’nin Man-in-the-Middle (Ortadaki Adam) yapısını kullanarak şifreli HTTPS trafiğini çözmeyi, izlemeyi ve manipüle etmeyi öğreneceksiniz.
Ayrıca aracın üç farklı arayüzünü (mitmproxy, mitmweb, mitmdump) ve gelişmiş filtreleme yöntemlerini göreceksiniz.


1. 🔍 Mitmproxy’nin Temel Prensipleri ve Çalışma Mantığı

1.1 Man-in-the-Middle (MITM) Mimarisi

  • Sorun: SSL/TLS şifrelemesi, klasik proxy’lerin trafiği görmesini engeller.
  • Çözüm: Mitmproxy, istemci için “sunucu”, sunucu için “istemci” gibi davranarak trafiği çözer.
  • Sertifika Yönetimi:
    Mitmproxy, kendi CA (Certificate Authority) sertifikasını anlık olarak üretir.
    Güvenli bağlantılar kurmak için istemcinin bu CA sertifikasını “güvenilir kök sertifika” olarak yüklemesi gerekir.

1.2 Üç Farklı Arayüz Seçeneği

ArayüzAçıklamaKullanım Alanı
mitmproxyKomut satırı arayüzüGeliştirici ve terminal kullanıcıları
mitmwebWeb tabanlı grafik arayüzGörsel analiz ve hızlı düzenleme
mitmdumpScript odaklı sürümPython ile otomasyon ve entegrasyon

2. ⚙️ Kurulum ve İlk Çalıştırma

Mitmproxy, Linux, macOS ve Windows üzerinde kullanılabilir.
Hızlı ve izole başlatma için Docker önerilir.

2.1 Docker ile Hızlı Başlatma

docker run --rm -it -v ~/.mitmproxy:/home/mitmproxy/.mitmproxy -p 8080:8080 mitmproxy/mitmproxy

💡 Bu komut, mitmproxy’yi terminal arayüzüyle 8080 portunda başlatır.

2.2 İstemci Ayarları ve Sertifika Kurulumu

Tarayıcı veya cihazın proxy ayarını 127.0.0.1:8080 olarak değiştirin.

Tarayıcıda http://mitm.it adresine gidin.

Platformunuza uygun CA sertifikasını indirin.

Sertifikayı güvenilir kök sertifika olarak yükleyin.

Artık tarayıcı “Bağlantınız gizli değil” uyarısı vermeden HTTPS trafiğini çözer.


3. 📡 Trafik Analizi ve Manipülasyon Teknikleri

3.1 Web Arayüzü (mitmweb)

http://127.0.0.1:8081 adresinden erişilir. Görsel analiz, istek/yanıt gövdesi incelemesi ve canlı trafik takibi için idealdir. Mitmweb açıkken ikinci bir tarayıcıdan siteyi ziyaret ederek trafiği anlık izleyebilirsiniz.

3.2 Seçici Trafik Engelleme (Intercept)

Yalnızca belirli isteklere müdahale etmek için regex tabanlı filtreler kullanılır.


# URL’sinde "api" geçen istekleri durdur
~u api
🧩 E tuşu → düzenleme modu
▶️ A tuşu → akışı devam ettir

🔒 ~q parametresi → yalnızca isteği engeller, yanıtı geçer.

3.3 Tekrar Oynatma (Replay)

Daha önce kaydedilen HTTP isteklerini yeniden gönderebilirsiniz.

İstemci Tekrarı: Önceki istemci isteklerini sunucuya yollar.

Sunucu Tekrarı: Önceki sunucu yanıtlarını tekrar üretir.


# Seçilen isteği tekrarla
r

💡 Bu özellik API testlerinde zamandan büyük kazanç sağlar.

3.4 Domain Hariç Tutma

Bazı sistem trafiği (örneğin güncellemeler), sertifika sabitlemesi (pinning) nedeniyle yakalanamaz.


mitmproxy --ignore-hosts '^ornek\.com:443$'

💡 Bu komut, belirli bir alan adını (domain) izlemeden hariç tutar.


❓ Sıkça Sorulan Sorular (SSS)

1. Mitmproxy, Burp Suite ve Charles Proxy arasında fark var mı?

Evet. Mitmproxy ücretsiz ve açık kaynaklıdır; komut satırı odaklıdır. Burp Suite profesyonel güvenlik testleri için geliştirilmiştir. Charles Proxy ise QA ve mobil geliştiriciler için sezgisel bir arayüz sunar.

2. Mobil uygulama trafiğini nasıl izlerim?

Mitmproxy’yi bilgisayarda başlat.

Telefonun proxy ayarını bilgisayar IP’si + 8080 portuna yönlendir.

Mobil tarayıcıdan http://mitm.it adresine girip sertifikayı yükle.

Sertifikayı güvenilir hale getir → tüm HTTPS trafiği analiz edilir.

3. Mitmproxy’de filtreleme nasıl yapılır?

FiltreAçıklamaÖrnek
~uURL filtresi~u /api/login
~mHTTP metodu~m POST
~sHTTP durumu~s 404
~dDomain filtresi~d rabisu.cloud
&AND (Ve) mantıksal operatörü~u login & ~m POST

4. Mitmproxy neden güvenlik testlerinde kullanılır?

Çünkü Mitmproxy, HTTPS trafiğini çözüp gerçek zamanlı olarak düzenlemeye izin verir. Bu sayede hassas veriler, authorization token’ları ve API güvenliği test edilebilir.


🏁 Sonuç

Mitmproxy, HTTP/HTTPS trafiğini analiz etmek, manipüle etmek ve test etmek için güçlü, açık kaynaklı bir araçtır. Geliştiriciler, QA ekipleri ve güvenlik uzmanları için ideal bir çözüm sunar.

⚙️ Bu teknikleri Rabisu Bulut altyapınızda uygulayarak, trafiğinizi daha güvenli, izlenebilir ve optimize hale getirebilirsiniz.