Şimdiye kadar temel ve yaygın açıkları, güvenlik mimarisini ve gerçek hayattan örneklerle pratik yapmayı gördük. Artık daha ileri seviye saldırı yöntemlerine geçmenin vakti geldi. Bu adımda, adını sık duymayabileceğin ancak bug bounty camiasında ve gelişmiş saldırı senaryolarında sıkça karşılaşabileceğin açık türlerini inceleyeceğiz:
- XXE (XML External Entity)
- CSRF (Cross-Site Request Forgery)
- SSRF (Server-Side Request Forgery)
Bu tür açıklar, genellikle karmaşık mimarilerde, API tabanlı uygulamalarda veya mikro servis ortamlarında ortaya çıkar. Biraz daha teknik derinlik gerektirirler, ancak onları anladığında rekabette bir adım öne geçersin.
XXE, XML tabanlı veri işleme yapan uygulamalarda ortaya çıkan bir zafiyettir. Saldırgan, XML içinde tanımlanmış harici varlıkları manipüle ederek sunucunun yerel dosyalarına erişebilir, dahili sistemleri keşfedebilir veya DoS (Hizmet Kesintisi) yaratabilir.
Basit Örnek:
<!DOCTYPE foo [ <!ENTITY xxe SYSTEM "file:///etc/passwd"> ]>
<root>&xxe;</root>
Bu şekilde, saldırgan sunucudaki dosyaları okuyabilir veya dahili ağa istek yapabilir.
Savunma:
- XML işlemcide harici varlıkları kapatmak.
- Kütüphaneleri güncel tutmak.
- Safe parser kullanmak.
CSRF, bir kullanıcının tarayıcısı üzerinden hedeflenen bir siteye istenmeyen bir aksiyon yaptırma tekniğidir. Kullanıcının oturumu açıksa, saldırgan kullanıcının tarayıcısını kullanarak hesabı üzerinde işlem yapabilir.
Klasik Senaryo:
- Kullanıcı bir bankacılık sitesinde oturum açar.
- Aynı tarayıcıda saldırganın hazırladığı zararlı bir siteye girer.
- Zararlı site, kullanıcının farkında olmadan bankacılık sitesine para transferi isteği gönderir.
Savunma:
- CSRF Token kullanımı.
- SameSite çerez ayarları.
- Kullanıcının gerçekleştirilen işlemi onaylaması için ek doğrulama adımları (2FA, Captcha).
SSRF, sunucunun kendisi üzerinden istek göndererek iç ağ kaynaklarına erişme, dahili API’ları keşfetme veya bulut servislerine yönelme saldırılarıdır. Saldırgan, uygulamaya kötü niyetli bir URL vererek sunucunun bu URL’ye istek yapmasını sağlar. Örneğin:
GET /?url=http://127.0.0.1:8080/internal-api
Bu sayede saldırgan dahili sistemleri görebilir, hatta AWS IMDS (Instance Metadata Service) gibi servislerden hassas bilgileri çalabilir.
Savunma:
- Harici isteklere sınırlama getirmek.
- URL beyaz listesi oluşturmak.
- Request’leri filtrelemek, IP bloklamaları yapmak.
OWASP WebGoat, OWASP Juice Shop ve PortSwigger Web Security Academy gibi platformlar XXE, CSRF ve SSRF içeren senaryolar sunar. Burada pratik yaparak bu açıkların nasıl çalıştığını ve nasıl kapatılacağını deneyimleyebilirsin.
Ayrıca bug bounty platformlarında, program açıklamalarında bu tip açıkların hangi koşullarda kabul edildiği yazar. Bu sayede gerçek uygulamalarda XXE, CSRF veya SSRF denemeleri yaparak skill set’ini genişletebilirsin.
İleri seviye açıklar, “artık her şeyi biliyorum” dediğin anda karşına çıkar. Bu açıklar, temel bilgileri öğrenmiş, OWASP Top 10’un temellerini kavramış, pratik yapmış araştırmacıları bir üst seviyeye taşır.
Karmaşık sistemlerde, mikro servis mimarilerinde, bulut altyapılarında bu zafiyetler sıkça görülür. Onları anlamak ve engellemek, seni hem saldırı tarafında hem de savunma tarafında çok daha yetkin kılar.
Sıradaki adımda daha farklı konseptlere veya özelleşmiş alanlara dalabiliriz. Ancak önce, bu ileri seviye açıkları sindir ve biraz pratik yap. 😊