Güvenlik Testi - Web Uygulamalarını Hacklemek
Bir saldırıyı gerçekleştirmek için referans olarak kullanabileceğimiz çeşitli metodolojiler / yaklaşımlar vardır.
Web Uygulaması - PenTesting Metodolojileri
Bir saldırı modeli geliştirirken aşağıdaki standartlar dikkate alınabilir.
Aşağıdaki liste arasında OWASP en aktif olanıdır ve çok sayıda katkıda bulunanlar vardır. Bir web uygulaması tasarlamadan önce her geliştirme ekibinin dikkate aldığı OWASP Tekniklerine odaklanacağız.
PTES - Penetrasyon Testi Yürütme Standardı
OSSTMM - Açık Kaynak Güvenlik Testi Metodolojisi Kılavuzu
OWASP Test Teknikleri - Açık Web Uygulama Güvenlik Protokolü
OWASP İlk 10
Açık Web Uygulama Güvenliği Protokolü ekibi, son yıllarda web'de daha yaygın olan ilk 10 güvenlik açığını yayınladı. Web tabanlı bir uygulamada daha yaygın olan güvenlik açıklarının listesi aşağıdadır.
Uygulama - Uygulamalı
Tekniklerin her birini anlamak için örnek bir uygulama ile çalışalım. Saldırıyı, öğrenme amaçlı güvenlik açıkları ile açıkça geliştirilen J2EE uygulaması 'WebGoat'a gerçekleştireceğiz.
Webgoat projesiyle ilgili tüm ayrıntılar bulunabilir https://www.owasp.org/index.php/Category:OWASP_WebGoat_Project. WebGoat Uygulamasını İndirmek İçin,https://github.com/WebGoat/WebGoat/wiki/Installation-(WebGoat-6.0) ve indirme bölümüne gidin.
İndirilen uygulamayı kurmak için önce Port 8080'de çalışan herhangi bir uygulamanızın olmadığından emin olun. Sadece tek bir komut kullanılarak kurulabilir - java -jar WebGoat-6.0.1-war-exec.jar. Daha fazla ayrıntı için WebGoat Kurulumunu ziyaret edin
Kurulumdan sonra, şuraya giderek uygulamaya erişebilmeliyiz http://localhost:8080/WebGoat/attack ve sayfa aşağıda gösterildiği gibi görüntülenecektir.
Giriş sayfasında gösterilen misafir veya yöneticinin kimlik bilgilerini kullanabiliriz.
Web Proxy
İstemci (Tarayıcı) ve Sunucu (bizim durumumuzda Webgoat Uygulamasının barındırıldığı Sistem) arasındaki trafiği engellemek için bir web proxy kullanmamız gerekir. Şuradan indirilebilen Burp Proxy kullanacağızhttps://portswigger.net/burp/download.html
Burp suite'in ücretsiz sürümünü aşağıda gösterildiği gibi indirmeniz yeterlidir.
Burp Suite'i Yapılandırma
Burp Suite, tarayıcı ve web sunucusu tarafından gönderilen ve alınan her bilgi paketini yakalayabilen bir web proxy'sidir. Bu, müşteri bilgileri Web Sunucusuna göndermeden önce içeriği değiştirmemize yardımcı olur.
Step 1- Uygulama aşağıda gösterildiği gibi 8080 numaralı bağlantı noktasına ve Burp 8181 numaralı bağlantı noktasına yüklenir. Burp paketini başlatın ve aşağıda gösterildiği gibi 8181 numaralı bağlantı noktasına getirmek için aşağıdaki ayarları yapın.
Step 2- Burp paketinin trafiği kesebilmesi için Burp'un uygulamanın kurulu olduğu Port # 8080'i dinlediğinden emin olmalıyız. Bu ayarlar, aşağıda gösterildiği gibi Burp Suite'in kapsam sekmesinde yapılmalıdır.
Step 3- Ardından, 8181 numaralı bağlantı noktasını (Burp Suite bağlantı noktası) dinlemek için tarayıcınızın proxy ayarlarını yapın. Bu nedenle, Web proxy'yi, aşağıda gösterildiği gibi istemci (tarayıcı) ile sunucu (Web sunucusu) arasındaki trafiği kesecek şekilde yapılandırdık -
Step 4 - Yapılandırmanın anlık görüntüsü, aşağıda gösterildiği gibi basit bir iş akışı şeması yardımıyla aşağıda gösterilmiştir.