آلودگی کامپیوتر برای خیلی از افراد به کابوسی بی نهایت تبدیل خواهد شد چرا که اطلاعاتی اساسی و پایه مهمی در سیستم خود ذخیره نموده اند. به همین دلیل راه مقابله و مصون نگهداشتن کامپیوتر از آلودگی شناخت حملات سایبری است. یکی از این حملات که معمولا برای هدفگیری چندین کامپیوتر مورد استفاده قرار میگیرد، botnet است. اما به راستی بات نت یا botnet چیست ؟
botnet چیست؟
یک بات نت شبکه ای از کامپیوتر های آلوده به یک بدافزار است. افرادی که بدافزارها را ایجاد کرده اند می توانند به جای اینکه به یک کامپیوتر آلوده بصورت مستقیم متصل شوند، از بات نت ها برای مدیریت حجم زیادی از کامپیوترهای آلوده استفاده کنند و این کار را بصورت خودکار انجام می دهند. یک botnet می تواند برای اجرای حملات سایبری مانند DDOS ، بر علیه یک هدف یا سرقت اطلاعات حساس استفاده شود. لذا انتشار این بات نت ها یکی از تهدیدات و حملات سایبری برای جامعه امنیت محسوب می شوند.
botnet از دو کلمه Bot و Net تشکیل شده است. bot مخفف robot است و غالبا به کامپیوتری که توسط یک بدافزار آلوده شده است ، اطلاق می شود. کلمه Net (شبکه ) نیز به گروهی از سیستم ها که به هم متصل شده اند گفته می شود.
یک باتنت شبکه ای از کامپیوتر های آلوده است و بدافزار مربوطه نیز از شبکه برای گسترش خود استفاده می کند. دستگاه ها یا سیستم هایی که توسط یک بات آلوده شده اند zombie بات نت نیز نامیده می شوند.
c&c چیست و چه ارتباطی با Botnet دارد؟
در پاسخ به پرسش c&c چیست بایستی گفت زمانی که برنامه بات بر روی دستگاهی نصب شد، تلاش می کند به وب سایت یا سروری که می تواند دستورالعمل ها و دستورات را از آن دریافت کند متصل شود. این سایت یا سرور به عنوان سرور کنترل-فرمان c&c server شناخته می شود.
c&c server با داشتن فهرستی از ماشین های آلوده آنها را مدیریت کرده و ضمن نظارت وضعیت آنها فرامین عملیاتی را برایشان ارسال می کند. سرور کنترل کننده باتنت ، botmaster نیز نامیده می شود که فعالیت های باتنت را با استفاده از کانال های ارتباطی، کنترل می کند.
مهاجمین با دسترسی به سرورهای C&C فرامین را از طریق اینترنت (یا شبکه های دیگر) بصورت کاملا مخفی به بات ها می فرستند. بات ها نیز بر اساس این فرامین وظایف خود را انجام می دهند، وظایفی چون جمع آوری اطلاعات، مانیتور کردن فعالیت های کاربر و . . . . این فرامین می تواند به یک بات منفرد یا تمامی بات های شبکه فرستاده شود.
یک بات نت می تواند برای اجرای حملات سایبری مانند حملات DDOS، بر علیه یک هدف یا سرقت اطلاعات حساس استفاده شود. لذا انتشار این بات نت ها یکی از تهدیدات سایبری برای جامعه امنیت محسوب می شوند.
چه کسانی بیشتر درگیر بات نت ها هستند ؟
تا به اینجا با مفهوم botnet آشنا شده اید. اما اینکه چه کسانی درگیر بات نت ها می شوند نیز مسئله ای است که باید آنرا در نظر بگیرید زیرا احتمال اینکه شما هم جزو این افراد باشید هست. مرز بین دستگاه های کاربران خانگی و کاربران بسیار کمرنگ است. لذا بات نت ها تهدیدی برای همه هستند.
شبکه های تجاری، امنیت بیشتر و مانیتورینگ دقیقتری دارند و مسلما کشف و حذف حملات بات نت ها در این نوع شبکه ها راحت تر است. اما در مقابل اطلاعات ارزشمند و حساس تری نیز در آنها وجود دارد که ممکن است مورد سرقت قرار بگیرند.
مهمترین botnet چیست و سرنوشت آن چه شد؟
مهم ترین بات نت که توجه همه را به خود جلب کرد و یقینا یکی از بزرگترین های تاریخ است، Conficker است که میلیون ها میزبان را به سرعت آلوده کرده بود. این اتفاق توسط مراکز تحقیقاتی کشف شده و سریعا عملیات مقابله با آن آغاز گردید. در نتیجه این botnet هیچوقت توسط خالقین آن مورد استفاده قرار نگرفت.
انواع بات نت ها
تلاش برای دسته بندی مفهموم بات نت آسان نیست. اهداف مختلفی برای این معماری ها ایجاد شده است. باتنت ها را بر اساس نوع ساختاری که پیاده سازی می کنند و همچنین نوع تکنولوژی مورد استفاده آنها و کانال های ارتباطی که برای اتصال به یکدیگر استفاده می کنند می توان از هم متمایز کرد.
۱- بات های متمرکز
برخی از شبکه ها بر پایه یک یا دو C&C هستند و هر بات مستقیما با سرور فرمان و کنترل در تماس است. مرتب سازی و مدیریت این نوع معماری ها ساده است اما بسیار آسیب پذیرند و با خاموش شدن C&C کل شبکه بات نت از کار می افتد. در حقیقت سرور C&C نقطه آسیب پذیری آن است و عملکرد کل بات نت وابسته به قابلیت بات ها در رسیدن به سرور های کنترل است. در روش های تشخیص اصولی، ترافیک بین بات ها و C&C مورد تحلیل قرار می گیرد، و با بهبود انعطاف پذیری باتنت هایی طراحی می شوند که قابلیت غیر متمرکز داشته باشند .
۲- بات نت های غیر متمرکز یا نظیر به نظیر
ساختار آنها به گونه ای که وابسته به یک یا چند سرور C&C نیستند. در این نوع معماری با شناخت یک بات نمی توان کل شبکه را از کار انداخت.
در بات نت غیر متمرکز که بات نت های نظیر به نظیر (P2P) نیز نامیده می شوند، بات ها لزوما به سرورهای C&C متصل نیستند ، بلکه با ایجاد یک ساختار توری شکل دستورات از یک زامبی به زامبی دیگر فرستاده می شود. هر گره (node) از شبکه یک لیست از آدرس های بات های مجاور را دارد و با استفاده از آن می تواند به بات های دیگر متصل شده و دستورات را تبادل کند. هر نقطه از این نوع بات نت می تواند همانند یک سرور CC عمل کند، ضمن اینکه بات ها قابلیت دانلود دستورات، فایلهای پیکربندی و فایلهای اجرایی را از بات های دیگر دارند. در چنین ساختاری هر بات می تواند دستورات را به دیگران ارسال کند ، و مهاجم نیز برای اینکه بتواند کل باتنت را کنترل کند حداقل باید به یک کامپیوتر دسترسی داشته باشد.
این نوع از بات نت یک نگرانی جدی است، چرا که به دلیل عدم وجود نقطه آسیب پذیر مقابله با آن بسیار مشکل است. علی رغم این مطلب که از بین بردن بات نت غیر متمرکز بسیار مشکل است.
۳- بات نت های ترکیبی
مدیریت معماری غیر متمرکز بسیار پیچیده است. به همین دلیل هکر ها استفاده از ساختار های ترکیبی را بیشتر ترجیح می دهند. لذا از هر دو ساختار متمرکز و غیر متمرکز استفاده می کنند تا خودشان را در مقابل کشف مقاومتر کنند.
دسته بندی بات نت ها بر اساس پروتکل ارتباطی
بات نت ها را می توان بر اساس پروتکل شبکه ای که از آن استفاده می کنند و یا تکنولوژی که بر پایه آن ساخته شده اند نیز دسته بندی کرد
۱- irc
یکی از طرح های کلاسیک بات نت ها گرایش آنها به IRC است که بر مبنای Internet Relay کار می کنند. هر بات دستوراتی را در کانال IRC از یک بات سرور IRC دریافت می کند. یک بات IRC از مجموعه ای از اسکریپت هایی ساخته شده است که به عنوان یک سرویس گیرنده به سرویس Internet Relay Chat متصل می شود.
بیشتر botnet های پیشرفته بر مبنای پروتکل های خاص خودشان پیاده سازی می شوند، پروتکل هایی مانند TCP , UDP وICMP
۲- IM
بات نت ها می توانند بر مبنای یک سرویس پیام رسان نیز فعالیت کنند، در این حالت به آنها بات نت های IM گفته می شود. در این حالت دستورات از طریق سرویس های IM مانند AOL,MSN و ICQ به زامبی ها ارسال می شود.
۳- HTTP
بات نت های web based را نیز نمی توان نادیده گرفت، مجموعه ای از ماشین های آلوده از طریق www کنترل می شوند. بات های HTTP به یک وب سرور خاص متصل می شوند، دستورات را دریافت می کنند و داده ها را بر می گردانند. پیاده سازی و مدیریت این نوع معماری بسیار آسان است.
۴- بات نت های شبکه های اجتماعی
نوع خاص دیگری از بات نت ها وجود دارد که باتنت های شبکه های اجتماعی نامیده می شوند. در معماری آنها از پلتفرم شبکه های اجتماعی محبوب برای ارسال پیام به زامبی ها استفاده می شود. بررسی این نوع معماری نیز به دلیل حجم بسیار بالای فعالیت های شبکه های اجتماعی بسیار مشکل است. این نوع از بات نت ها با انتشار کیت های exploit قادرند از راه دور با سیستم ها ارتباط برقرار کنند و آنها را کنترل نمایند. معمولا مجرمین سایبری از طریق ایمیل یا پیام هایی در شبکه های اجتماعی، لینک های بدافزار را به قربانیان می فرستند و از طریق یک وب سایت آلوده که کیت های exploit بر روی آن میزبانی می شود ، کاربر را درگیر حملات Hijack می کند. سیستم قربانی آلوده شده و یک یا چند بدافزار بر روی سیستم وی دانلود می گردد.
طبق گزارشاتی که تا کنون ارایه شده بات نت ها برای اتصال به C&C بیشتر تمایل دارند از پروتکل های عمومی و اپلیکیشن های محبوب استفاده کنند و به همان صورت سرورهای C&C را در شبکه های اجتماعی و حساب کاربری افراد قرار دهند.
هدف از حملات botnet چیست؟
اهداف این نوع بات نت ها می تواند اهداف مختلفی باشد :
- حملات DDOS
- ارسال اسپم
- ایجاد کانال های مخفی برای تبادل اطلاعات
در این موارد پیدا کردن فعالیت های مخرب در میان ترافیک داده ها بسیار مشکل است، زیرا در این روش بات ها تنها در حال چک کردن یک فایل و حتی یک امضای متنی معمول در شبکه های اجتماعی هستند. برخی اوقات از کانال ها و توابع شبکه های اجتماعی مدرن ، سرویس های Cloud و پرتال های تحت وب به عنوان یک کانال مخفی برای ذخیره داده ها استفاده می شود. نمونه آن اتفاقی بود که در سرویس های Evernote رخ داد. هکر ها یک حساب کاربری برای خود ایجاد کرده و فایل ها را با دستورات به بات نت منتقل می کردند. روش مشابهی نیز در Twitter برای بات نت Falshback استفاده شد.
بات نت ها در دستگاه های موبایل
یکی از جالب ترین تحولات در دنیای بات نت ها ورود آنها به پلتفرم های موبایل بود. مرکز تحقیقاتی Damballa حدود ۴۰۰۰۰ دستگاه آلوده موبایل را شناسایی کرد که از طریق سرورهای C&C با هم ارتباط برقرار می کردند. در این خلال لابراتوآر McAfee اولین مرکزی بود که حجم بزرگی از انتشار نوع جدیدی از بدافزار Zeus را در پلتفرم موبایل گزارش کرد. امروزه بات نت های موبایل یک تهدید جدی هستند. میلیون ها دستگاه موبایل توسط بات نت ها در چین آلوده شده اند.
چگونه می توان دریافت که کامپیوتری عضو یک بات نت شده است؟
زمانی که یک کامپیوتر عضوی از یک شبکه بات نت می شود، با ابزارهای متنوعی میتوان این مورد را بررسی کرد. مهم ترین آنها استفاده از یک Anti-malware قدرتمند است. کامپیوتری که آلوده باشد مرتبا در حال ارسال اسپم یا اجرای کوئری های مختلف است، این رفتار در سیستم هایی که سرعت اینترنت پایینی دارند به راحتی قابل تشخیص است.
با استفاده از ابزارهایی که عملکرد منابع سیستم و میزان RAM وCPU را مورد ارزیابی قرار می دهند می توان پروسه های در حال اجرا را مورد بررسی قرار داد. موارد آلوده مشکوک را می توان در ترافیک شبکه ،در حافظه RAM کامپیوترهای آلوده و یا در هارد آنها مشاهده کرد. اما موثرترین روش برای مقابله با بات نت ها اطلاع از نوع و ساختار آنها و دریافت اطلاعات کافی از این نوع تهدیدات است.
روش تشخیص بات نت و مبارزه با آنها
روش های مختلفی برای تشخیص بات نت ها معرفی شده اند که توسط تیم های مختلف پیاده سازی شده اند، از جمله این روش ها BotGAD و Wang و BotOnus و BotHunter و BotSniffer هستند.
مواردی که مطرح شد انتشار سریع بات نت ها را توصیف کرده است و اینکه به دلیل وجود ابزارهای مختلف به راحتی می توان چنین بات نت هایی را پیاده سازی کرد.
برای مبارزه عیله تکثیر بات نت ها ، نیاز مند فعالیت هایی هستیم که تمام شرکت ها باید در آن سهیم باشند :
- همکاری با آژانس های دولتی و شرکت های امنیتی که در زمینه مبارزه با جرایم سایبری فعالیت می کنند.
- آگاهی از تهدیدهای سایبری و آمادگی برای پاک سازی آلودگی ها
- پذیرش قوانین و مقرراتی که بصورت جهانی برای مبارزه با انتشار بات نت ها و ایجاد پلتفرم ها برای راه اندازی بات نت ها استفاده می شوند.