دانشنامه طراحی و برنامه نویسی تحت وب

آیا می دانید شما می توانید آموزش ، اسکریپت و یا مقاله مورد نظرتان را از ما کاملا رایگان درخواست کنید ؟
        برای درخواست اینجا کلیک کنید
مقالات کلوب

XSS چیست ؟ (حملات تزریق کد)

سید فرزاد سید عربی نژاد | چهارشنبه, ۱۶ مرداد ۱۳۹۲، ۱۰:۳۷ ق.ظ | ۰ نظر

تزریق کد (انگلیسی:XSS: Cross site scripting) از روش‌های نفوذ و گرفتن دسترسی غیر مجاز از یک وب‌گاه است که توسط یک هکر به کار می‌رود.


تاریخچه : 

تاریخچه حفره‌های امنیتی در معرض حملات XSS به سال ۱۹۹۶ و سالهای اولیه صفحات وب باز می‌گردد. نفوذگران در آن زمان که پروتکل HTTP جا افتاده بود و طراحان وب‌گاه‌ها از زبانهای پردازه‌نویسی مانند جاوا اسکریپت سود می‌بردند، دریافتند وقتی کاربران معمولی وارد سایتی می‌شود می‌توان به کمک کدنویسی در حفره‌های امنیتی وب‌گاه، صفحه دیگری را در همان صفحه بارگذاری کرد سپس با سود بردن از جاوا اسکریپت داده‌های کاربر مانند نام کاربری، گذرواژه و یا کوکی(Cookie)ها را دزدید.

در این هنگام رسانه‌ها این مشکلات را به ضعف امنیتی مرورگرها نسبت داده بودند. شرکت ارتباطی Netscape که جزو اولین تولیدکنندگان مرورگرهای وب و همچنین سازنده زبان جاوا اسکریپت بود سیاست دامنه شخصی را به این زبان افزود که جلوی دسترسی به آدرس‌های خارج از دامنه وب‌گاه را می‌گرفت و تا حدودی این حملات را محدود می‌کرد.


انواع حملات :

سناریوهای مختلفی برای قرار دادن کد مخرب در سایتها به عنوان حمله وجود دارد:

  • طراح سایت، خود کد مخرب را در صفحه قرار داده باشد.
  • حفره سایت ممکن است در سطح سیستم‌عامل یا شبکه ایجاد شده باشد.
  • یک حفره دائمی در یکی از مکان‌های عمومی وب‌گاه قرار گرفته باشد.
  • قربانی بر روی یک لینک حاوی XSS مدل non-persistent یا DOM-based کلیک کند.



به طور کل میشه گفت XSS به تزریق کد های جاوا اسکریپت در کد های یک وب سایت گفته میشه !
کسی که کمی جاوا اسکریپت بلد باشه و بسترش (وب سایت باگ دار) به راحتی میتونه XSS کنه ، 
برای مثال اگه شما کد زیر رو بتونید به سمت قربانی بفرستید و اون رو برگردونید تمام کوکی های صفحه جاری کاربر رو میدزدید ! این به چه کاری میاد ؟  خیلی از وب سایت ها ! اطلاعات اکانت و کد های هش شده رو تویه کوکی های مرورگر نگه میدارن و اگه کسی بتونه اون هارو از شما بگیره میتونه با جایگزینی کوکی های شما ، با اکانت جعلی شما وارد وب سایتی که هستید بشه !

document.cookie
امثال این کد و راه های نفوذ زیادن ! که پیشنهاد میکنیم اگه علاقه به این موضوع دارین در مورد جاوااسکریپت و مقالات XSS که کم هم نیستن مطالعه کنید !

روش‌های خنثی کردن که پیشنهاد میشه :
  • سود بردن از مرورگر مناسب.
  • سود بردن از ابزارهای محدودکننده اجرای کد مانند NoScript (اگه اطلاعات کافی در این خصوص ندارین ، پیشنهاد میشه استفاده نکنید ! )
  • کلیک نکردن بر روی لینک و آدرسهای ناشناس.
  • لاگ گرفتن از کنسول مرورگرتون (بعدا در این مورد توضیح داده میشه)
  • سید فرزاد سید عربی نژاد

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی