کدخبر :4573 پرینت
19 آبان 1391 - 13:32

آیا سایت شما هدف حملات خودکار هکرهاست؟

متن خبر
هکرها به ابزارهای حملات خودکار تزریق SQL و Remote File Inclusion علاقه ویژه‌ای دارند. با استفاده از نرم‌افزارهایی مانند sqlmap، Havij یا NetSparker، پیدا کردن و سوء استفاده از آسیب‌پذیری‌های وب‌سایت‌ها حتی برای مهاجمان تازه‌کار سریع و آسان است.
به گزارش سیتنا، هکرها به سه دلیل کلیدی به ابزارهای خودکار علاقه دارند. نخست اینکه این ابزارها نیاز به مهارت بسیار کمی برای استفاده دارند و اغلب به‌طور رایگان در دسترس هستند (از طریق فروم‌های هکرها یا سایت‌های تولید کنندگان آنها که این ابزارها را به عنوان ابزارهای معتبر تست نفوذ طراحی کرده‌اند). دومین دلیل این است که این ابزارها هکر را قادر می‌سازند که در زمانی کوتاه و با تلاشی کم به تعداد زیادی سایت حمله کند. و بالاخره اینکه این ابزارها استفاده بهینه را از سرورهای آلوده که ممکن است تنها برای مدت محدودی در اختیار آنها باشند، به عمل می‌آورند.
اما نکته مثبت اینجاست که درصورتی‌که شما بتوانید راهی برای کشف و مسدود کردن حملات خودکار پیدا کنید، خواهید توانست حجم زیادی از حملات هکری را بر روی سایت خود متوقف نمایید. در این مقاله نحوه شناسایی ترافیک خرابکارانه تولید شده توسط این ابزارهای خودکار شرح داده خواهد شد.
نشانه اول: نرخ بالای درخواست ورودی
یکی از نشانه‌های کلیدی یک حمله خودکار، نرخ رسیدن درخواست‌های ورودی است. احتمال اینکه یک انسان بتواند بیش از یک درخواست HTTP در هر 5 ثانیه تولید نماید بسیار پایین است. اما ابزارهای خودکار اغلب حدود 70 درخواست در دقیقه تولید می‌کنند (یعنی بیش از یک درخواست در ثانیه). یک انسان نمی‎‌تواند به‌طور عادی با این سرعت کار کند.
اکنون مسأله ساده به نظر می‌رسد. هر ترافیکی که با نرخی بیش از یک درخواست در 5 ثانیه برسد، باید توسط این ابزارها تولید شده باشد. اما متأسفانه قضیه به این سادگی نیست.
نخست اینکه تمامی ترافیک‌های تولید شده توسط ابزارهای خودکار، خرابکارانه نیستند. حجم قابل توجهی از ترافیک خودکار توسط کسانی مانند گوگل تولید می‌شود که تنها کاری که انجام می‌دهند این است که سایت شما را در فهرست خود قرار داده و اصطلاحا ایندکس می‌نمایند تا دیگران بتوانند به سادگی شما را پیدا کنند. از طرف دیگر تمام ترافیک‌هایی که با نرخ بالا وارد می‌شوند، لزوما توسط ابزارهای خودکار تولید نمی‌شوند. ممکن است به نظر برسد که سرویس‌هایی مانند شبکه‌های تحویل محتوا (content delivery) و پراکسی‌ها، منبع حجم زیادی از ترافیک هستند، اما ممکن است قضیه صرفا تراکم تعداد زیادی کاربر مختلف باشد.
اما نکته مهمتر این است که بسیاری از هکرها آنقدر پیچیده هستند که بدانند که تولید درخواست با نرخ بالا به سادگی قابل تشخیص است و در نتیجه تاکتیک‌هایی را برای جلوگیری از تشخیص این ابزارها به کار می‌برند. این تاکتیک‌ها می‌توانند به شرح زیر باشند:
  • کم کردن عمدی سرعت ابزار برای شبیه کردن الگوی ترافیک آن به ترافیک تولید شده توسط انسان
  • حمله به سایت‌های دیگر به‌طور موازی. این کار عبارت است از استفاده از ابزارهای حمله خودکار برای ارسال ترافیک به چند سایت به صورت گردشی. در نتیجه اگرچه ابزار درخواست‌ها را با نرخ بالایی تولید می‌کند، اما هر سایت ترافیکی با نرخی مشابه ترافیک انسانی دریافت می‌نماید.
  • استفاده از چندین میزبان برای اجرای حملات. این روش پیچیده‌تر، هکرها را قادر می‌سازد که به یک سایت طوری حمله کنند که تمامی ترافیک از یک آدرس آی‌پی واحد و قابل شناسایی ارسال نگردد.
در نتیجه، نرخ بالای ترافیک درخواست‌های ورودی فقط یک نشانه از حمله خودکار است. نشانه‌های دیگری نیز در این مورد وجود دارند.
نشانه دوم: هدرهای HTTP
هدرهای HTTP می‌توانند نشانه ارزشمند دیگری از طبیعت ترافیک ورودی باشند. برای مثال، ابزارهای خودکار تزریق SQL مانند sqlmap، Havij و Netsparker همگی به درستی خود را در هدرهای درخواست‌های HTTP توسط رشته‌های توصیفی عامل کاربر (User Agent) معرفی می‌کنند. این بدان علت است که این ابزارها با این هدف ساخته شده‌اند که برای تست نفوذ معتبر مورد استفاده قرار گیرند. همینطور حملات نشأت گرفته از اسکریپت‌های Perl نیز ممکن است توسط یک عامل کاربر libwww-perl شناسایی گردند.
روشن است که هر ترافیکی که حاوی نام این ابزارها در رشته عامل کاربر (User Agent) باشد باید مسدود گردد. قطعا این رشته‌ها می‌توانند تغییر کنند، ولی هکرهای تازه‌کار اغلب از این موضوع ناآگاه هستند.
حتی اگر ابزارها شامل رشته‌های معرفی کننده نباشند، تحقیقات Imperva نشان داده است که بسیاری از این ابزارها بخش‌هایی از اطلاعات هدرها را که اغلب مرورگرها در درخواست‌های وب انتظار آن را دارند، ارسال نمی‌کنند. این بخش‌ها شامل هدرهایی مانند Accept-Language و Accept-Charset می‌گردد.
البته یک هکر زرنگ می‌تواند سیستم خود را طوری پیکربندی نماید که این هدرها را اضافه کند. ولی بسیاری نیز این کار را انجام نمی‌دهند. عدم وجود این هدرها باید یک نشانه هشدار دهنده به شمار رود و در ترکیب با نرخ بالای درخواست‌ها، نشانه‌ای بسیار قوی از ترافیک خرابکارانه محسوب می‌گردد.
نشانه سوم: ردپای ابزار حمله
ابزارهای حمله گستره محدودی از فعالیت‌های مختلف را می‌توانند انجام دهند. Imperva کشف کرده است که برخی اوقات با تحلیل رکوردهای ترافیکی که توسط حملات خودکار تولید می‌شوند، می‌توان به الگوهایی دست یافت (مانند رشته‌های خاص در دستورات SQL تولید شده در تزریق SQL) که به طور یکتا یک ابزار خاص را معرفی می‌کنند. برخی اوقات این رشته‌ها با بررسی کد منبع یک ابزار قابل کشف هستند.
این ردپاها می‌توانند اساس قوانین مسدود کردن در فایروال را تشکیل دهند، ولی توجه به این نکته مهم است که ممکن است این ردپاها در نسخه‌های بعدی ابزار تغییر نمایند.
نشانه چهارم: جغرافیای غیر معمول
Imperva کشف کرده است که 30 درصد از حملات تزریق SQL با نرخ بالا از چین نشأت گرفته‌اند و سایر حملات از کشورهای غیر معمول نشأت می‌گیرند. توصیه می‌شود که در مورد ترافیک‌های تولید شده از کشورهایی که انتظار آن را ندارید، مشکوک باشید.
یک افزایش ناگهانی در ترافیک تولید شده توسط مناطق جغرافیایی غیر منتظره به تنهایی اثبات کننده هیچ چیز نیست، اما در ترکیب با سایر نشانه‌ها مانند هدرهای HTTP یا نرخ بالای درخواست ورودی، باید مورد توجه قرار گرفته و یا حتی منجر به مسدود کردن کل ترافیک گردد.
نشانه پنجم: لیست‌های سیاه آی‌پی
هر زمان که حمله‌ای توسط متدی تشخیص داده می‌شود، آدرس آی‌پی منبع می‌تواند ثبت گردد. گروه تحقیقاتی Imperva کشف کرده است که حملات خودکار از یک آدرس آی‌پی یکتا معمولا تمایل دارند بین سه تا پنج روز از آن آدرس منتشر گردند. اما برخی آدرس‌های آی‌پی برای هفته‌ها یا حتی ماه‌ها منبع ترافیک خودکار خرابکارانه باقی می‌مانند. این بدان معنی است که آدرس‌های لیست سیاه می‌توانند در جلوگیری از حملات خودکار آتی از آن منبع بسیار سودمند باشند. ارائه دهندگان امنیت ابری می‌توانند با قرار دادن هر سایتی که منبع حملات خودکار بر روی هریک از کلاینت‌ها است در لیست سیاه، سایر کلاینت‌ها را نیز در برابر آن محافظت نمایند.
منبع: مرکز ماهر
نظرات خود را با ما درمیان بگذارید

افزودن دیدگاه جدید

کپچا
CAPTCHA ی تصویری
کاراکترهای نمایش داده شده در تصویر را وارد کنید.