ASP.Net Core Projelerinde Güvenlik- Cross-Site Request Forgery(CRSF) Giriş

Önceki yazımda ASP.Net Core projelerinde HTMLEncoder/JavascriptEncode/UrlEncoder Kavramları hakkında bilgi vermiştim. Bu yazımda ise Cross-Site Request Forgery(CRSF) konusuna giriş yapacağım. Faydalı olması dileğiyle . :)

Cross-Site Request Forgery (CSRF) ‘nin Türkçe karşılığı siteler arası istek hırsızlığı olarak çevirilebilir.

  • Başrolde üç tane aktör vardır.

-Kurbanın bilgisayarı,
-Banka Uygulaması,
-Saldırgan

Peki senaryo nasıldır ?

  • Kurban banka uygulamasına giriş yapar. Giriş yaptığında kullanıcı bilgileri yani kullanıcı adı ve şifresiyle sisteme giriş işlemini gerçekleştirir.
  • Her şeyden habersiz sistemde havale-eft işlemleri yapar . Farklı işlemler geçekleştirir.
  • Bu sırada banka uygulaması kullanıcıyı varolan cookie bilgilerinden tanır.
  • Burada sıklıkla yapılan durumlardan biri, kullanııcıya gönderilen “Cep telefonu kazandınız.”, “Tatil kazandınız.” gibi phishing mailleridir.
  • Bu maillere tıklandığında kurban saldırganın web sitesine yönlendirilir.
  • Bu web siteleri çoğunlukla içerisinde bir tane form elemanı bulundurur.
  • Form etiketinin içerisinde genellikle action olarak kullanıcının girdiği banka uygulamasının URL’i yer alır. Ve method olarak da POST, GET vs belirlenir.
  • Kullanıcının varolan cookie bilgileri ile banka uygulamasının URL’ine istek gönderildiğinde,banka uygulaması eğer gelen isteğin dışarıdan bir istek olduğunu kontrol etmezse, kurbanın hesabından saldırganın hesabına para akışı olabilir. :(

Bir sonraki yazımda Cross-Site Request Forgery(CRSF) uygulamalarından bahsedeceğim. Görüşmek üzere.

https://github.com/KardelRuveyda/ASPNetSecurity kodları Github ‘da oluşturduğum Repository’den inceleyebilisiniz.

Kaynakça

Software Specialist— @Kariyer.NET

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store