Pentest Çalışmalarında SOCKS ve HTTP Proxy Kullanımı

Pentest çalışmalarında, bazı senaryolar gereği proxy kullanmamız gerekiyor. Bu durumlarda bizim  öncelikli olarak tercih ettiğimiz TOR networküdür. SOCKS ve HTTP proxy desteği sunan esnek kullanıma sahip hemde kısmen   güvenli olmasından dolayı tercih sebebimizdir.

Bu blog girdisinde, Backtrack5 Linux dağıtımına TOR (socks proxy için), Privoxy (http proxy için), grafik arabirim olarakda Vidalia kurulumu ve kullanımları örneklerle anlatılmıştır. Proxy desteği olmayan yazılımlara, proxy desteği kazandırmak amacıyla örnek uygulamalar yer almaktadır.

TOR, Privoxy ve  Vidalia Kurulumları

# echo ‘deb http://deb.torproject.org/torproject.org lucid main’ >> /etc/apt/sources.list
# gpg –keyserver keys.gnupg.net –recv 886DDD89
# gpg –export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add –
# apt-get update
# apt-get install tor
# apt-get install deb.torproject.org-keyring tor vidalia deb.torproject.org-keyring privoxy

Tor Servisini Başlatma

# /etc/init.d/tor start

# netstat -antlp | grep LISTEN
tcp        0      0 127.0.0.1:8118          0.0.0.0:*               LISTEN      2117/privoxy 

tcp        0      0 127.0.0.1:9050          0.0.0.0:*               LISTEN      2562/tor     

Privoxy HTTP proxy olarak, TOR ise SOCKS proxy olarak hizmet verecektir.

HTTP Proxy Test Edilmesi
İnternet ip adresimizi aşağıdaki komut ile öğrenebiliriz.

# curl -s checkip.dyndns.org | grep -Eo ‘[0-9.]+’
55.95.38.172

HTTP isteklerini proxyden yönlendirmek için sisteme http_proxy ayarı belirtmemiz yeterlidir.

# export http_proxy=’127.0.0.1:8118′

Bu ayardan sonra tüm http istekleri privoxy http proxy üzerinden yönlendirilecektir. Tekrar curl ile ip adresimizi sorgulayarak test yapabiliriz.

# curl -s checkip.dyndns.org | grep -Eo ‘[0-9.]+’
87.236.194.191

IP adresimiz değişti, trafik tor sunucuları üzerinden yönlendiriliyor.
SOCKS Proxy Desteği Olmayan Yazılımlara Proxy Desteği Kazandırmak
Bu işlem için Backtrack işletim sisteminde hali hazırda kurula gelen ve socks proxy desteği olmayan yazılımlara (nmap, ftp, rdekstop gibi gibi) proxy desteği kazandıran proxychains yazılımını tercih edebiliriz.
Varsayılan olarak TOR socks proxy ayarlarını taşımaktadır. 

# cat /etc/proxychains.conf
socks4 127.0.0.1 9050

ProxyChains Kullanımı

# proxychains program komut_dizisi

Örnek Uygulamalar
TOR üzerinden port tarama

# proxychains nmap -n  8.8.8.8
ProxyChains-3.1 (http://proxychains.sf.net)
Starting Nmap 6.25 ( http://nmap.org ) at 2013-02-08 12:03 EET
Nmap scan report for 8.8.8.8
Host is up (0.048s latency).
Not shown: 998 filtered ports
PORT    STATE  SERVICE
53/tcp  open   domain
113/tcp closed ident
Nmap done: 1 IP address (1 host up) scanned in 7.96 seconds

SQLMap ile Tor Üzerinden Sql Injection Demeleri

# ./sqlmap.py -u ‘http://ww.hack2net.com/index.php?sayfa=1’ –tor-port=9050 –tor-type=SOCKS5 –random-agent

TOR Üzerinden Exploiting Denemeleri
Pentest çalışmalarında exploit frameworkü olarak sık kullandığımız metasploit socks proxy desteğine sahiptir. Exploiting işlemlerinde eğer metasploiti kullanıyorsanız ve proxy üzerinden saldırı senaryoları yapmak durumundaysanız, exploit seçimden sonra aşağıdaki komut ile socks proxy tanımlayabilirsiniz.

msf  exploit(linksys_apply_cgi) > set Proxies socks5:127.0.0.1:9050

Ozan UÇAR <ozan.ucar@bga.com.tr>