zed attack-proxy-web
DESCRIPTION
Web Güvenlik denetimi için OWASP Zed Attack Proxy KullanımıTRANSCRIPT
ZED ATTACK PROXY İLE
WEB GÜVENLİK DENETİMİ
Barkın Kılıç
Kim?
• Barkın Kılıç
• Bilişim Güvenliği Çalışanı
• Ağ Sızma Uzmanı (Network Pentester)
• Linux Kullanıcıları Derneği üyesi
• Bilişim güvenliği ve Linux eğitmeni
• Blog Yazarı (Biraz tembel bu konuda)
Ajanda
1. Web Güvenlik Denetimi Nedir?
2. Web Uygulumalarına Sızma Testleri Nasıl Yapılır?
3. Zed Attack Proxy Nedir?
4. Nasıl Kullanılır?
5. Demo
Web Güvenlik Denetimi Nedir?
• Web uygulamaları temelde sonuç odaklı ve hızlı
geliştirilmektedir.
• Güvenlik kriteri her zaman, bilinçli yada bilinçsiz olarak
göz ardı edilir.
• Buda uygulamanın normalde davranması gerektiğinden
farklı davranmasına olanak sağlayacak güvenlik
açıklarına mahal vermektedir.
• Bu noktada ise kötü niyetli kullanıcılara gün doğmaktadır.
• Güvenlik denetçileri (Heykır, Pentester, White Hat vb.) art
niyetli kişiler gibi bu zafiyetleri tespit eden
profesyonellerdir.
Yani?
• Firewall web uygulamalarını korumaz!
• IDS/IPS yada WAF kesinlikle yeterli değil!
• Güvenli Kod Geliştirme ve kod geliştirme süreçleri
esnasında sızma testi gerekli.
• Bunların dışında mutlaka geliştirilen uygulamaya
sızma(güvenlik) testi yaptırılmalıdır.
Web Güvenlik Denetimi Nasıl Yapılır?
• Uygulamanın yaptığını söylediklerini gerçekten yapıyor
mu?
• Gizli değişkenler ne bilgileri saklıyor?
• Liste ve Seçim kısımlarına sadece o değerler mi geliyor?
• Javascript yada diğer client side teknolojiler değiştirilip
istenilenden farklı bir sonuç alınabiliyor mu?
• Proxy kullanarak arada gidip gelen veri değiştirildiğinde
uygulama nasıl davranıyor?
Denetlemede Nelere Dikkat Edilir?
• Doğrulama sistemi
• Yetkilendirme adımları
• Mantıksal saldırılar
• İstemci tarafı saldırılar
• Komut çalıştırma
• Uygulamanın verilerinin saklandığı sistemlerden veri
sızdırma
Güvenlik Denetiminde SQLi Bulunca
Zap Nedir?
• Zend Attack Proxy (ZAP)
• Yazarı Simon Bennetts
• Mozilla Security Team çalışanı
• Kullanımı kolay Web Güvenlik Denetimi aracı
• Açık kaynak ve ücretsiz
• Web güvenlik denetimine yeni başlayanlar ve geliştiriciler
için ideal
• Otomatik web güvenlik testleri için gayet ideal
• Birçok büyük güvenlik denetim amaçlı linux dağıtımlarında
mevcut (Backtrack, Kali,Backbox, Samurai vs.)
• Multi Platform, kurulumu kolay
Zap İlkeleri
• Daima özgür ve açık kaynak yazılım
• Herkesin geliştirimine açık ve destekleniyor
• Daima cross platform (Linux, Macos,Windows)
• Kullanımı kolay
• Kurulumu kolay
• Birçok dil desteği var
• Tamamen dökümante edilmiş
• Birçok geliştirici araçları ile beraber çalışabiliyor
Birkaç Ufak Bilgi
• Paros proxy projesinden esinlenip, burdan devralarak
geliştiriliyor
• İlk sürüm 2010 senesinde çıkarılıyor
• En son Eylül 2013’te versiyon 2.2.2 sürüldü
• 20’nin üzerinde dile çevrilmiş durumda
• https://code.google.com/p/zaproxy/downloads/list
Zap Özellikleri
• İstekler için araya giren vekil sunucu
• Aktif ve Pasif tarama özelliği
• Web ve AJAX spider özelliği
• Web socket desteği
• Dizin tarama desteği (Owasp DirBuster)
• Fuzzing (Owasp JbroFuzz)
• Raporlama
• Vs.
Zap Nasıl Kullanılır?
• Tak ve Hack! (Link yazıp butona bas arkana yaslan)
• Vekil sunucu gösterip pasif tarama
• Elle sızma testi yapılabilir
• Otomatik geliştirme ve test süreçleri esnasında tarama
• Debugging yapmak için kullanılabilir
Otomatik Geliştirme ve Test Sürece
Uyumu• https://code.google.com/p/zaproxy/wiki/SecRegTests
• Selenium
• Robot
• Cucumber
• Jbehave
Yeni Birtakım Özellikler
• Teknoloji tespit etme (Wappalyzer)
• HTTPS Bilgileri bulma (Beast attack vs.)
• Komut enjekte etme
• Kod enjekte etme
• Sql sorguları enjekte etme (Sqlmap çekirdek kodu
içeriyor)
• HTTP headers + Cookies
Çoğu Güvenlik Dağıtımında Hazır
Proxy Ayarları
Firefox Eklentisi - 1
Firefox Eklentisi - 2
Firefox Eklentisi - 3
Firefox Eklentisi - 4
Firefox Eklentisi - 5
• Eklenti üzerinden tarama
başlatılabilir
• Taramanın sonucu öğrenilebilir
• Http oturumu kaydedilebilir ve
yeni oturumlar oluşturulabilir.
• Http oturumları arası geçiş
yapılabilir
ZAP Pasif Tarama
ZAP Pasif Tarama
• Normal Kullanım esnasında gidip gelen istekler üzerinden Header ve Body
kısımlarını inceleyerek gerekli uyarıları yapabilir.
• Eğer mevcut bir uyarı bulunmuş istek daha detaylı taranmak istenirse
“History” tabından seçilip daha detaylı saldırı başlatılabilir.
• Pasif tarama esnasında normal kullanıcı oturumlarını yakalayarak bunları
hatırlar ve gerektiğinde oturumlar arası geçişe izin verir.
ZAP İstek Üzerinden Saldırı Başlatma
ZAP İstek Tekrarlama ve Değiştirme
ZAP Gelen Giden İstekleri Kesme
Demo?!