Şifreli Ağ Trafiğinin Çözülmesi ve Analiz Edilmesi

0
648
views
Ağ sızma testleri sırasında elde edilmiş PCAP dosyası analiz edilerek kritik bilgiler tespit edilebilir. Bu yazıda, Breach: 1 sanal makinesinde bulunan ve içerisinde HTTPS trafik kaydı bulunan PCAP dosyası özel anahtar yardımı ile incelenebilecektir.

Yazıda kullanılan Breach: 1 sanal makinesi Vulnhub sitesinden indirilebilir.

https://www.vulnhub.com/entry/breach-1,152/

Not: Varsayılan durumda mevcut sanal ethernet kartına statik IP adresi (192.168.110.140) atanmıştır.

 

A) Şifreli Trafik İçeren PCAP Dosyasının Ngrep Aracı İle İncelenmesi

PCAP dosyası TCP/80 portundan hizmet verilen web sayfası üzerinden erişilebilmektedir.

wget 192.168.110.140/impresscms/_SSL_test_phase1.pcap
ngrep -I _SSL_test_phase1.pcap

 

Not:grep” aracı ile UNIX/LINUX üzerindeki dosyalarda arama yapılırken, “ngrep” (Network Grep) ile ağ trafiğinde arama/bulma yapılır.

 

Bu dosyadaki UDP trafiği aşağıdaki gibidir.

ngrep -I _SSL_test_phase1.pcap | grep -E “^U” -A1

 

Bu dosyadaki TCP trafiği aşağıdaki gibidir.

ngrep -I _SSL_test_phase1.pcap | grep -E “^T” -A2

 

Bu dosyadaki HTTP trafiği aşağıdaki gibidir.

ngrep -I _SSL_test_phase1.pcap -Wbyline ‘HTTP’ | grep -Ev “^#|^$”

 

 

B) Şifreli Trafik İçeren PCAP Dosyasının Wireshark Aracı İle İncelenmesi

Wireshark aracı ile de PCAP incelenebilir. Trafik incelemek istendiğinde “TCP Stream” seçeneği gelmektedir. Ancak SSL trafiğini okumak için bir seçenek bulunmamaktadır.

 

Paket içerisinde de görüldüğü gibi TCP/8443 portundaki trafik dikkat çekmektedir. TCP trafiği incelendiğinde trafik anlamlandırılamamaktadır.

 

Şifreli trafiğe ait protokoller incelendiğinde tüm trafiğin TCP verisi olduğu görülmektedir.

Statistics –> Protocol Hierarchy

 

HTTP trafiğine ait nesneler listelendiğinde ise herhangi bir veriye ulaşılamadığı görülmektedir.

File –> Export Objects –> HTTP

 

Oturum anahtarının da dışarıya aktarılamadığı görülmektedir.

File –> Export SSL Session Keys

 

C) Şifreli Trafik İçeren PCAP Dosyasının Wireshark Aracı İle Şifresinin Çözülmesi ve İncelenmesi

Şifrelenmiş trafiği okumak için trafiği şifreleyen tarafa ait özel anahtara ihtiyaç bulunmaktadır. Bu anahtarın elde edilmesi için kaynaklardaki SiberPortal yazısı incelenebilir. Yazıda belirtilen adımlar gerçekleştirilerek özel anahtar içeren JKS formatındaki dosya, PKCS#12 formatına çevrilebilir. Sonra da Wireshark aracına yüklenerek trafik açık metin hale getirilebilir.

PKCS#12 formatındaki dosyayı Wireshark içerisine aktarmak için “SSL Decrypt” penceresi kullanılabilir.

Edit –> Preferences –> Protocols –> SSL –> RSA keys list –> Edit –> SSL Decrypt

 

Bu pencerede kullanılarak PKCS#12 formatındaki dosya içeriye aktarılır. Port olarak da çözümlenmesi istenen TCP/8443 girilir.

 

Böylece trafiğin içerisinin görülebilmesini sağlayacak “SSL Stream” seçeneği aktifleşmiştir.

 

Böylece “SSL Stream” seçeneği ile trafiğin anlamlandırılabildiği görülmektedir.

 

Trafik incelendiğinde kimlik doğrulamaya ait paket de görülebilir.

 

Kimlik doğrulama yöntemi olarak zayıf bir yöntem olan Basic Authentication kullanıldığı için kullanıcı adı ve parola açık metin olarak elde edilebilmiştir.

echo dG9tY2F0OlR0XDVEOEYoIyEqdT1HKTRtN3pC | base64 -d

 

Not: Aynı bilgiler Tomcat yapılandırma dosyasında da bulunmaktadir.

cat /var/lib/tomcat6/conf/tomcat-users.xml
Kullanıcı adı: tomcat
Parola:Tt\5D8F(#!*u=G)4m7zB

 

Şifreli trafiğe ait protokoller incelendiğinde sadece TCP katmanının değil üst katmanların da erişilebilir olduğu ve HTTP verisinin de okunabildiği görülmektedir.

Statistics –> Protocol Hierarchy

 

HTTP trafiğine ait nesneler listelendiğinde ise trafikteki ikon, JSP, html kodları gibi nesneler görülmektedir.

File –> Export Objects –> HTTP

 

Oturum anahtarının da dışarıya aktarılabildiği görülmektedir.

File –> Export SSL Session Keys

 

Elde edilen oturuma ait anahtarlar okunabilmektedir.

 

Kaynaklar:

http://www.siberportal.org/blue-team/cryptography/obtaining-password-of-java-keystore-file-by-using-patator-tool-and-accessing-private-key-from-java-keystore-file/
https://bidb.itu.edu.tr/seyirdefteri/blog/2013/09/07/wireshark

Vulnhub – Breach 1.0 boot2root CTF challenge Walkthrough


http://camelinc.info/blog/2017/03/Vulnhub—Breach-1-boot2root-CTF-walkthrough/

Hack the Breach 1.0 VM (CTF Challenge)


http://packetpushers.net/using-wireshark-to-decode-ssltls-packets/

 

 

CEVAP VER

Yorumunuzu giriniz
İsminizi giriniz