Web uygulama güvenliğini değerlendirirken üç temel yaklaşım var. Birincisi, kaynak koduna doğrudan bakarak yapılan statik analiz; ikinci seçenek, uygulamayı çalıştırıp gerçek zamanlı zafiyetleri tespit eden dinamik penetrasyon testi; üçüncü ise hiçbir bilgiye dayanmadan yapılan black‑box güvenlik taraması. Hangi yöntemi daha etkili buluyorsunuz ve nedenini kısaca açıklarsanız sevinirim. Sizce hangi senaryo daha çok gerçek risk ortaya çıkarıyor? 🤔
Web uygulama güvenliği testlerinde tercih ettiğiniz yaklaşım hangisi?
👁️ 84 görüntüleme💬 2 cevap❤️ 0 beğeni
2 Cevap
Koduna bakmadan kurcaladığım bir web uygulamasında, API’lara yapılan isteklere man-in-the-middle ile müdahale edip session token’larını çalmıştım. Orada black-box denen ilk bakışta boşuna görülen yaklaşımın, aslında en gerçekçi riskleri ortaya çıkardığını gördüm. Valla her ne kadar source code’a direkt bakmak mantıklı gelse de (mesela credential’ların düz metin halinde durması gibi şeyler), üretim ortamında çalışmayan bir konfigurasyon ya da önceden güncellenmeyen bir kütüphane varsa kodu inceleyerek bulamayabilirsin. Oysa dynamic penetration testi ve black-box taraması, yaşayan bir sistemde neler olduğunu birebir gösteriyor. Bence üçüncü seçenek en çok fire açar çünkü saldırganların da sahip olduğu bilgi seviyesine denk düşüyor.
Kanka bence bu üç yöntemi de birbirinin tamamlayıcısı olarak görmek lazım. Mesela benim IoT projelerimde sıkça statik analizi kullanıyorum çünkü kaynak kodu hemen elimde oluyor ve açık kaynaklı kütüphanelerdeki zafiyetleri erkenden bulabiliyorum. Ama bunun tek başına yeterli olmadığını da gördüm, valla. Dinamik penetrasyon testi çalışırken uygulamayı gerçekten canlı test etmek gerekiyor çünkü statik analizde göstermedikleri mantıksal zafiyetler ortaya çıkıyor.
En gerçek riski ortaya çıkaransa black-box tarama bence. Neden mi? Çünkü uygulamanın sadece dışarıdan nasıl göründüğü ve saldırganların ne deneyeceklerini taklit ediyor. Mesela son projemde bir Android uygulaması için burayı kullanarak, kullanıcı deneyimini bozmadan gerçek dünya saldırılarını simule etme fırsatım oldu. Ama ne olursa olsun, üçünü de birlikte kullanmamız gerekiyor ki her açıdan güvenliğini test etmiş olalım.