میزان پیشرفت خواندن شما
فهرست مطالب

فهرست مطالب

حمله XSS چیست و چگونه از آن جلوگیری کنیم ؟

حمله XSS چیست

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

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

 

حمله XSS چیست ؟

حمله  XSS یا همان Cross site scripting  که مخفف CSS  می باشد اما در Cascading Style Sheets ها مورد استفاده قرار می گیرد به همین دلیل برای مخفف Cross site scripting از XSS  استفاده می کنند. در واقع XSS یکی دیگر از حملات امنیتی از طرف هکرها می باشد که بیشتر در وب اپلیکیشن ها رخ می دهد. همانطور که قبلا هم به این موضوع اشاره کردیم این حمله شباهت های زیادی به حمله SQL Injection دارد که آن را در مقاله SQL Injection چیست به صورت کامل آن را معرفی کردیم.

حمله XSS چیست ؟

در این نوع حمله هکرها با دزدیدن اطلاعات کاربران مانند رمز عبور اقدام به ارسال کردن محتوا های جعلی و در دست گرفتن مدیریت محتوا های  html سایت می کنند که بسیار خطرناک می باشد. در حمله  XSS هکرها با نفوذ به وب سایت ها یک سری کدهای جاوا اسکریپت را به وب سایت ها تزریق می کنند و هدف از این نوع حمله در بیشتر مواقع کاربران وب سایت ها می باشند.

حملات XSS این امکان را به هکرها می دهد که Client side script  ها را به تمامی صفحات وب که برای کاربران هم قابل مشاهده می باشند تزریق کنند. در حمله XSS کاربران خودشان به هیچ عنوان متوجه دزدیده شدن اطلاعاتشان نمی شوند !

 

هدف حمله XSS چیست ؟

در حملات XSS که توسط هکرها انجام می شود هدف اصلی به سرقت بردن اطلاعات کاربران که در سایت می باشند است و با تزریق کدهای جاوا اسکریپت به وب سایت صورت می گیرد که بسیار شبیه به حمله Brute Force  می باشد که می توانید با مراجعه به مقاله حمله Brute Force چیست بیشتر با آن آشنا شوید.

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

 

هدف حمله XSS چیست ؟

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

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

لازم به ذکر است که این حمله فقط برای حساب های بانکی رخ نمی دهد بلکه می تواند برای سایر حساب های کاربری هم اتفاق بیفتد.

 

چرا حمله XSS خطرناک است ؟

حمله های XSS از حملاتی می باشد که بیشترین آسیب را به سایت های وردپرسی می زند و بر خلاف سایر حمله های امنیتی از سوی هکرها برطرف این حمله بسیار مشکل است. حمله های XSS می توانند با یک اشتباه بسیار کوچک در کدهای جاوا اسکریپت و html رخ بدهند که در نهایت وب سایت شما را در برابر حمله های XSS آسیب پذیرتر می کنند که دارای خسارت جبران ناپذیری هم می باشند.

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

 

انواع حمله XSS

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

انواع حملات XSS عبارتند از:

 

حمله XSS به صورت انعکاسی و غیر مداوم

یکی از حمله های XSS  که به صورت انعکاسی(Reflected xss) و غیر مداوم( Non – persistant xss) می باشند در صفحاتی رخ می دهند که اطلاعات کاربران بدون بررسی فرم های html گرفته می شوند و سپس به نمایش در می آیند. به طور کلی این دسته از حمله XSS  توسط هکرها به صورت مستقیم انجام نمی شود بلکه در این حمله هکرها از وب سایت شما برای انعکاس کدهای مخرب به طرف کاربران استفاده می کنند.

اگر بخواهیم با یک مثال ساده حمله انعکاسی و غیر مداوم را برای شما توضیح دهیم به این صورت است که هکر اقدام به ساختن یک آدرس اینترنتی یا URL جعلی که شامل کدهای مخرب است می کند و بعد از ساختن آدرس اینترنتی کافی است کاربران را ترغیب کند که روی آدرس ساخته شده کلیک کنند و وارد آن شوند.

حمله XSS به صورت انعکاسی و غیر مداوم

اتفاقی که بعد از کلیک کردن کاربر بر روی آدرس اینترنتی می افتد این است که تمام کدهای اسکریپت ساخته شده توسط هکر که در URL  قرار گرفته بودند مرورگر کاربر به اجرا در می آیند و آن را مورد حمله قرار می دهند و همه این اتفاقات به این دلیل است که وب سایت مورد نظر ورودی که از فیلد  search – term  را دریافت کرده و هیچ عمل اعتبار سنجی روی آن انجام نداده است.

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

 

حمله XSS به صورت مداوم

یکی دیگر از حملات XSS که به صورت دائمی هم می باشد حمله XSS به صورت مداوم است.در این نوع حمله نیازی نیست که هکرها به صورت دستی به ساختن یک آدرس اینترنتی مخرب بپردازند و آن را برای کاربرانی که قربانی هستند ارسال کنند بلکه به صورت مستقیم کد های جاوا اسکریپت را وارد دیتابیس می کنند و به صورت مداوم تمام افرادی که بازدید کننده وب سایت هستند را مورد هدف قرار می دهند.

به طور کلی در این روش هکرها از فرم های داخل وب سایت برای وارد کردن و تزریق کدهای مخرب جاوا اسکریپت به دیتابیس وب سایت شما اقدام می کنند.

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

 

متد های جلوگیری از حمله XSS چیست ؟

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

 

متد جلوگیری از حمله XSS  با Escaping

در روش Escaping تمامی اطلاعاتی که توسط کاربر وارد می شوند سانسور می شوند و از ثبت کردن بعضی از کاراکترهای خاص مانند < و > توسط کاربران که ممکن است در کد های مخرب استفاده شوند جلوگیری می شود و با استفاده از این روش همه کد های مخرب از کار می افتند.

بهترین راه حل این است که در سایت خود به کاربران اجازه اضافه کردن هیچ کدی را ندهید که این کار با Escape کردن همه متن ها از جمله URL ها، جاوا اسکریپت و HTML  ها امکان پذیر می باشد.

متد جلوگیری از حمله XSS  با Escaping

دقت داشته باشید که اگر سایت شما از متن های غنی شده یا همان  Rich Textها پشتیبانی می کند اجرای روش بالا کمی سخت تر است چون در این روش باید تمام کاراکترهایی که Escape می شوند را  با انتخاب کنید.

 

متد جلوگیری از حمله XSS  با  Validating Input

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

متد جلوگیری از حمله XSS  با  Validating Input

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

 

روش های پیشگیری از حمله XSS چیست

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

راه های پیشگیری از حمله XSS عبارتند از موارد زیر:

 

استفاده از مرورگر های معتبر اینترنتی

لازم است زمانی که قصد ورود به حساب های کاربری خود را دارید از مرورگرهای معتبر و مطمئن استفاده کنید به عنوان مثال مرورگر فایرفاکس و اُپرا نسبت به مرورگر های دیگر امنیت بالایی به IE ها دارند چون مرورگر های IE دارای نقطه ضعف های زیادی هستند.

 

استفاده از ابزار ها

یکی دیگر از مواردی که شما باید در برابر حمله XSS رعایت کنید استفاده از ابزار هایی است که کدهای اسکریپت و فلش را محدود می کنند به عنوان مثال می توان NoScript را یک ابزار مناسب نام برد.

 

اجتناب از کلیک کردن بر روی موارد ناشناس

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

 

غیرفعال کردن مشخصات حساب کاربری

یکی دیگر از نکات مهم در پیشگیری از حمله XSS توسط کاربران این است که بعد از مراجعه به وب سایت های مختلف به هیچ عنوان نام کاربری و رمز عبور خود را در مرورگر ذخیره نکنند.

همچنین توصیه می شود که کاربران از یک ایمیل مجزا برای حساب های کاربری خود استفاده کنند و به صورت دوره ای رمز عبور آن را تغییر بدهند تا کمتر در معرض حمله XSS قرار بگیرند.

 

نصب افزونه های امنیتی

یکی دیگر از راه های پیشگیری از حمله XSS در وب سایت های وردپرسی نصب افزونه های امنیتی می باشدکه افزونه ضد XSS می تواند با مسدود کردن تمامی پارامترهای مورد هدف حمله XSS جلوگیری کند.

همچنین افزونه های امنیتی می توانند فرم نظرات یا دیدگاه کاربران، فرم تماس با ما، فرم صفحه لاگین، نوار های جستجو، فیلد های ورودی کاربر و تمامی بخش های مربوط به سیستم را ایمن کنند.

 

نتیجه گیری

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

یک پاسخ

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *