Bu yazı web uygulamalarında en yaygın olarak karşılaştığımız zafiyetlerin kısa sürede etkili bir şekilde tespit edilmesine yönelik pratik bilgiler özetlenerek hazırlamıştır.
Girdi güvenliğine ilişkin kontroller:
Web uygulaması üzerinde varsa arama, kayıt olma, iletişim, parola sıfırlama ve yorum girişi formlarını ziyaret ederek girdi noktalarına manuel olarak polyglot string’leri uygulayabilirsiniz.
Manuel yöntemler ile keşfin zor olduğu veya uzun süreceği durumlarda bu spesifik fonksiyonların Burp Suite’in built-in scanner’ı taranması faydalı olur.
Oturum yönetiminin güvenliğine ilişkin kontroller:
Burp Suite ile HTTP trafiğin arasına girerek oturum cookie’si kontrol edin, log-out olduktan sonra tekrar cookie değeri kontrol edin ve login olduktan sonra tekrar cookie’yi kontrol edin. Eski cookie’yi submit ettikten sonra içeriğe erişip erişemediğine bakabilirsiniz.
Web
uygulaması üzerinden varsa login, kayıt olma ve parola sıfırlama
formlarına user enumeration kontrolleri uygulayıp, sistemde bulunan
kullanıcı bilgilerini elde edip edemediğnizi ve yetkili kullanıcı
hesabını tespit edip edemediğinizi kontrol edebilirsiniz.
Örneğin parola sıfırlama formu için parola sıfırlayı deneyip password’ün
plaintext gelip gelmediğine bakın. Plaintext olarak gönderiliyorsa
veritabanında şifrelenmeden tutulduğu ya da geri döndürülebilir bir
formatta tutulduğunu anlayabiliriz.
URL bazlı token kullanılıp
kullanılmadığına bakılarak, tahmin edilebilir token olup olmadığına
bakılabilir. Token’in birden fazla kez kullanılıp kullanılmadığı
kontrolü ile birlikte otomatik olarak login yapılabilip yapılamadığı
kontrol edilebilir.
Yetkilendirme yönetiminin güvenliğine ilişkin kontroller:
Web uygulama üzerinden güvenliğin hassas olduğu fonksiyonları ya da dosyaları bulabilir; yetkisiz (non-auth IDOR) browsing’e, kısıtlı yetkili (low-auth IDOR) browsing’e, CSRF’e, CSRF protection bypass’a zafiyetli olup olmadığını kontrol edebilirsiniz. İşlemlerin HTTP üzerinden gerçekleşip gerçekleşmediğinin kontrolü de basit ama unutulmaması gereken bir adımdır.
Diğer yaygın kontrol adımları:
SecList’in top short’ini kullanarak directory brutefoce yapabilirsiniz. Web uygulama üzerinden upload fonksiyonlarını code execute edebilen alternatif dosya tipleri (PHP/etc/etc) için kontrol edilebilir ve çalıştırmak için yüklendiği dizinin tespiti yapılabilirsiniz.
CAPTCHA
değeri istenen noktalarda CAPTCHA’nın doğru yapılandırılması kontrol
etmek faydalı olacaktır. Bu sayede işlemler otomatize yapılarak sisteme
erişim sağlama, kullanıcı adı ve parola denemeleri, SMS flood, mail
flood gibi işlemlerle sistem kaynaklarının boşa harcanabilme durumunu
kontrol edilebilirsiniz.
Web uygulama üzerinden database
etkileşimi olan fonksiyonlar için HTTP isteklerinde database’e giden
değerlerini SQLMap aracı yardımı ile SQL Injection’a zafiyetli olup
olmadığını kontrol edebilirsiniz.
Yorum Gönder