Wireshark Temelleri — 7

HTTPS Trafiği Analizi

ALİ EKBER KARA
4 min readSep 29, 2024

Ağ Güvenliği diyince akla ilk gelen araçlardan biri olan Wireshark Temelleri serimize HTTPS Trafiği Analizi ile devam ediyoruz.

Wireshark

HTTPS Trafiği

HTTPS (Hypertext Transfer Protocol Secure), paket analizi bakış açısından anlaşılması en can sıkıcı protokollerden biri olabilir ve HTTPS paketlerini analiz etmek için atılması gereken adımları anlamak biraz kafa karıştırıcı olabilir.

Bu bölümün sonunda incelenecek olan HTTPS Trafiği için bazı sorular bulunmaktadır. Bu soruların çözümü için gerekli dosyalara buradan ulaşabilirsiniz.

HTTPS Trafiğine İlk Bakış

Şifrelenmiş bilgileri göndermeden önce istemci ve sunucu birbiriyle güvenli bir tünel oluşturmak için çeşitli adımlar üzerinde anlaşması gerekir.

  • İstemci ve sunucu bir protokol sürümü üzerinde anlaşır.
  • İstemci ve sunucu bir kriptografik algoritma seçer.
  • İstemci ve sunucu birbirlerine kimlik doğrulaması yapabilir ancak bu adım isteğe bağlıdır.
  • Public Key’lerle güvenli bir tünel oluşturur.

İstemci ve sunucu arasındaki el sıkışma için paketlere bakarak HTTPS trafiğini analiz etmeye başlayabiliriz. Aşağıda SSLv2 Record Layer, Handshake Type ve SSL Versionu gösteren bir Client Hello paketi bulunmaktadır.

Client Hello

Aşağıda, Client Hello paketiyle benzer bilgileri gönderen Server Hello paketi gösterilmektedir. Ayrıca session ayrıntılarını ve SSL sertifika bilgilerini içermektedir.

Server Hello

Aşağıda Client Key Exchange paketi bulunmaktadır, el sıkışmanın bu kısmı Client ve Server arasındaki sonraki mesajları şifrelemek için kullanılacak genel anahtarı belirleyecektir.

Client Key Exchange

Bir sonraki pakette sunucu public keyi doğrulayacak ve güvenli tüneli oluşturacak, bu noktadan sonraki tüm trafik yukarıda listelenen ve üzerinde anlaşılan özelliklere göre şifrelenecektir.

HTTPS Packet

Client ve Server arasındaki trafik artık şifrelenmiş durumda ve iki host arasında gönderilen veri akışının şifresini çözmek için secret keye ihtiyacımız olacak.

HTTPS Encrypted Traffic

Pratik HTTPS Trafik Analizi

Bu bölümde başta indirdiğimiz PCAP dosyası ile alakalı bazı örnekler, sorular ve cevapları yer almaktadır. Soruları önce çözüp sonra cevaplarına bakmamız bize fayda sağlayacaktır.

HTTPS Traffic

Yukarıdaki paket yakalamaya baktığımızda tüm isteklerin şifrelendiğini görebiliriz. Paketlere daha yakından baktığımızda HTTPS el sıkışmasını ve şifrelenmiş isteklerin kendilerini görebiliriz. Şifrelenmiş isteklerden Paket 36'ya daha yakından bakalım.

Packet 36

Paket detaylarından Uygulama Verilerinin şifrelendiğini doğrulayabiliriz. Verileri şifrelenmemiş olarak görüntülemek için Wireshark’ta bir RSA anahtarı kullanabiliriz. Bir RSA anahtarı yüklemek için Edit > Preferences > Protocols > TLS > [+] seçeneğine tıklayın. Wireshark’ın eski bir sürümünü kullanıyorsanız bu TLS yerine SSL olacaktır. Menüdeki çeşitli bölümleri aşağıdaki tercihlerle doldurmanız gerekecektir:

  • IP ​​Adresi: 127.0.0.1
  • Bağlantı Noktası: start_tls
  • Protokol: http
  • Anahtar Dosyası: RSA anahtarının konumu
RSA Key

Artık Wireshark’a bir RSA anahtarı aktardığımıza göre, paket yakalama işlemine geri dönersek veri akışının artık şifrelenmemiş olduğunu görebiliriz.

HTTPS Decrypted Traffic

Artık HTTP isteklerini şifrelenmemiş veri akışlarında görebiliriz. Paketin ayrıntılarından birine daha yakından baktığımızda şifrelenmemiş veri akışını görebiliriz.

Packet 29

Paket ayrıntılarına baktığımızda Request URI’si, Threat Hunting ve ağ yönetimi gibi Wireshark’ın pratik uygulamalarında çok faydalı olabilecek User-agent gibi bazı çok önemli bilgileri görebiliriz.

Artık veri akışını düzenlemek için Export HTTP Objects özelliğini kullanmak gibi diğer özellikleri kullanabiliriz, bu özelliğe erişmek için File > Export Objects > HTTP seçeneğine gidebiliriz.

Export HTTP Objects

Sıra Sizde!

  • Soru 1: Veri akışına bakıldığında Paket 31'in Full Request URI’si nedir?
  • Soru 2: Veri akışına bakıldığında Paket 50'nin Full Request URI’si nedir?
  • Soru 3: Paket 50'nin User-Agent’i nedir?
Yükleniyor :D
  • Cevap 1

Paket 31'in ayrıntılarından Full Request URI’sine ulaşabiliriz.

Cevap 1

Cevap 1: https://localhost/icons/apache_pb.png

  • Cevap 2

Paket 50'nin ayrıntılarından Full Request URI’sine ulaşabiliriz.

Cevap 2

Cevap 2: https://localhost/icons/back.gif

  • Cevap 3

Paket 50'nin ayrıntılarına baktığımızda yanıta ulaşmış oluyoruz.

Cevap 3

Cevap 3: Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.8.0.2) Gecko/20060308 Firefox/1.5.0.2\r\n

Bu bölümde HTTPS Trafiği Analizi ve Örnek HTTPS Trafiğinin İncelenmesi konularından bahsettik. Benimle birlikte analizi gerçekleştirdiğiniz için teşekkür ederim. İyi Çalışmalar Dilerim.

--

--