Kötü Amaçlı Yazılım & Saldırılar

CSRF (İstek Sahteciliği)

👤 Güvenlik Uzmanı1/35 dk
İnteraktif sahne yükleniyor…
🎯 Neden önemli?

İnternet bankacılığınız açıkken tıkladığınız zararsız görünen bir link, siz hiçbir şey yazmadan hesabınızdan para gönderebilir; CSRF tam olarak budur.

Giriş

Merhaba, ben Güvenlik Uzmanı. Bu kartta CSRF (Cross-Site Request Forgery / İstek Sahteciliği) saldırısını öğreniyoruz: oturumu açık bir kullanıcının tarayıcısını kullanarak, kullanıcının iradesi dışında bir işlemi güvenilen siteye yaptırma tekniği.

Anlatım

NEDİR? CSRF (Cross-Site Request Forgery, Türkçe: Siteler Arası İstek Sahteciliği), oturumu açık olan bir kullanıcının kimliği doğrulanmış tarayıcısını kötüye kullanarak, kullanıcının istemediği bir işlemi (para transferi, e-posta/şifre değiştirme, ayar güncelleme) güvenilen web uygulamasına yaptıran bir saldırı türüdür. Saldırgan kullanıcının oturum bilgisini (cookie/token) ASLA çalmaz; mevcut açık oturumu kullanıcının arkasından kullanır. Bu yüzden "vekaleten işlem yaptırma" olarak da düşünülebilir. NASIL ÇALIŞIR? 1) Kurban, hedef siteye (ör. banka) giriş yapar ve oturum cookie'si tarayıcısında saklanır. 2) Kurban, aynı tarayıcıda saldırganın hazırladığı zararlı bir sayfayı/e-postayı açar. 3) Bu sayfa, hedef siteye otomatik bir istek tetikler (gizli bir form auto-submit, bir <img> etiketi, veya fetch/XHR). 4) Tarayıcı, tarayıcının varsayılan davranışı gereği hedef sitenin cookie'sini bu isteğe OTOMATİK ekler. 5) Sunucu isteği geçerli bir oturumdan geliyor sanır ve işlemi gerçekleştirir — çünkü isteğin kullanıcının niyetiyle mi yoksa sahte bir sayfayla mı tetiklendiğini ayırt edemez. NEDEN ÖNEMLİ / İŞ YERİNDE CSRF, kimlik doğrulama mekanizmasını atlatmaz; doğrulanmış bir oturumun GÜVENİNİ istismar eder. Bu yüzden "giriş yaptım, güvendeyim" yanılgısı tehlikelidir. Para transferi, yönetici hesabı oluşturma, e-posta adresi/şifre değiştirme gibi durum değiştiren (state-changing) işlemler en kritik hedeflerdir. OWASP geçmişte CSRF'i ilk 10 web zafiyeti arasında listelemiştir; bugün modern çerçeveler korumayı yerleşik sunsa da yanlış yapılandırma hâlâ yaygın bir risktir. DİKKAT / İYİ UYGULAMA • Anti-CSRF token: Her form/oturum için sunucunun ürettiği, tahmin edilemez ve tek kullanımlık gizli bir değer kullanın (Synchronizer Token Pattern). Sahte site bu token'ı bilemez. • SameSite cookie: Oturum cookie'lerini SameSite=Lax veya Strict ile işaretleyin; tarayıcı çapraz-site isteklerde cookie'yi göndermez/sınırlar. • Durum değiştiren işlemler için GET kullanmayın; POST/PUT/DELETE tercih edin (GET salt-okunur olmalı). • Kritik işlemlerde yeniden kimlik doğrulama (şifre tekrar isteme) veya MFA onayı ekleyin. • Origin/Referer başlığı doğrulaması ek bir savunma katmanı sağlar.

📌 Senaryolar
📌 Örnek 1: Bankacılık para transferi sahteciliği. Kullanıcı bankaya giriş yapmış (oturum cookie'si aktif) ve aynı anda saldırganın hazırladığı bir sayfayı açıyor. Açıklama: Sayfada gizli bir form vardır: <form action='https://banka.com/transfer' method='POST'> alıcı=saldirgan, tutar=5000 </form> ve JavaScript ile otomatik gönderilir. Tarayıcı banka cookie'sini otomatik eklediği için sunucu işlemi geçerli sayar ve para saldırgana gider. Kullanıcı hiçbir buton tıklamamış olsa bile işlem gerçekleşir.
📌 Örnek 2: E-posta/şifre değiştirme ile hesap ele geçirme. Bir forumda oturumu açık kullanıcı, başka bir sekmede zararlı bir reklamı/sayfayı görüntülüyor. Açıklama: Zararlı sayfa, hedef sitenin 'e-postamı değiştir' uç noktasına arka planda bir POST isteği gönderir ve e-postayı saldırganın adresiyle değiştirir. Ardından saldırgan 'şifremi unuttum' akışını kullanarak hesabı tamamen ele geçirir. Anti-CSRF token olmadığından sunucu sahte isteği ayırt edemez.
📌 Örnek 3: <img> etiketiyle GET tabanlı CSRF. Bir uygulama, ayar değişikliğini GET ile yapıyorsa (ör. /ayar?bildirim=kapat). Açıklama: Saldırgan bir e-postaya veya yoruma <img src='https://site.com/ayar?bildirim=kapat'> ekler. Kurban e-postayı/sayfayı açar açmaz tarayıcı resmi yüklemeye çalışır, isteğe oturum cookie'si eklenir ve ayar kullanıcının haberi olmadan değişir. Bu örnek, durum değiştiren işlemlerin neden ASLA GET ile yapılmaması gerektiğini gösterir.
Özet

• CSRF = oturumu açık kullanıcıya, tarayıcısı üzerinden istem dışı işlem yaptırma. • Cookie çalınmaz; tarayıcının cookie'yi otomatik eklemesi istismar edilir. • En çok durum değiştiren işlemleri (transfer, şifre/e-posta değiştirme) hedefler. • Savunma: anti-CSRF token + SameSite cookie + durum değiştirmede POST + kritik işlemde yeniden doğrulama.

✅ Mini-Test (3)
1.CSRF saldırısında saldırgan temel olarak neyi istismar eder?
2.Aşağıdakilerden hangisi CSRF'e karşı doğrudan bir savunma DEĞİLDİR?
3.Durum değiştiren (para transferi, şifre değiştirme gibi) işlemleri GET isteğiyle yapmak CSRF riskini azaltır.
← Tüm sözlük terimleri · Farkındalık eğitimi