HTTP Tünelleme ve Wireshark ile Trafik Analizi

kaleileriteknoloji
3 min readJul 13, 2021

--

Bu yazımızda http tünelleme ve wireshark ile trafik analizini ele alacağız.

Firewallarda genelde ICMP ve DNS protokollerinin yanı sıra HTTP protokolü üzerinden haberleşmeye genelde izin verildiği için saldırgan veri sızdırmak ve firewall atlatma tekniği olarak HTTP protokolünü kullanmaktadır.

HTTP Tünelleme için https://github.com/khuevu/http-tunnel adresindeki proje kullanılacaktır. Bu uygulamada istemci ve sunucu için iki tane kali makinasına uygulama aşağıdaki şekilde kurulacaktır.

git clone https://github.com/khuevu/http-tunnel.git

Tünel üzerinden 10.10.10.50 IP adresinde yer alan FTP sunucusuna bağlantı yapmak için konfigürasyon aşağıdaki şekilde olmalıdır:

Sunucu tarafı: (10.10.10.10)

python tunneld.py –p 80

İstemci tarafı: (10.10.10.100)

python tunnel.py –p 8888 –r 10.10.10.10:80 10.10.10.50:21

nc 127.0.0.1 8888

USER anonymous

PASS 1

HELP

PWD

Trafik analizi aşamasında hem istemci hem de sunucu tarafında paket kaydının yapılması analiz aşamasında efektif olacaktır.

İlk olarak sunucu tarafını inceleyelim.

Sunucu tarafında wiresharkta tcp.port==21 filtresini uygulayalım.

Yukarıdaki görsel incelendiğinde sunucu tarafında FTP trafiği direk görüntülenmektedir.

6i8i ve 9 nolu paketlerde 3lü el sıkışma sağlanmıştır.

16 nolu pakette banner bilgisi döndürülmüştür.

55 nolu pakette “USER anonymous” ifadesi, 74 nolu pakette “PASS 1” ifadesi ile FTP sunucusu anonim olarak bağlanılmıştır. 106 nolu pakette HELP komutu, 143 nolu pakette ise PWD komutu çalıştırılmıştır.

İstemci tarafında tcp.port==21 filtresini uyguladığımızda ise çıktı aşağıdaki şekildedir:

İstemci tarafında http filtresini uygulayalım.

4 nolu paketin HTTP akışı için Follow -> HTTP Stream butonuna basalım.

Çıktıda HTTP tünel üzerinden hangi protokol için kullanıldığı görülmektedir:

POST metodu ile yapılan istekte HTTP tünellemenin hangi protokol ile kullanılacağı belirtilmektedir.

PUT metodunda ise sunucuya yapılan istekler data parametresine atanan değerler ile belirtilmektedir.

48 nolu paketin HTTP akışı için Follow -> HTTP Stream butonuna basalım.

HTTP akışında PUT metodu ile 48 nolu pakette sunucuya veri olarak “USER anonymous” ifadesinin gönderildiği tespit edilmiştir.

--

--