owasp zap tutorial comprehensive review owasp zap tool
Bu Eğitimde OWASP ZAP Nedir, Nasıl Çalışır, ZAP Proxy Nasıl Kurulur ve Kurulur. Ayrıca ZAP Kimlik Doğrulaması ve Kullanıcı Yönetimi Demosunu içerir:
Kalem Testi için Neden ZAP Kullanılmalı?
Güvenli bir web uygulaması geliştirmek için, nasıl saldırıya uğrayacaklarını bilmek gerekir. Burada, web uygulaması güvenliği veya Sızma Testi gereksinimi geliyor.
Güvenlik amacıyla şirketler ücretli araçlar kullanır, ancak OWASP ZAP, test uzmanları için Penetrasyon Testini kolaylaştıran harika bir açık kaynaklı alternatiftir.
Ne öğreneceksin:
- OWASP ZAP Nedir?
- ZAP Nasıl Çalışır?
- ZAP Kimlik Doğrulaması, Oturum ve Kullanıcı Yönetimi
- ZAP Html Raporu Örneği
- Sonuç
OWASP ZAP Nedir?
Sızma testi, bir saldırgandan önce güvenlik açıklarının bulunmasına yardımcı olur. OSWAP ZAP, açık kaynaklı ücretsiz bir araçtır ve sızma testleri yapmak için kullanılır. Zap'ın temel amacı, web uygulamalarındaki güvenlik açıklarını bulmak için kolay sızma testine izin vermektir.
ZAP avantajları:
- Zap, çapraz platform sağlar, yani tüm işletim sistemlerinde çalışır (Linux, Mac, Windows)
- Zap yeniden kullanılabilir
- Raporlar oluşturabilir
- Yeni başlayanlar için ideal
- Ücretsiz araç
ZAP Nasıl Çalışır?
ZAP, bir proxy sunucusu oluşturur ve web sitesi trafiğinin sunucudan geçmesini sağlar. ZAP'de otomatik tarayıcıların kullanılması, web sitesindeki güvenlik açıklarının yakalanmasına yardımcı olur.
Daha iyi anlamak için bu akış şemasına bakın:
c ++ kullanan programlar
ZAP Terminolojileri
ZAP kurulumunu yapılandırmadan önce, bazı ZAP terminolojilerini anlayalım:
# 1) Oturum : Oturum, saldırı alanını belirlemek için web sitesinde gezinmek anlamına gelir. Bu amaçla, Mozilla Firefox gibi herhangi bir tarayıcı, proxy ayarlarını değiştirerek kullanılabilir. Ya da zap oturumunu .session olarak kaydedebilir ve yeniden kullanılabiliriz.
# 2) Bağlam: Bir web uygulaması veya birlikte bir dizi URL anlamına gelir. ZAP'de oluşturulan içerik, çok fazla veriden kaçınmak için belirtilene saldıracak ve geri kalanını yok sayacaktır.
# 3) ZAP Saldırısı Türleri: URL'ye basarak ve tarayarak farklı ZAP saldırı türlerini kullanarak bir güvenlik açığı raporu oluşturabilirsiniz.
Aktif Tarama: Zap kullanarak birçok şekilde Aktif tarama gerçekleştirebiliriz. İlk seçenek, Hızlı başlangıç, ZAP aracının karşılama sayfasında bulunan. Lütfen aşağıdaki ekran görüntüsüne bakın:
Hızlı Başlangıç 1
Yukarıdaki ekran görüntüsü, ZAP kullanmaya başlamanın en hızlı yolunu göstermektedir. Hızlı Başlangıç sekmesinin altındaki URL'yi girin, Saldırı düğmesine basın ve ardından ilerleme başlar.
Hızlı Başlangıç, örümceği belirtilen URL'de çalıştırır ve ardından etkin tarayıcıyı çalıştırır. Bir örümcek, belirtilen URL'den başlayarak tüm sayfaları tarar. Daha kesin olmak gerekirse, Hızlı Başlangıç sayfası 'doğrult ve çek' gibidir.
Hızlı Başlangıç 2
Burada hedef URL belirlendikten sonra saldırı başlar. İçeriği keşfetmek için URL’yi örterken İlerleme durumunu görebilirsiniz. Çok fazla zaman alıyorsa saldırıyı manuel olarak durdurabiliriz.
İçin başka bir seçenek Aktif tarama Zap otomatik olarak algılayacağı için ZAP proxy tarayıcısında URL'ye erişebilmemizdir. URL'ye sağ tıkladıktan sonra -> Aktif tarama başlayacaktır. Tarama tamamlandığında, aktif tarama başlayacaktır.
Saldırı ilerlemesi, Aktif Tarama Sekmesinde görüntülenecektir. ve Örümcek sekmesi saldırı senaryoları içeren liste URL'sini gösterecektir. Aktif tarama tamamlandığında sonuçlar Uyarılar sekmesinde görüntülenecektir.
Lütfen aşağıdaki ekran görüntüsünü kontrol edin Aktif Tarama 1 ve Aktif Tarama 2 net bir anlayış için.
Aktif tarama 1
Aktif tarama 2
# 4) Örümcek: Spider, web sitesindeki URL'yi tanımlar, köprüleri kontrol eder ve listeye ekler.
# 5) Ajax Örümcek: Uygulamamızın JavaScript'i yoğun bir şekilde kullandığı durumda, uygulamayı keşfetmek için AJAX örümceğine gidin.Açıklayacağım Ajax örümcek bir sonraki eğitimimde ayrıntılı olarak.
# 6) Uyarılar : Web sitesi güvenlik açıkları yüksek, orta ve düşük uyarılar olarak işaretlenir.
ZAP Kurulumu
Şimdi, ZAP kurulum kurulumunu anlayacağız. İlk önce, Zap kurulumu . Windows 10 kullandığım için Windows 64 bit yükleyiciyi buna göre indirdim.
Zap kurulumu için ön koşullar: Java 7 gereklidir. Sisteminizde java yüklü değilse, önce onu edinin. Sonra ZAP'ı başlatabiliriz.
ZAP Tarayıcısını Kurun
İlk önce, tüm aktif Firefox oturumlarını kapatın.
Zap aracını başlatın >> Araçlar menüsüne gidin >> seçenekleri seçin >> Yerel Proxy'yi seçin >> orada adresi localhost (127.0.0.1) ve bağlantı noktası 8080 olarak görebiliriz, zaten kullanılıyorsa başka bir bağlantı noktasına geçebiliriz, 8099 olarak değiştirdiğimi söyleyin. Lütfen aşağıdaki ekran görüntüsünü kontrol edin:
Zap 1'de yerel proxy
Şimdi, Mozilla Firefox'u açın >> seçenekler >> gelişmiş sekme >> seçin ve Ağ >> Bağlantı ayarları >> seçeneğini seçin Manuel proxy yapılandırması. Zap aracındaki ile aynı bağlantı noktasını kullanın. ZAP'ta manuel olarak 8099 olarak değiştirdim ve aynısını Firefox tarayıcısında kullandım. Proxy tarayıcısı olarak ayarlanmış Firefox yapılandırmasının aşağıdaki ekran görüntüsünü kontrol edin.
Firefox proxy kurulumu 1
Tarayıcınızı kullanarak uygulamanızı bağlamayı deneyin. Burada bağlanmaya çalıştım Facebook ve bağlantınızın güvenli olmadığını söylüyor. Bu nedenle, bir istisna eklemeniz ve ardından Facebook sayfasına gitmek için Güvenlik İstisnasını onaylamanız gerekir. Lütfen aşağıdaki ekran görüntülerine bakın:
Web sayfasına erişim -proxy tarayıcısı 1
Web sayfasına erişim - proxy tarayıcısı 2
Web sayfasına erişim -proxy tarayıcı 3
Aynı zamanda, Zap'ın siteler sekmesinin altında Facebook sayfası için oluşturulan yeni oturumu kontrol edin. Uygulamanızı başarıyla bağladığınızda, ZAP'nin geçmiş sekmesinde daha fazla satır görebilirsiniz.
Zap normalde sağ tıklama menüleriyle erişilebilen ek işlevsellik sağlar, örneğin,
>> HTML >> etkin taramaya sağ tıklayın, ardından zap etkin taramayı gerçekleştirecek ve sonuçları görüntüleyecektir.
Uygulamanızı tarayıcıyı kullanarak bağlayamıyorsanız, proxy ayarlarınızı tekrar kontrol edin. Hem tarayıcı hem de ZAP proxy ayarlarını kontrol etmeniz gerekecektir.
ZAP'ta Rapor Oluşturma
Aktif tarama tamamlandığında raporlar oluşturabiliriz. Bunun için OWASP ZAP >> Rapor >> HTML raporları oluştur >> dosya yolu sağlandı >> tarama raporu dışa aktarıldı. Olası tüm tehditleri tespit etmek ve düzeltmek için raporları incelememiz gerekiyor.
ZAP Kimlik Doğrulaması, Oturum ve Kullanıcı Yönetimi
Doğrulama, oturum ve kullanıcı yönetimini ele alan başka bir Zap özelliğine geçelim. Lütfen bununla ilgili aklınıza gelen herhangi bir sorguyu yorum olarak bana bildirin.
Temel konseptler
- Bağlam : Bir web uygulamasını veya bir dizi URL'yi temsil eder. Belirli bir Bağlam için, kimlik doğrulama ve oturum yönetimi sürecini özelleştirmek ve yapılandırmak için yeni sekmeler eklenir. Seçenekler, oturum özellikleri iletişim kutusunda mevcuttur. Yani Oturum özellikleri iletişim kutusu -> Bağlam -> varsayılan seçeneği kullanabilir veya yeni bir bağlam adı ekleyebilirsiniz.
- Oturum Yönetimi Yöntemi: 2 tür oturum yönetimi yöntemi vardır. Çoğunlukla, Bağlam ile ilişkili olarak tanımlama bilgisi tabanlı oturum yönetimi kullanılır.
- Kimlik Doğrulama Yöntemi: ZAP tarafından kullanılan başlıca 3 tür Auth yöntemi vardır:
- Form tabanlı kimlik doğrulama yöntemi
- Manuel Kimlik Doğrulama
- HTTP Kimlik Doğrulaması
- Kullanıcı yönetimi: Kimlik doğrulama şeması yapılandırıldıktan sonra, her bir Bağlam için bir dizi kullanıcı tanımlanabilir. Bu kullanıcılar çeşitli eylemler için kullanılır ( Örneğin, Örümcek URL / Bağlam Y Kullanıcısı olarak, tüm istekleri Kullanıcı X olarak gönderin). Yakında, kullanıcıları kullanan daha fazla eylem sağlanacaktır.
Yeniden kimlik doğrulama gerçekleştiren eski kimlik doğrulama uzantısının yerine bir 'Zorunlu Kullanıcı' uzantısı uygulanmıştır. Araç çubuğunda artık bir 'Zorunlu Kullanıcı' modu mevcuttur (eski kimlik doğrulama uzantısı ile aynı simge).
Bir kullanıcıyı belirli bir bağlam için 'Zorunlu Kullanıcı' olarak ayarladıktan sonra veya etkinleştirildiğinde, ZAP aracılığıyla gönderilen her istek, bu kullanıcıya gönderilmesi için otomatik olarak değiştirilir. Bu mod aynı zamanda otomatik olarak yeniden kimlik doğrulama gerçekleştirir (özellikle Form Tabanlı Kimlik Doğrulama ile bağlantılı olarak), kimlik doğrulama eksikliği varsa, 'oturum kapatıldı' algılanır.
Bir demo görelim:
Aşama 1:
İlk olarak, ZAP'yi başlatın ve proxy tarayıcısında URL'ye erişin. Burada örnek URL'yi şu şekilde aldım: https://tmf-uat.iptquote.com/login.php . Gelişmiş -> İstisna ekle -> 6. ve 7. sayfalardaki gibi güvenlik istisnasını onaylayın üzerine tıklayın. Ardından açılış sayfası görüntülenir. Aynı zamanda ZAP, Web sayfasını yeni bir oturum olarak Siteler altına otomatik olarak yükler. Aşağıdaki resme bakın.
Adım 2:
Bunu bir bağlama dahil edin. Bu, onu varsayılan bir bağlama dahil ederek veya yeni bir bağlam olarak ekleyerek yapılabilir. Aşağıdaki resme bakın.
Aşama 3:
Şimdi sıra Kimlik Doğrulama yöntemi. Kimlik Doğrulamayı o oturum özellikleri iletişim kutusunda görebilirsiniz. Burada Form tabanlı Kimlik Doğrulama yöntemini kullanıyoruz.
AuthMethodParams gibi olmalı ' giriş URL'si = https: //tmf-uat.iptquote.com/login.php&loginRequestData=username=superadmin&password=primo868&proceed=login ”
Örneğimizde, kimlik doğrulama yöntemini Form tabanlı olarak ayarlamamız gerekiyor. Bunun için hedef URL'yi seçin, oturum açma isteği gönderi veri alanı önceden doldurulur, bundan sonra parametreyi kullanıcı adı ve şifre olarak değiştirin -> Tamam'a tıklayın .
4. Adım:
Şimdi, kimlik doğrulaması yapıldığında ZAP'ye haber verecek göstergeler ayarlayın.
Giriş yapıldı ve çıkış yapıldı göstergeleri:
- Sadece bir tane gerekli
- Yanıt mesajında eşleşen Regex kalıplarını ayarlayabiliriz, oturum açıldı veya oturumu kapatıldı göstergesini ayarlamamız gerekir.
- Bir yanıtın ne zaman doğrulanacağını veya doğrulanmadığını belirleyin.
- Oturum açıldı göstergesi örneği: Qhttp: // example / logout E veya Hoş Geldiniz Kullanıcı. *
- Çıkış yapıldı göstergesi örneği: login.jsp veya bunun gibi bir şey.
Burada, demo uygulamamızda, URL'ye bir proxy tarayıcısında eriştim. Geçerli bir kimlik bilgisi, Kullanıcı adı süper yönetici olarak ve Parola primo868 kullanılarak uygulamada oturum açıldı. İç sayfalarda gezinin ve oturumu kapatın
3. Adım ekran görüntüsünde görebileceğiniz gibi, Zap oturum açma isteği verilerini TMF uygulaması oturumu açma (Demo uygulama oturumu) için kullanılan bir veri olarak alır.
Yanıt olarak ZAP'nin Yanıtı'ndan -> oturum kapatıldı yanıtı -> göstergede oturum açmış olarak işaretleyin. Bakın aşağıdaki ekran görüntüsü
Adım 5:
Göstergeyi kaydedebilir ve oturum özellikleri iletişim kutusunun oturum açıldı göstergesi ile eklenip eklenmediğini doğrulayabiliriz. Aşağıdaki ekran görüntüsüne bakın:
6. Adım:
Kullanıcıları, geçerli ve geçersiz kullanıcıları eklememiz gerekiyor. Her ikisine de örümcek saldırıları uygulayın ve sonuçları analiz edin.
Geçerli Kullanıcı:
Geçersiz kullanıcı:
7. Adım:
Varsayılan olarak, oturum yönetimini tanımlama bilgisi tabanlı bir yöntem olarak ayarlayın.
8. Adım:
Örümcek URL saldırısı geçersiz ve geçerli kullanıcılara uygulanır ve sonuçları gözden geçirir / rapor oluşturur.
Geçersiz kullanıcı örümcek saldırısı görünümü 1:
Burada geçersiz kullanıcıya örümcek URL saldırısı uygulanır. ZAP arayüzünde Get: login.php'yi görebiliriz (hata _message), bu, kimlik doğrulamanın başarısız olduğu anlamına gelir. Ayrıca, URL'leri iç TMF sayfalarından geçirmez.
9. Adım:
Geçerli kullanıcıya örümcek URL saldırısı uygulamak için, site listesine gidin -> saldırı -> örümcek URL'si -> mevcut geçerli kullanıcı -> burada varsayılan olarak etkindir -> taramayı başlatın.
Sonuçları analiz edin: Doğrulanmış bir kullanıcı olduğu için, tüm iç sayfalarda gezinecek ve başarılı olarak kimlik doğrulama durumunu gösterecektir. Aşağıdaki ekran görüntüsüne bakın.
Geçerli kullanıcı
ZAP Html Raporu Örneği
Aktif bir tarama tamamlandığında, bunun için bir HTML raporu oluşturabiliriz. Bunun için Rapor -> Html Raporu Oluştur'u seçin. HTML raporlarının bir örnek içeriğini ekledim. Burada yüksek, orta ve düşük uyarı raporları oluşturulacaktır.
karakteri int c ++ 'ya dönüştür
Uyarılar
Sonuç
Bu eğiticide, ZAP'nin ne olduğunu, ZAP'nin nasıl çalıştığını, kurulumu ve ZAP proxy kurulumunu gördük. Farklı türlerde Aktif tarama işlemleri, ZAP kimlik doğrulama demosu, oturum ve kullanıcı yönetimi ve temel terminolojiler. Bir sonraki eğitimimde Ajax örümcek saldırısı, fuzzer kullanımı, Zorla taranan siteler hakkında bilgi vereceğim.
Ve Zed saldırı proxy'si kullandıysanız ve paylaşacak bazı ilginç ipuçlarınız varsa, aşağıdaki yorumlarda paylaşın.
Referanslar:
Önerilen Kaynaklar
- PractiTest Test Yönetim Aracı Uygulamalı İnceleme Eğitimi
- TestLodge Test Yönetim Aracı İncelemesi
- TestComplete Eğitimi: Yeni Başlayanlar İçin Kapsamlı Bir GUI Test Aracı Kılavuzu
- Bekleme Listesi Hata İzleme Aracı Uygulamalı İnceleme Eğitimi
- Bugzilla Eğitimi: Hata Yönetimi Aracı Uygulamalı Eğitimi
- SmartMeter.io Aracını Kullanarak Web Sitesi Performansı Nasıl Test Edilir: Uygulamalı İnceleme Eğitimi
- WAVE Erişilebilirlik Test Aracı Eğitimi
- QTest Test Yönetim Aracının Uygulamalı İncelemesi