CSRF (Cross-Site Request Forgery) نوعی حمله در امنیت وب است که در آن مهاجم کاربر قانونی را فریب میدهد تا یک درخواست ناخواسته به وبسایت مورد اعتمادش ارسال کند. در نتیجه، عملیاتهایی مثل تغییر رمز عبور، انتقال وجه یا ارسال داده بدون اطلاع کاربر انجام میشود.
💡 به زبان ساده: مهاجم کاری میکند که کاربر بهجای خودش، کار دلخواه مهاجم را انجام دهد، بدون اینکه بداند.

وبسایتها برای شناسایی کاربر، از Session یا کوکیها استفاده میکنند. وقتی کاربر به سایت وارد میشود، مرورگر بهطور خودکار کوکیها را همراه با هر درخواست میفرستد.
اگر کاربر در حین فعالیت در سایت امن، روی لینک یا تصویر مخرب سایت دیگری کلیک کند:
مرورگر درخواست را همراه با کوکیها به سایت امن میفرستد
سایت فکر میکند این درخواست از سوی کاربر قانونی آمده و آن را اجرا میکند

فرض کنید کاربر "داریوش" وارد سایت بانکی خود شده و وارد حساب کاربریش است.
همزمان، داریوش به یک وبلاگ ناشناس میرود که شامل فرم مخرب است:
<img src="http://bank.com/transfer?to=evil&amount=1000">
مرورگر داریوش بهطور خودکار کوکیهای سایت bank.com را میفرستد.
سایت بانک درخواست انتقال وجه را از طرف داریوش انجام میدهد، بدون اینکه داریوش بفهمد!
تصور کن یک مغازه اسباببازی آنلاین داری:
داریوش وارد سایت شده و سبد خریدش پر است.
وبسایت دیگری یک دکمه مخفی دارد که وقتی داریوش کلیک میکند، یک اسباببازی از سبد او بدون اطلاع او خریده میشود.
داریوش فکر میکند فقط دارد وبلاگ میخواند، اما در واقع عملیات از طرف او انجام شده است.
فرض کن یک سرویس ایمیل شرکتی داری:
کاربران وارد حساب کاربری شده و Session فعال دارند
مهاجم یک لینک مخرب داخل ایمیل فیشینگ برای کاربر میفرستد
کاربر روی لینک کلیک میکند و یک درخواست ارسال ایمیل جعلی به همه همکاران ارسال میشود
ایمیل از طرف کاربر قانونی ارسال شده، بنابراین سیستم ایمیل هیچ هشداری نمیدهد

Burp Suite: تست و شبیهسازی حملات CSRF
OWASP ZAP: تحلیل درخواستها و آسیبپذیریها
Postman: بررسی رفتار سرور با درخواستهای غیرمجاز
✅ در سمت سرور:
استفاده از توکن CSRF در فرمها
بررسی Referer و Origin header
اعمال روش POST برای عملیات تغییر داده
محدود کردن اعتبار Session و اعمال تایماوت
✅ در سمت کاربر:
وارد نشدن همزمان به سایتها در تبهای متعدد بدون امنیت کافی
اجتناب از کلیک روی لینکها یا باز کردن تصاویر مشکوک
استفاده از مرورگرهای بهروز و افزونههای امنیتی
CSRF حملهای است که باعث میشود کاربر بهطور ناخواسته عملیاتی را انجام دهد
از مثال ساده سبد خرید تا مثال پیشرفته ایمیل شرکتی، این حمله میتواند خطرناک باشد
با توکن CSRF، بررسی هدرها و محدودیت Session میتوان امنیت وبسایتها را تضمین کرد