Skip to Content

آرشیو دسته بندی ها:امنیت اطلاعات

حمله DDoS چیست؟

حمله DDoS چیست؟

حمله DDoS چیست؟

حمله DDoS چیست؟

امروزه مقوله امنیت و شاخه های آن در فضای سایبری به امری حیاتی و همه گیر تبدیل شده است، مخصوصا برای صاحبان سایت ها و مهم تر از آن برای مدیران سرورهای وب، چرا که آسیب پذیری و ضعف امنیتی به عنوان عاملی بازدارنده در مسیر پیشرفت و توسعه اهداف در وب محسوب می شود، بعضا شاهد هستیم که افراد مختلف با انگیزه های متفاوت اقدام به هک و ایجاد اختلال در سایت ها و سرورها و در نتیجه باعث از دسترس خارج شدن و در حالت پیشرفته تر از کنترل خارج شدن آنها می شوند، این افراد برای رسیدن به مقاصدشان از شیوه های متفاوتی استفاده می کنند که البته بسته به میزان هوشمندی مدیران سرور و رعایت نکات امنیتی در سیستم های مدیریت محتوا (CMS) خیلی از این روش ها به راحتی قابل پیشگیری است، آنچه در این مطلب قصد داریم به آن بپردازیم آشنا شدن با نوعی از ایجاد اختلال در وب موسوم به حمله های DDoS یا Distributed Denial of Service attack است که بیشترین شیوع را در بین حملات مخرب دارد.

حمله DDoS چیست؟

به زبان ساده حمله DDoS یا DoS (مخفف Denial of Service attack) یعنی سرازیر کردن تقاضاهای زیاد به یک سرور (کامپیوتر قربانی یا هدف) و استفاده بیش از حد از منابع (شامل پردازنده، پایگاه داده، پهنای باند، حافظه و…) به طوری که سرویس دهی عادی آن به کاربرانش دچار اختلال شده یا به کلی از دسترس خارج شود (به دلیل حجم بالای پردازش یا به اصطلاح Overload شدن عملیات های سرور)، در این نوع حمله ها در یک لحظه یا طی بازه زمانی به صورت مداوم از طریق کامپیوترهای مختلف که ممکن است خواسته یا حتی ناخواسته مورد استفاده قرار گرفته باشند، به یک سرور (با آی پی مشخص) درخواست دریافت یا پردازش اطلاعات می شود و به دلیل محدود بودن قدرت پاسخ دهی سرور به کاربران در وضعیت عادی (یعنی قدرت سرور را به تعداد کاربرانش در حالت عادی در نظر گرفته اند نه در شرایط حجم درخواست های غیر طبیعی)، مشابه مواقعی که کامپیوترهای رومیزی دچار کندی یا توقف کامل می شوند دچار وقفه در سرویس دهی یا Down شدن آن می شود.

چه کسانی حمله DDoS را انجام می دهند؟

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

علائم حمله DDoS چیست؟

خوشبختانه یکی از موارد مثبت در هنگام بروز این نوع حملات این است که به سرعت می توان به نحوه عملکرد سرویس مشکوک شد و جلوی اختلال بیشتر را گرفت، پس از اینکه سروری مورد حمله DDoS قرار می گیرد ممکن است با توجه به اهداف و شیوه به کار رفته یک قسمت از منابع یا همه ی قسمت های اصلی آن دچار اختلال شود، در زیر لیستی از این علائم را ذکر می کنیم:

– کندی در پاسخگویی به درخواست ها

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

– عدم اتصال به پایگاه داده

گاهی ممکن است صفحات استاتیک وب که نیازی به اتصال پایگاه داده ندارند به راحتی بارگذاری شوند اما اتصال به پایگاه داده برای صفحات داینامیک برقرار نشود، در چنین مواقعی معمولا پیام تکمیل ظرفیت اتصال به پایگاه داده یا Too Many Connections  ظاهر خواهد شد، بهترین کار در چنین حالتی این است که با تنظیم یک دستور هدر 500 HTTP به ربات های جستجوگر بگوییم که سایت ما فعلا دچار مشکلی است و بعدا مراجعه نمائید!، چرا که در غیر اینصورت با وجود Down بودن دیتابیس سرور، ربات ها با دریافت وضعیت HTTP 200 صفحه خالی را ایندکس می کنند که این حالت قاعدتا مناسب نیست، در PHP این کار را با استفاده از دستورات header می توانیم انجام دهیم:

header('HTTP/1.0 500 Internal Server Error');

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

– مصرف بیش از حد منابع سرور

یکی دیگر از نشانه های حمله DDoS می تواند مصرف بیش از حد و غیر طبیعی منابع سرور از قبیل حافظه یا میزان دیتای رد و بدل شده بین سرور و کلاینت در یک بازه زمانی کوتاه باشد.

– افزایش انفجاری درخواست ها

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

– اختلالات در سرویس های جانبی نظیر ایمیل

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

در حمله DDoS از چه روش هایی استفاده می شود؟

چند روش به عنوان شایع ترین ها در این نوع حملات استفاده می شود که در ادامه به طور مختصر و جهت آشنایی بیشتر به آنها اشاره می کنیم:

– روش Ping Flood یا طوفان درخواست ها

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

– روش Smurf attack یا استفاده از نقص تنظیمات

یک Smurf attack نوع خاصی از طوفان درخواست ها به یک سرور است که طی آن به دلیل وجود ضعف در تنظیمات سرویس، بسته هایی از اطلاعات موسوم به ICMP (مخفف Internet Control Message Protocol) به تمام کامپیوترهای موجود در یک شبکه از طریق آدرس Broadcast آنها ارسال می شود، آدرس Broadcast می تواند به عنوان مثال آی پی اشتراکی سایت های موجود در یک سرور باشد، در این حالت اگر تنظیمات سرور به درستی انجام نشده باشد ارسال یک درخواست به این آی پی موجب تقسیم شدن آن بین تمام زیر شاخه ها و در نتیجه Overload شدن سرور می شود.

– حملات موسوم به SYN یا SYN flood

روش اخیر نیز در عمل مشابه با موارد گفته شده است، با این تفاوت که در اینجا مهاجم با ارسال درخواست هایی از نوع بسته های TCP/SYN در پشت چهره ای عادی و تایید شده به عنوان یک کاربر معمولی، از سرور تقاضای اتصال می کند که پس از ارسال پاسخ درخواست هیچ جوابی به پاسخ سرور داده نمی شود تا اتصال نیمه باز همچنان برقرار باشد (سرور در انتظار پاسخ مهاجم مدتی صبر می کند)، در این بین با افزایش این اتصالات نیمه باز، منابع سرور اشغال شده و نهایتا موجب بروز اختلال و از کار افتادن آن می شود.

– روش Teardrop یا Teardrop attacks

در این شیوه رشته ای از آی پی های ناقص به هم متصل شده و شبیه به هم را به سرور ارسال می کنند که اگر تنظیمات قسمت TCP/IP fragmentation re-assembly سرور دچار نقص در تشخیص آنها باشد، موجب بروز مشکل اضافه بار یا Overload در سرور خواهد شد.
حمله DDoS چیست؟

حمله DDoS چقدر طول می کشد؟

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

برای جلوگیری از حمله DDoS چه کارهایی را انجام دهیم؟

واقعیت این است که کنترل حمله های DDoS پس از وقوع کمی دشوارتر از پیشگیری از آن است، امروزه در سایت ها و انجمن های زیادی به افراد آموزش شیوه های هک و ایجاد حمله های DDoS داده می شود که این امر با افزایش شمار کاربران اینترنت (که می توانند میانجی و قربانی بالقوه برای حمله به سرورها باشند) و توسعه زیرساخت ها و سخت افزارهای شبکه به لحاظ کمی رو به گسترش است، البته آسیب پذیری در این رابطه بیشتر به امنیت سرور برمی گردد تا به امنیت سایتمان، در مورد سرور می توان پس از اطمینان از حمله DDoS، آی پی هایی را که بیشترین تقاضا را به سرور داشته اند و ناشناس هستند توسط فایروال ها بلاک و مسدود کرد، یا با نصب بسته های امنیتی خاص و به روزرسانی و ارتقاء سخت افزاری و نرم افزاری، آسیب پذیری سرور را تا حد چشمگیری کاهش داد، آگاهی از روند عادی سرور می تواند کمک بزرگی در این خصوص محسوب شود، چرا که اگر مدیر سرور نسبت به عادی یا غیر عادی بودن ترافیک آن آشنایی داشته باشد به سرعت می تواند پی به وجود این نوع حمله ها ببرد و در جهت رفع اختلال برآید، به عنوان یک کاربر عادی در سرویس های میزبانی وب بهترین کار این است که به محض مشکوک بودن به چنین حمله هایی موضوع را به پشتیبانی فنی هاست خود اطلاع دهیم تا در کوتاه ترین زمان جلوی آن گرفته شود.

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

 

ادامه مطلب

آشنایی با حملات DOS و DDOS

آشنایی با حملات DOS و DDOS

آشنایی با حملات DOS و DDOS

آشنایی با حملات DOS و DDOS

حملات DOS و DDOS زمانیکه اتفاق می‌افتد ترافیک غیرواقعی بر روی سایت شما افزایش می‌یابد و موجب مصرف بیش از حد منابع سرور می‌شود و بدین شکل باعث از کارافتادن سرور و سایت می‌شود. در این مقاله قصد داریم به آشنایی با حملات DOS و DDOS بپردازیم و همچنین شما را با روش‌های جلوگیری از حملات DOS و DDOS آشنا خواهیم کرد.

تعریف حملات DOS

آشنایی با حملات DOS و DDOS

DOS یا denial-of-service و DDOS یا distributed denial-of-service به حملاتی گفته میشود که نفوذگر با ارسال درخواست های بسیار به یک سرور یا کامپیوتر، باعث استفاده بیش از حد از منابع آن مانند پردازنده سرور، بانک اطلاعاتی، پهنای باند و … میشود به صورتی که سرور مجازی یا اختصاصی میزبان سایت دچار کندی شده که به دلیل حجم بالای پردازش سیستم دچار وقفه و اختلال و یا حتی قطعی کامل و از دسترس خارج شود.

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

آشنایی با حملات DOS و DDOS

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

هدف از هر دو حمله قطع دسترسی کاربران معتبر به سرویس هاستینگ و سرور مورد حمله، می‌باشد.

یکی از نشانه های حملات DDOS افت زیاد سرعت لود سایت و سرور میزبان می‌باشد.

روزانه انجام بیش از ۲۰۰۰ حمله DDOS در سرتاسر جهان توسط شبکه Arbor گزارش شده است.

طبق گزارش های ارائه شده در سطح جهانی، حدود یک سوم حوادثی که باعث از کارافتادگی و داون شدن سرورها میشود مربوط به حملات DDOS میباشد.

روش جلوگیری از حملات DDOS :

آشنایی با حملات DOS و DDOS

– برای جلوگیری از چنین حملاتی ابتدا لازم است از سیستم عامل های آپدیت شده و به روز استفاده شود.

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

– نصب ابزارهای امنیتی و بروزرسانی آنها باعث کاهش آسیب پذیری سرور میشوند.

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

– چنانچه کاربران مشکوک به انجام چنین حملاتی یا حملات مشابه شدند بهترین کار این است که این مورد را به مدیر سرور خود اطلاع دهند..!

ادامه مطلب

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

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

گاهی در مباحث مربوط به هک ایمیل و امنیت سایت با حملات XSS یا Cross Site Scripting مواجه می‌شویم که به دلیل دزدیدن رمز عبور ، ارسال درخواست‌های جعلی و در دست گرفتن مدیریت محتوای HTML خطرساز می‌شوند. در این مقاله به بررسی حملات تزریق کد (XSS) و انواع این حملات و روشهای مقابله با آن خواهیم پرداخت.

Cross Site Scripting یکی از روش های حمله و نفوذ هکرها به وب سایت ها میباشد. در این روش کدهای جاوا اسکریپت به سایت تزریق میشوند و هدف هکر بیشتر کاربرانی هستند که به سایت مراجعه کرده اند. در واقع هکرها در این نوع حمله اطلاعات کاربران یک سایت را بدون اینکه خودشان متوجه شوند، به سرقت میبرند..!

اگرچه مخفف CSS ، Cross Site Scripting میباشد اما با توجه به اینکه CSS به عنوان مخفف Cascading Style Sheets به کار برده میشود، به همین دلیل از XSS برای مخفف Cross Site Scripting استفاده میشود.

روش حمله :

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

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

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

هنگامی که کاربر وارد یک حساب اینترنتی مانند ایمیل، حساب بانکی یا حساب های دیگر میشود اطلاعاتی (کوکی ها) روی کامپیوتر کاربر ذخیره میشود..

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

انواع حملات xss :

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

 

روش های مقابله با XSS :

استفاده از مرورگر اینترنتی مناسب : مرورگرهایی مانند Firefox و Opera امنیت بالاتری نسبت به IE دارند. IE مرورگری است که نقاط ضعف زیادی دارد.

استفاده از ابزارهایی که کدهای Script و Flash را محدود میکنند مانند Noscript

کلیک نکردن روی لینک ها و ایمیل‌های ناشناس : برای جلوگیری از این نوع حمله میتوان ایمیل را روی حالت HTML یا متنی قرار داد تا کدهای مخرب خود به خود اجرا نشوند.

توصیه میشود کاربران گزینه یادآوری نام کاربری و رمز عبور را در مرورگرهای خود غیر فعال کنند و به صورت دوره ای رمز عبور ایمیل های خود را تغییر دهند.

همچنین بهتر است کاربران از یک ایمیل مجزا برای حساب های کاربری مهم خود مانند حساب بانکی و … استفاده کنند و از آن برای ارتباطات روزانه استفاده نکنند.

وب‌سایت‌ها در طی یک دهه گذشته شاهد تغییرات زیادی بوده‌اند. به مرور زمان و با پیشرفت فناوری‌های کامپیوتری، سایت‌ها به آهستگی از انواع HTML ساده و استاتیک، به سمت وب‌سایت‌های بزرگ، داینامیک و پویا تکامل یافته‌اند. این گذر به سوی وب‌سایت‌های دینامیک باعث شد تا اپلیکیشن‌های مخصوص وب‌سایت که به دیتابیس‌ها متکی هستند، همانند CMS‌های وردپرس و جوملا و سایت ساز ها و فروشگاه ساز ها به وجود آیند این تغییر به سوی وب‌سایت‌های دینامیک عرصه را برای بعضی از خطرات جدید باز کرد.

حمله Cross-site scripting یا XSS یک نوع حمله تزریق کد می‌باشد که در سمت کاربر اتفاق می‌افتد و در آن حمله کننده می‌تواند کد و اسکریپت مخرب خود را در قالب یک فعالیت معمولی به وب‌سایت تزریق کند.
با استفاده از XSS ، حمله کننده قربانی خود را به طور مستقیم مورد هدف قرار نمی‌دهد بلکه او از وب‌سایت به عنوان یک وسیله برای حمل و رساندن کد مخرب به مرورگر قربانی استفاده می‌کند.
از حملات XSS به طور عمده در جاوا اسکریپت استفاده می‌شود. زیرا جاوا اسکریپت بیشتر در ساخت و طراحی سایت‌ ها مورد استفاده قرار می‌گیرد و از بخش‌های بنیادی یک وب‌سایت می‌باشد.

برای اینکه حمله گر بتواند کد مخرب جاوا اسکریپت را روی مرورگر قربانی اجرا کند، ابتدا نیاز است تا راهی برای ورود به صفحه وب‌سایت و قرار دادن کد در آن پیدا کند. یک راهکار برای این مورد استفاده از تکنیک‌های مهندسی اجتماعی (social engineering) است. حمله گر از این طریق می‌تواند کاربر را ترغیب به بازدید از صفحه‌ای کند که در آن کدهای مخرب فعال هستند.
برای اجرایی شدن حمله XSS ، صفحات و دیتابیس مرورگر قربانی بایستی مقادیر ورودی توسط بازدید کننده را شامل شود. به عنوان مثال، این کد فرضی، جدیدترین نظر ثبت شده در یک صفحه را نمایش می‌دهد:

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

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

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

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

 

 

مرورگر بازدیدکنندگان در واقع این کد را اجرا خواهد کرد:

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

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

عواقب این گونه حملات توسط جاوا اسکریپت ممکن است بلافاصله نمایان نشود. چرا که مرورگر‌ها کد‌های جاوا اسکریپت را به صورت کنترل شده و محدود اجرا می‌کنند و دسترسی خیلی محدودی به سیستم عامل کاربر و فایل‌های کاربر دارند.
اما از آنجایی که جاوا اسکریپت به موارد زیر دسترسی دارد، باید این موضوع را جدی گرفت:
• کد‌های مخرب جاوا اسکریپت مانند دیگر کد‌ها به element ‌های دیگر وب سایت مانند کوکی (cookie)‌ دسترسی دارد. کوکی‌ها معمولا شامل session token می‌شوند. (session token کلیدی می‌باشد که هویت کاربر را برای سایت مشخص می‌کند). با داشتن session token حمله کننده می‌تواند خود را به عنوان کاربر واقعی سایت جا بزند.
• جاوا اسکریپت می‌تواند به صورت خودسرانه در DOM مرورگر تغییرات ایجاد کند.

آیا حملات XSS مربوط به خود کاربر می‌شود؟

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

حالا کمی در خصوص انواع حملات XSS توضیح می‌دهیم:

۱. حمله انعکاسی یا غیر مداوم ( Reflected or Non-persistent)

یک حمله غیر مداوم XSS مستقیما توسط خود حمله کننده به سمت سایت ارسال نمی‌شود. در واقع در این نوع حمله، حمله کننده از وب‌سایت برای انعکاس کد مخرب به سوی قربانی استفاده می‌کند. یک مثال ساده از این نوع حمله، ساختن یک URL ساده است که کد مخرب را به قربانی منتقل می‌کند:

http://example-website.com/search?search_term=””

حالا کافی است حمله کننده قربانی خود را ترغیب به کلیک کردن روی این لینک و ورود به آن کند. وقتی که کاربر این URL را از سایت درخواست کند، اسکریپتی که حمله کننده نوشته است روی مرورگر قربانی اجرا خواهد شد. چرا که وب‌سایت، ورودی که از طریق فیلد search_term دریافت کرده است را بدون بررسی و اعتبار سنجی دریافت و قبول کرده است.
مثلا با این روش و با اجرا اسکریپت روی مرورگر قربانی، حمله کننده می‌توانند کوکی‌های او را به سرقت برده و اطلاعات آن را به دست آورد.

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

۲. حمله مداوم (Persistent)

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

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

روش اول: Escaping

در این روش اطلاعات ورودی توسط کاربر به نوعی سانسور می‌شوند. مثلا از ثبت بعضی از کارکتر‌های خاص مانند > و < که ممکن است در دستورات کد استفاده شوند جلوگیری می‌شود و باعث می‌شوند که کد‌های مخرب از کار بیفتند.
اگر سایت شما به نوعی است که به کاربران اجازه اضافه کردن کد خود را نمی‌دهد، راه حل خوب می‌تواند escape کردن تمامی متون از جمله HTML, URL و Javascript باشد.
ولی در صورتی که سایت از متون غنی‌(rich text) پشتیبانی می‌کند مانند سایت‌ها فروم و یا ثبت نظر‌ها، اجرای این روش کمی سخت تر می‌شود زیرا باید کاراکتر‌هایی که escape می‌شوند را به دقت انتخاب کنید.

روش دوم:‌ اعتبار سنجی ورودی (Validating Input)

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

جمع بندی

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

ادامه مطلب

حملات DDoS

حملات DDoS

حملات DDoS همواره یکی از نگرانی های ارائه دهندگان سرویس های اینترنتی بوده است. به همین دلیل در این مقاله قصد داریم شما عزیزان را با این گروه از حملات سایبری آشنا کنیم. ولی پیش از شرح مفهوم حملات DDoS، لازم است توضیحاتی در مورد پدر آنها یعنی حملات DoS داده شود.

حملات DDoS

حملات DDoS

حمله DoS چیست؟

اصطلاح DoS مخفف واژه Denial-of-service است. حملات DoS به حملاتی گفته می شوند که در آنها فرد مهاجم تلاش می کند دسترسی کاربران به اطلاعات و یا سرویس های مورد نظرشان را مختل نماید. در این نوع، حمله مهاجم یا مستقیما به رایانه و شبکه قربانیان حمله می کند و یا به شبکه و سرور های ارائه دهندگان سرویس ها حمله می کند. این حملات خرابکارانه با اهداف گوناگونی ممکن است صورت گیرد. بعنوان مثال در بعضی حملات دسترسی کاربران به ایمیل های شخصی شان ناممکن می گردد، در برخی دیگر از باز شدن صفحات یک وب سایت توسط بازدیدکنندگان جلوگیری می شود و در بعضی دیگر امکان لاگین کردن به حساب های بانکی از بین می رود.

حملات DoS به طرق گوناگونی ممکن است انجام پذیرند. در رایج ترین نوع این حمله، فرد مهاجم سیل عظیمی از اطلاعات را به سمت شبکه هدف می فرستد و بصورت لحظه ای، بار زیادی را بر روی سرور یا سرور های هدف وارد می آورد. هنگامی که شما بعنوان یک کاربر معمولی آدرس سایتی را در مرورگر خود وارد می کنید و کلید اینتر را فشار می دهید، درخواستی از کامپیوتر شما به سمت سرور مربوطه، با هدف باز شدن صفحه مورد نظرتان، ارسال می شود. توجه داشته باشید که هر سروری ظرفیتی محدود دارد و در هر لحظه تنها می تواند به تعداد مشخصی از درخواست ها پاسخ دهد. مهاجمان از همین ظرفیت محدود برای انجام اعمال خرابکارانه خود استفاده می کنند و با ارسال درخواست های بسیار زیاد (بیش از ظرفیت پاسخ گویی سرور هدف)، بار سنگینی را بر روی سرور وارد کرده و باعث می شوند سرور نتواند به درخواست های کاربران پاسخ دهد. به این حالت denial-of-service گفته می شود چرا که فرد مهاجم از ارائه سرویس توسط سرور به کاربران جلوگیری کرده است. حملاتی که با این تفکر و هدف انجام می شوند در اصطلاح حملات DoS نامیده می شوند.

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

اکنون که با مفهوم حملات DoS آشنا شدیم به سراغ نوع پیشرفته تر این حملات یعنی حملات DDoS می رویم.

به چه حملاتی DdoS گفته می شود؟

اصطلاح DDoS مخفف Distributed Denial-of-service می باشد که همانطور که از ظاهر آن نیز برداشت می شود، نوع توزیع شده حملات DoS به شمار می رود. در حملات DoS مهاجم حملات خود را از طریق یک ماشین انجام می داد. این مسئله او را با محدودیت هایی مواجه می کند. یکی از این محدودیت ها شناسایی IP مهاجم توسط سرورها و بلاک کردن فرد مهاجم است. محدود بودن توان تخریبی فرد مهاجم هم یکی دیگر از این محدودیت ها بشمار می رود.

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

روش های مقابله با حملات DoS و DDoS

برای مقابله با این حملات راهکار های اندکی وجود دارد که برخی از آنها را در ادامه می آوریم:

1- کنترل پیوسته ترافیک ورودی به سرور

2- افزودن فیلتر هایی به روتر ها، به منظور حذف بسته های دریافتی از منبع های مشکوک

3- استفاده از سرویس های مقابله با حملات DDoS

4- استفاده از فایروال یا دیواره آتش  به منظور محدود کردن ترافیک ورودی

اگر چه استفاده از سرویس های CDN به تنهایی جلوی وقوع این حملات را نمی گیرند، اما آستانه ظرفیت وب سایت و یا سرویس شما را در مواجهه با این حملات افزایش می دهند. با این وجود بکارگیری راهکار های گفته شده در سرویس های CDN برای مقابله با حملات DDoS همچنان یک ضرورت بحساب می آید که ارائه دهندگان سرویس های CDN باید به آن توجه ویژه داشته باشند.

ادامه مطلب