CyberFlow Logo CyberFlow BLOG
Web Pentest

mitmproxy ile HTTP/HTTPS Trafik Analizi ve Manipülasyonu Eğitimi

✍️ Ahmet BİRKAN 📂 Web Pentest

Bu blog, mitmproxy aracı ile HTTP ve HTTPS trafiğini nasıl analiz edeceğinizi ve manipüle edeceğinizi adım adım anlatmaktadır.

mitmproxy ile HTTP/HTTPS Trafik Analizi ve Manipülasyonu Eğitimi

Bu yazıda, mitmproxy kullanarak HTTP ve HTTPS trafiğinin nasıl analiz edileceği ve manipüle edileceği ile ilgili kapsamlı bir eğitim bulabilirsiniz. Her adım detaylı bir şekilde açıklanmıştır.

Giriş ve Konumlandırma

HTTP ve HTTPS trafiği, günümüzde siber güvenlik uygulamalarında kritik bir rol oynamaktadır. Web uygulamalarının ve mobil uygulamaların arka planda nasıl çalıştığını anlama, bu uygulamaların güvenlik açıklarını tespit etme ve manipülasyon yapma kabiliyetini geliştirme amacıyla trafik analizi yapmak son derece önemlidir. Bu bağlamda, mitmproxy aracı, sistem yöneticileri ve siber güvenlik uzmanları için son derece faydalı bir araç olarak öne çıkmaktadır.

mitmproxy Nedir?

mitmproxy, "man-in-the-middle" (mitm) saldırılarını simüle etmek için kullanılan güçlü bir HTTP/HTTPS proxy aracıdır. Kullanıcıların, ağ üzerindeki bir iletişimi dinlemelerine ve gerektiğinde müdahale etmelerine olanak tanır. Kısacası, herhangi bir istemci (örneğin bir web tarayıcısı) ile sunucu arasındaki verileri yakalar, analiz eder ve gerektiğinde değiştirebilir.

Neden Mühim?

Siber güvenlik dünyasında, veri akışını kontrol edebilmek sadece saldırıları önlemekle kalmaz, aynı zamanda potansiyel açıkları fark etme ve bunlara müdahale etme fırsatı sunar. Web uygulamalarının sayısız potansiyel güvenlik açığı barındırdığı düşünüldüğünde, trafiği analiz etmek siber tehditleri anlamanın ve buna göre savunma mekanizmaları geliştirmenin en etkili yollarından biridir.

Modern siber güvenlik uygulamaları, penetrasyon testleri (pentest) gibi yöntemler kullanarak sistemin genel güvenlik düzeyini artırmaya çalışır. Bu çalışmalar, genellikle uygulama aşamasında gerçekleştirildiğinden, verimli bir trafik analizi sürecine ihtiyaç duyulmaktadır. mitmproxy, bu süreçte sağladığı esneklikle hem savunma hem de saldırı senaryolarında kullanılabilir.

Teknik İçeriğe Hazırlık

mitmproxy ile gerçekleştirilecek olan HTTP/HTTPS trafik analizi ve manipülasyonu birçok teknik bileşeni içermekte ve detaylı bilgi birikimi gerektirmektedir. Eğitimde, mitmproxy’yi başlatmaktan, proxy modlarını tanımaktan başlayarak trafiği yakalama, port yönetimi ve Python betikleri ile otomasyon konularına kadar kapsamlı bir biçimde ele alınacaktır.

Araçların Kullanımı

mitmproxy’nin varsayılan olarak "regular" (standart) modda çalıştığını ve dense numpy üzerindeki trafiğin yakalanarak analiz edildiğini belirtmek önemlidir. Bu modda, kullanıcıların belirli duality'i hedef alarak istenen parametreler doğrultusunda hızlı bir analiz yapmasına imkan tanımaktadır.

mitmproxy

Yukarıdaki komut ile mitmproxy başlatılabilir. Ayrıca, farklı modlar ile daha özelleştirilmiş kullanıcı deneyimleri sağlanabilir:

  • Regular Proxy: Kullanıcının belirttiği ayarlarla çalışan standart mod.
  • Transparent Proxy: Kullanıcının haberi olmadan ağ yapısından yönlendirilen trafiktir.
  • Reverse Proxy: Araç, sunucu gibi davranarak istekleri ileten moddur.

Trafik Yakalama

Ağ üzerindeki isteklerin analiz edilmesi ve bu sürecin hızlandırılması amacıyla, belirli kriterlere dayalı filtreleme yapabilen bir araçtır. Örneğin, yalnızca "login" kelimesini içeren istekleri yakalamak için aşağıdaki gibi bir komut kullanılabilir:

mitmproxy --intercept ~u login

Böylece, istek akışında önemli noktaları hızlı bir şekilde analiz etmek mümkün hale gelir. Özellikle kullanıcı doğrulama süreçlerini anlamak için bu tür filtreleme metodları değerlidir.

Güvenlik ve Gizlilik

HTTPS trafiğini incelemek istediğinizde mitmproxy, kendi sertifikasını kullanarak bu süreci yöneten önemli bir araçtır. Ancak burada dikkat edilmesi gereken hususlar da bulunmaktadır. Güvenlik parametrelerini kullanarak, HTTPS bağlanabilirliğin güvensiz yollarla atlanması, iyi bir siber eğitimin gerekliliklerindendir.

mitmproxy --ssl-insecure

Bu tür bir komut, SSL sertifika doğrulamasının atlanmasına olanak tanır, ancak dikkatlice kullanılmalıdır. Güvenlik açığı yaratmadan trafiği gerekirse analiz etmek için uygun yapılandırmaların yapılması gerekmektedir.

Gelecek adımlarda, mitmproxy ile hızlı analiz yapma ve manipülasyon tekniklerine dair daha derinlemesine bilgi verilecek ve pratik uygulamalarla bu bilginin pekiştirilmesi sağlanacaktır. Bu eğitim, siber güvenlik kariyerine yönelmek isteyenler veya güvenlik bilincini artırmak isteyen herkes için son derece faydalı bir kaynağı temsil eder.

Teknik Analiz ve Uygulama

mitmproxy'yi Başlatma

mitmproxy, varsayılan olarak "regular" modda çalışır ve bir HTTP proxy sunucusu gibi davranır. İlk adım, mitmproxy'yi başlatarak ağ trafiğini dinlemeye hazır hale getirmektir. Aşağıdaki komut ile mitmproxy'yi başlatabilirsiniz:

mitmproxy

Bu komut, mitmproxy arayüzünü açar ve varsayılan olarak 8080 numaralı port üzerinden trafiği dinlemeye başlar. Bu aşamada, trafik analizi için tarayıcı ayarlarınızı da mitmproxy'nin dinleme portuna göre yapılandırmanız gerekecektir.

Proxy Çalışma Modlarını Tanıma

mitmproxy, çeşitli kullanım senaryolarına göre farklı modlarda başlatılabilir. Bu modların temel özellikleri şunlardır:

  • Regular Proxy: İstemcinin tarayıcı ayarlarından manuel olarak yönlendirildiği standart moddur.
  • Transparent Proxy: İstemcinin haberi olmadan ağ seviyesinde trafiğin yönlendirilmesi için kullanılır. Bu durumda iptables ya da benzeri araçlar kullanılması gerekebilir.
  • Reverse Proxy: Proxy'nin doğrudan sunucu gibi davranarak gelen istekleri arkadaki bir sunucuya ilettiği moddur.

Bu modların her biri, farklı durumların ihtiyaçlarına uygun olarak tasarlanmıştır. Hangi modun kullanılacağı ise analizin yapılacağı ağ altyapısına bağlıdır.

Belirli Trafiği Yakalama (Interception)

Veri analizinin hızlı ve verimli olması için, tüm trafiği değil, yalnızca belirli bir kritere uyan istekleri yakalamak daha faydalı olabilir. Örneğin, URL'si "api" içeren istekleri yakalamak için aşağıdaki komutu kullanabilirsiniz:

mitmproxy --intercept ~u api

Bu komut, "api" kelimesini içeren tüm trafiği durdurur ve bu sayede yalnızca ilgili veriye odaklanabilirsiniz.

Varsayılan Dinleme Portu

mitmproxy başlatıldığında, aksi belirtilmedikçe tüm ağ arayüzlerinde 8080 numaralı port üzerinden bağlantı bekler. Eğer bu port üzerinden çalışmıyorsanız, tarayıcı ayarlarınızda proxy ayarını güncellemeniz gerekecektir. Proxy ayarlarını doğru yapılandırmak için aşağıdaki gibi bir yapı kullanmanız önerilir:

  • Proxy Adı: localhost
  • Proxy Portu: 8080

Tarayıcı ayarlarının doğru yapılandırılması, mitmproxy'nin tüm trafiği yakalayabilmesi için kritik öneme sahiptir.

Python Scriptleri ile Otomasyon

mitmproxy'nin en güçlü yönlerinden biri de trafiğe müdahale eden Python scriptlerini çalıştırabilmesidir. Bu, birçok işlemi otomatikleştirerek işlemlerinizi hızlandırabilir. Örneğin, tüm "User-Agent" bilgilerini otomatik olarak değiştirmek için custom_mod.py isimli bir Python betiğini kullanarak mitmproxy'yi başlatabilirsiniz:

mitmproxy -s custom_mod.py

Bu komut, belirli bir otomasyon senaryosuyla birlikte mitmproxy'yi başlatır ve özelleştirilebilir. Script'in içeriği, analiz edilmek istenen trafiğe ve gereksinimlere göre değişiklik gösterebilir.

Güvenlik ve TLS Bypass

HTTPS trafiğini incelemek için mitmproxy, kendi sertifikasını kullanır. Ancak bazı durumlarda, sertifika hatalarının görmezden gelinmesi ya da özel konfigürasyon gereklidir. HTTPS trafiğini yakalamak için aşağıdaki komutu kullanarak sertifika doğrulamasını atlayabilirsiniz:

mitmproxy --ssl-insecure

Bu, güvenli bağlantılarla çalışırken ortaya çıkan sertifika doğrulama hatalarını atlayarak işlemlerinizi daha kolay hale getirir.

Sonuç olarak, mitmproxy ile HTTP/HTTPS trafiği analizi ve manipülasyonu için çeşitli yöntemler ve teknikler bulunmaktadır. Bu araç, siber güvenlik alanında kritik öneme sahip olup, kullanıcıların ağ trafiğini daha iyi anlamalarına yardımcı olur. Uygulamalarınızı ve analizlerinizi yönlendirmek için mitmproxy’nin sunduğu bu özelliklerden faydalanabilirsiniz.

Risk, Yorumlama ve Savunma

Risk Değerlendirmesi ve Yorumlama

Siber güvenlikte, trafik analizi ve manipülasyonu sırasında elde edilen bulguların doğru bir biçimde yorumlanması büyük önem taşır. Mitmproxy ile yapılan HTTP ve HTTPS trafik analizi, bir organizasyonun güvenlik durumu hakkında değerli bilgiler sağlar. Ancak, elde edilen bulguların güvenlik anlamını doğru bir şekilde değerlendirmek, etkili savunma stratejileri geliştirmek için kritik öneme sahiptir.

Hedefe Ulaşma ve Zafiyet Tespiti

Mitmproxy kullanarak yapılan analizler genellikle belirli bir hedef servisi veya uygulamayı hedef alır. Örneğin, hedef bir ağ üzerindeki kullanıcı kimlik bilgilerini içeren isteklerdir. Bu tür hassas bilgilerin elde edilmesi, bir güvenlik açığının veya yanlış yapılandırmanın varlığına işaret edebilir. Bu bağlamda, aşağıdaki durumların değerlendirilmesi gerekmektedir:

  1. Sızan Veri: Eğer kullanıcıların kimlik bilgileri veya diğer hassas veriler trafiğe dahil edilebiliyorsa, bu durum ciddi bir güvenlik açığının varlığını gösterir. Uzmanlar, kullanıcıların bu tür verilerini korumak için mümkün olan en kısa sürede gerekli güvenlik önlemlerini almalıdır.

  2. Topoloji ve Servis Tesbiti: Hedef ağın topolojisini net bir biçimde anlamak, saldırganların olası giriş yollarını belirlemek açısından önemlidir. Mitmproxy, kullanıcı isteklerindeki şemaları analiz ederek, hangi servislere erişim sağlandığını gösterir. Bu bilgiler, savunma ekiplerinin hangi noktaların korunması gerektiğine dair değerli ipuçları sunar.

Yanlış Yapılandırma ve Zafiyetlerin Etkisi

Yanlış yapılandırılmış bir sistem veya uygulama, potansiyel güvenlik zafiyetlerine yol açabilir. Mitmproxy kullanarak, belirli bir servisteki yapılandırma hatalarını tespit etmek mümkündür. Örneğin, bir web uygulamasının SSL/TLS sertifikası doğru bir şekilde yapılandırılmadığında, bu durum HTTP üzerinden veri alışverişinin dinlenmesine yol açar. Bu tür hataları tespit etmek şöyle açıklanabilir:

  • Sertifika Doğrulama Eksiklikleri: Eğer sertifika doğrulaması düzgün yapılmamışsa, saldırganlar SSL/TLS üzerinden gizli verilere ulaşabilir. Mitmproxy ile bu tür hataları tespit ederek, güvenliğinizi artırmak mümkündür.

Profesyonel Önlemler ve Hardening Önerileri

Elde edilen bulgular ışığında, profesyonel önlemler almak ve sistemlerinize yön vermek kritik öneme sahiptir. Aşağıda önerilen stratejiler, siber güvenliğinizi güçlendirebilir:

  1. Eğitim ve Bilinçlendirme: Kullanıcıların, güvenlik politikaları ve olası tehditler konusunda bilgilendirilmesi gereklidir. İç eğitim programları oluşturarak, çalışanların siber güvenlik farkındalığını artırabilirsiniz.

  2. Güvenlik Duvarları ve İzleme Araçları: Ağda yer alan her bir cihaz için güçlü güvenlik duvarları kullanılmalı ve düzenli olarak izlenmelidir. Bu, potansiyel saldırıların önlenmesine yardımcı olur.

  3. Sertifika Yönetimi: TLS/SSL sertifikalarının düzenli olarak kontrol edilmesi ve güncellenmesi gerekmektedir. Sertifika hatalarını önlemek için, otomatik sertifika yenileme sistemleri kurulabilir.

  4. Güvenlik Yamaları: Tüm yazılımların ve sistemlerin güncel tutulması, bilinen zafiyetlerin minimize edilmesine yardımcı olur. Otomatik güncelleme sistemleri kullanılabilir.

Sonuç Özeti

Mitmproxy ile gerçekleştirilen trafik analizi ve manipülasyonu, siber güvenlikte kritik bilgilerin elde edilmesini sağlar. Elde edilen bulguların kapsamlı bir değerlendirmesi, yanlış yapılandırmaların ve zafiyetlerin belirlenmesine yardımcı olur. Etkili bir savunma ve hardening stratejisi geliştirerek, olası tehditlere karşı koymak mümkündür. Eğitim, bilinçlendirme ve güncellemelerle desteklenmiş bir güvenlik altyapısı, organizasyonların dijital varlıklarını koruma adına atılan en önemli adımlardan biridir.