با سلام خدمت تمامی همراهان سایت میزفا ، با یکی دیگر از جلسات آموزشی امنیت در ASP.NET MVC در خدمت شما دوستان عزیز هستم در جلسه گذشته با مفهوم امنیت و هک سایت آشنا شدیم در این جلسه آموزشی قصد داریم تا شما را با انواع حملات اینترنتی به سایت ها آشنا نماییم.
سرفصلهای پست
انواع حملات اینترنتی به وبسایت ها
-
حمله (XSS)Cross-Site Scripting
حمله XSS چیست ؟
در این نوع حمله هکر به نرم افزارهای تحت وب از طریق اسکریپت نویسی حمله میکند. و به دنبال فیلد های ورود اطلاعاتی میگردد و در صورت عدم اعتبارسنجی یا Validation فیلدهای ورودی میتواند به آن وبسایت حمله کند. هدف اصلی این نوع حمله بدست آودن اطلاعات از کاربران و کلاینت هایی است که به سرور متصل میشوند. بیشتر اطلاعاتی که از طریق XSS بدست می آید از طریق Cookie هایی است که کلاینت بر روی مرورگر خود بر جای می گذارد. در حملات XSS ، کوکی مرورگر قربانی به سرقت میره.
راه های مقابله با حمله XSS
راه های جلوگیری از این حمله عبارت است از :
1. فیلدهای ورود اطلاعات را با ابزارهای مختلفی (مانند regular expressionها و..) اعتبارسنجی کرده و به کاربران اجازه ندهیم که کد مخرب وارد کنند.
2 . به کاربر اجازه ندهیم که کدهای HTML و JavaScript و … وارد کند.
3. کوکی ها را امن کنیم.
4. همچنین برای جلوگیری از به سرقت رفتن کوکی ها ، وبسایتها میتوانند به طور کل جاوا اسکریپت راغیرفعال کنند.
روش پیشنهادی بنده استفاده از روش اول برای جلوگیری از حمله XSS است. -
حمله SQL Injection
حمله SQL Injection چیست؟
در این نوع حمله هکر با ارسال یک رشته (String) حاوی کد مخرب ، به پایگاه داده نفوذ کرده و اطلاعات حساسی را از آن دریافت می کند. توجه داشته باشید که کد مخرب حاوی یک دستور معتبر SQL است که به صورت طبیعی توسط SQL سرور اجرا می شود.
یکی از فیلدهایی که در وبسایت ها بسیار مورد حملات SQL Injection قرار میگیرد ، فیلد Forgot Password یا فراموشی رمز عبور است. از این فیلد زمانی که کاربر رمز عبور خود را فراموش کرده استفاده میشود و از او خواسته میشود که با وارد کردن ایمیل خود ، رمز عبور را بازیابی کند. فرض کنید که یک هکر در این فیلد یک ایمیل با قالب نادرست را وارد میکند و پاسخی که از پایگاه داده یا سرور دریافت میکند ممکن است حاوی اطلاعاتی باشد که چگونگی اعتبارسنجی درخواست داده شده را بررسی می کند ، در این لحظه هکر فیلد ایمیل را با دستورات SQL ای که بر اساس داده های بدست آمده است پر می کند و برای سرور ارسال می کند ، سرور این دستورات را پردازش کرده و خروجی را اعلام می کند.
این نوع حمله از جمله خطرناکترین نوع حملاتی است که امروزه به سایت ها و نرم افزارهای تحت وب انجام میشود. و برای انجام چنین حملاتی هکر می بایست دارای دانش فنی نسبتا خوبی در خصوص پایگاه های داده و به ویژه زبان SQL داشته باشد .
راه مقابله با حمله با SQL Injection
راه های مقابله با این حمله عبارت است از :
1. فیلترکردن ورودی ها از طریق اعتبارسنجی یا Input Validation در فرم ها ، به گونه ای که به کاربر اجازه ندهیم دستورهای SQL را به عنوان پارامتر ورودی به سایت تزریق کند.
2. همیشه اطلاعات مهم مانند رمزهای عبور را به صورت رمزنگاری شده در پایگاه داده(Database) ذخیره کنیم. -
حمله DDOS
حمله DDOS چیست ؟
حمله DDOS باعث از کارافتادن یا مشغول شدن بیش از اندازه کامپیوتر می شود هکر در این روش با استفاده از آدرس های IP جعلی ، انبوهی از تقاضاها را به سمت سرور (کامپیوتر قربانی یا هدف) سرازیر میکند. در این حالت به علت حجم بالای پردازش یا به اصطلاح overload شدن عملیات های سرور ، سرویس دهی عادی آن به کاربرانش دچار اختلال شده و یا از دسترس خارج می شود .
راه مقابله با حمله DDOS
راه های مقابله با حمله DDOS عبارت است از:
1. Egress filtering : در این روش ، فیلترینگ را بر روی ترافیک خروجی اجرا کرده و تنها به بسته هایی که دارای آدرس مبدا معتبر هستند اجازه خروج از شبکه داده شود.
2. بهینه بودن سیستم : شما هرچه از سرویسدهندههای بهتری برای میزبانی وبسایت خود استفاده کنید کمتر مورد حمله قرار میگیرید. چرا که منابع خوب به آسانی تحت فشار قرار نمیگیرند و هکرهای کمتری را به خود جلب میکنند. پیشنهاد میکنم که از سرویس دهنده های مطمئنی برای میزبانی سایت خود استفاده کنید ، چراکه حملات DDOS میتوانند بر روی پروتکل های مختلف مانند DNS هم انجام شوند که نهایتا باعث از دسترس خارج شدن سایت شما خواهند شد.
3.استفاده از CDN : روش دیگر برای جلوگیری از این حمله رو آوردن به ارائهدهندگان CDN یا کلادفلر است. کلادفلرها علاوه بر اینکه از سرورهای قدرتمندی پشتیبانی میشوند با ایجاد یک واسطه بین سرور شما و کاربر جلوی حملههای بسیار سخت را هم میگیرند.
4. نصب ماژول های امنیتی : در سرور های ویندوزی با نصب ماژولهای امنیتی در سرویس دهنده IIS میتوانیم به صورت کامل جلوی اینگونه حملات را بگیریم .
بسیار خب در این مقاله آموزشی با سه نوع از حملات اینترنتی آشنا شدیم در روزهای آتی این مقاله آموزشی آپدیت میشود و شما را با دیگر از حملات اینترنتی آشنا خواهم کرد امیدوارم از این جلسه آموزشی رضایت کامل را داشته باشید .در صورتی که سوالی پیرامون مقالات آموزشی امنیت در ASP.NET MVC داشتید حتما در قسمت نظرات این مقاله آموزشی مطرح کنید.
2 پاسخ
وبسایت خوبی دارید. امیدوارم به هدفی که در نظر گرفته اید برسید.
ممنونم … لطف دارید … موفق باشید.