Siteler Arası İstek Sahteciliği (CSRF)

Bir CSRF saldırısı, kimliği doğrulanmış bir kullanıcıyı (mağdur), mağdurun oturum çerezi de dahil olmak üzere, savunmasız bir web uygulamasına sahte bir HTTP isteği göndermeye zorlar; kurban.

Bu kusurun Tehdit Ajanlarını, Saldırı Vektörlerini, Güvenlik Zafiyetini, Teknik Etkisini ve İş Etkilerini basit bir şema yardımıyla anlayalım.

Misal

İşte klasik bir CSRF örneği -

Step 1 - Diyelim ki savunmasız uygulama herhangi bir şifreleme olmadan düz metin olarak bir durum değiştirme talebi gönderiyor.

http://bankx.com/app?action=transferFund&amount=3500&destinationAccount=4673243243

Step 2 - Artık bilgisayar korsanı, isteği saldırganın kontrolü altındaki çeşitli sitelerde depolanan bir görüntüye yerleştirerek kurbanın hesabından saldırganın hesabına para aktaran bir talep oluşturuyor -

<img src = "http://bankx.com/app?action=transferFunds&amount=14000&destinationAccount=attackersAcct#" 
   width = "0" height = "0" />

Eller AÇIK

Step 1- Görüntüye bir Java komut dosyası yerleştirerek CSRF sahteciliği yapalım. Sorunun anlık görüntüsü aşağıda listelenmiştir.

Step 2 - Şimdi aktarımı 1x1 resim halinde modellememiz ve kurbanın aynı şeyi tıklamasını sağlamamız gerekiyor.

Step 3 - Mesaj gönderildikten sonra, mesaj aşağıda vurgulanan şekilde görüntülenir.

Step 4- Şimdi kurban aşağıdaki URL'yi tıklarsa, aktarım gerçekleştirilir ve bu, burp suite kullanarak kullanıcı eylemini durdururken bulunabilir. Aktarımı, aşağıda gösterildiği gibi Mesaj al'da tespit ederek görebiliriz -

Step 5 - Şimdi yenile tıklandığında, ders tamamlama işareti gösterilir.

Önleyici Mekanizmalar

  • CSRF'den, açığa çıkmaya daha yatkın olan bir URL yerine HTTP isteğinin gövdesinde gönderilecek gizli bir alanda benzersiz bir belirteç oluşturularak önlenebilir.

  • CSRF'yi korumak için kullanıcıyı yeniden kimlik doğrulamaya zorlamak veya kullanıcı olduklarını kanıtlamak. Örneğin, CAPTCHA.