PortSwigger | Basic SSRF Against The Local Server
Öncelikle Lab'a geçmeden önce SSRF nedir bundan biraz bahsedelim..
SSRF ( Server-Side Request Forgery ) , türkçe karşılığı ile "Sunucu Tarafı İstek Sahteliği"
bir saldırganın hedef sunucuya giden isteklerin , açık bulunan web sitesindeki istekleri kontrol ederek varış noktasını değiştirmesine neden olacak bir açıktır.
Bu laboratuvardaki amacımız yönetici arayüzüne sahip olup kullanıcıyı silmek.
Karşımızda bir alışveriş sitesi var. Öncelikle url sonuna /admin ekleyerek admin logine erişmek istiyorum.
ve bu şekilde bir hata ile karşılaştım.
Bu şekilde bir sonuca varamayacağımı anladım ve BurpSuite ile deneme yapmak istiyorum.
Öncelikle herhangi bir ürünün detaylarına bakıyorum.
"Stoku kontrol et" adında bir buton ile karşılaştım.
BurpSuite ile işlemime geçiyorum. Butona tıklıyorum ve istemciden çıkan isteği görüntülüyorum.
Daha sonra CTRL+R (Sağ tık "Send to Repeater" ) ile görüntülediğimiz isteği değiştirerek , Repeater'da farklı değerleri almaya çalışalım.
Kod:
stockApi=http%3A%2F%2Fstock.weliketoshop.net%3A8080%2Fproduct%2Fstock%2Fcheck%3FproductId%3D4%26storeId%3D1
Send'e tıklayarak isteğimi gönderdim ve sonucumu aldım.
Response bölümünden yönetici arayüzünü görüntülemek icin Render'a tıklıyorum.
Yönetici arayüzüne ulaştık. Bizden "carlos" adlı kullanıcıyı silmemiz isteniyor.
Hangi değer ile isteği göndermem gerektiğini öğrenmek icin Response'dan Raw'a geri dönüyorum ve sayfada "carlos" olarak aratıyorum.
"/admin/delete?username=carlos" isteğini göndererek carlos adlı kullanıcıyı silebileceğimi görüyorum.
stockApi'ye "http://localhost/admin/delete?username=carlos" bu değeri veriyorum ve Send'e tıklayarak yoluma devam ediyorum.
Follow redirection'a tıklıyorum ve Render diyorum tekrar.
Kullanıcının silindiğini ve laboratuvarın çözüldüğünü görmüş olduk.
Beni Dinlediğiniz İçin Teşekkür Ederim...



