Real Time Web Analytics کانال تلگرام لرن روت

Laravel

آموزش جلوگیری از حمله XSS در لاراول

نویسنده : کامران جعفری
تاریخ انتشار:
22:48:45 1394-07-01
چگونه در لاراول از حمله  Cross Site Scripting یا XSS جلوگیری کنیم؟

حمله Cross Site Scripting یا XSS Attack یکی دیگر از حملات معمول و شناخته شده مهاجمان به وب سایت ها می باشد. با این مقاله لرن روت همراه باشید تا با این نوع حمله و نحوه دفع آن در فریم ورک لاراول آشنا شوید.

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

<script> alert(“Easily Hacked”) </script>


اتفاقی که می افتد این است که پس از ثبت نظر در وب سایت هرکسی که صفحه مورد نظر را باز کند، کد جاوا اسکریپت مهاجم فراخوانی شده، و به تمام بازدیدکنندگان آن صفحه پیغام فوق یعنی "Easily Hacked" نمایش داده خواهد شد.
اکنون سناریوی بدتری را تصور کنید. اگر به جای یک پیغام معمولی، مهاجم یک Prompt Box قرار دهد و از کاربر بخواهد اطلاعات حساسی را وارد کند و کاربر نیز که به سایت مربوطه اعتماد دارد اطلاعات خود را وارد کرده و این اطلاعات برای مهاجم ارسال شود. در این صورت بسیاری از کاربران متحمل زیان هایی خواهند شد.
اکنون که مکانیزم  XSS Attack را دریافتیم، به بررسی نحوه مقابله با آن می پردازیم. خوشبختانه راه مقابله با این حمله بسیار ساده است. تنها کاری که نیاز است انجام شود، اعتبار سنجی اطلاعات ورودی از کاربران و خارج کردن کاراکترهای غیر مجاز از آن عبارت است. در PHP توابعی برای این کار وجود دارد که می توانید مقاله تابع strip_tags در php چه کار می کند، را مطالعه کنید. اما در فریم ورک لاراول تنها کافی است تا شما اطلاعاتی که کاربر وارد کرده است را با {{}} نمایش دهید. با این کار لاراول برای شما عملیات خارج کردن کاراکترهای غیرمجاز را به این صورت انجام خواهد داد که علامت هایی مثل < یا > را ترجمه کرده و در نتیجه کدی اجرا نخواهد شد. برای مثال کد فوق به شکل زیر نمایش داده خواهد شد:

&lt;script&gt;alert(&quotEasily Hacked&quot)&lt;/script&gt;

همچنین می توانید برای آموزش خارج کردن کاراکترهای غیرمجاز در PHP به مقاله تابع htmlspecialchars در PHP چه کار می کند مراجعه کنید.

برچسب ها:
مقالات مشابه
ویدیوهای مشابه




 نوید
       
نحوه ی حمله xss
واقعا این آموزشای اینجوری که میذارید خیلی خوبند امیدوارم بازم از این آموزشا بذارید. :)


بستن