20 Eylül 2012

Sızma Test Araçlarını SSH Tüneli Üzerinden Kullanmak

Posted by: Fırat Celal Erdik 20 Eylül 2012
Sızma testleri yapılırken genellikle testi yaptıran firma kendisine hangi ip adresi, ip adreslerinden testler yapıldığını bilmek ister. Bazı durumlarda Firewall/IPS/WAF sistemlerden bu ip adreslerine özel erişimler tanımlanması da gerekebilir.

Eğer sızma test ekibi birden fazla kişiden oluşuyorsa tek bir ip adresinden çıkış yapabilmek için ofis çıkış ip adresi ya da internet üzerinden alınacak VPS sunucular kullanılabilir. VPS sunucunun Linux olması durumunda birden fazla kişi bu sunucuya bağlanarak sızma testlerini gerçekleştirebilir.

Sunucu üzerinden iki farklı şekilde sızma testleri gerçekleştirilebilir. Bunlardan biri VPN diğeri ise Proxy olarak kullanma.VPN kullanımında,linux sunucu üzerine VPN kurulur.Tüm sızma test uzmanları VPN'le bu sunucuya bağlanır bunun üzerinden çıkış yaparak testi gerçekleştirirler.

VPN kurulumu ve yönetimi zahmetli olduğu için diğer yöntem olan uzaktaki sunucuyu SOCKS Proxy olarak kullanma da tercih edilebilir.

Burada değinilecek olan araç, SSH üzerinden kolay VPN kurulumuna izin veren sshuttle (proxy+ssh+vpn) isimli araçtır.

Not:Bu bağlantı yöntemleri çoğu zaman yasaklı sitelere girmek,şirket networklerindeki içerik filtreleme sistemlerini atlatma veya kablosuz ağlarda güvenli dolaşma içinde kullanılır.

Uzak sunucuyu ssh proxy olarak kullanmak çin sunucumuz üzerinde ssh Port adresi 443 olarak set edildikten sonra yerel sistemde  aşağıdaki komut çalıştırılır.Böylece uzak sisteme ssh tünel kurulmuş olur.Yereldeki TCP/8080 portuna gelen isteklerin sunucu ip adresiyle internete çıkartılması amaçlanır.

Not:Burada local port olarak 8080 kullanmamızın sebebi bir çok uygulama default 8080 üzerinden proxy kullanması,uzak port olarak da 443 kullanma sebebimiz şirketlerin outgoing 443 portlarına izin veriyor olmasıdır.

root@pentest-pc:~# ssh -D 8080 username@proxysunucu -p 443

Fakat burada localdeki 8080 portu socks proxy desteği olan araçlarda set edilip kullanılabilir. Örneğin browserlarda(ie,firefox v.s) proxy ayarından socks proxy bölümü localhost:8080 yapılarak browser üzerinden hedefe proxy üzerinden gidebiliriz. Fakat bu işlem pentest işlemlerinde bize yetmeyebilir. Yani bazı hazır otomatize tool'lar(zap,burb suite vs.) kullanmak istediğimizde karşımıza socks proxy desteğinin olmaması gibi sorunlar çıkabilir.

Bu durumda pentest yapacağımız tool'ların da kurduğumuz bağlantı üzerinden geçmesini isteyebiliriz. Yani localimizin tüm trafiğini bu uzak proxy sunucuya secure olarak göndermek isteyebiliriz. Bunun için sshuttle aracı kullanılabilir.Bu araç ile proxy sunucusunun istenilen portuna ssh bağlantınızı kurabilir ve tüm internet trafiğinizin bu proxy üzerinden gitmesini sağlayabilirsiniz.Bu araç ile bir nevi proxy,ssh bağlantı ve vpn bir arada. Böylece zap,burp suite,sqlmap vs. gibi güvenlik araçlarının socks proxy desteginin olmamasından dolayı yaşanabilecek zorluklar giderilebilir.


Kurulum:

Sshuttle indirmek için https://github.com/apenwarr/sshuttle adresini ziyaret edebilirsiniz. Indirdikten sonra mevcut bulunduğu dizine giriyoruz.

Sshuttle  aracının basit kullanımı aşağıdaki gibidiri.

root@pentest-pc:/sshuttle#
./sshuttle -r username@proxysunucu:sshportu 0.0.0.0/0 -vv --dns



Sizden ilgili kullanıcıya ait parolayı isteyecek girdikten sonra tüm trafiginiz(dns istekleri dahil) artık proxy server üzerinden geçecektir. Bundan sonra pentest için kullanılan (proxy'lik de yapan) ZAP/Burb suite gibi uygulamalar rahatlıkla kullanılabilir.

Örneğin ZAP kullanmak için, browser üzerinde http proxy ayarı localhost:8080 olarak girildikten sonra ilgili siteler üzerinde gezinti yapılarak ZAP aracının üzerinden trafigin geçmesi ve cache'len mesi sağlanabilir.Sqlmap vs. gibi her türlü pentest aracınızın trafiğini de rahatlıkla uzak sunucu üzerinden çıkarmış olursunuz.

0 yorum:

Yorum Gönder

Her türlü eleştiri,yorum,ekleme ve düzeltmeye yönelik fikirlerinizi paylaşabilirsiniz.Hakaret içeren yorumlar filtrelenmektedir.

Makalelerin kötüye kullanım kullanıcının sorumluluğundadır. | networkpentest.net. Blogger tarafından desteklenmektedir.