تشریح عملکرد Botnet

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

botnet_blog_title

botnet از دو کلمه تشکیل شده است : Bot و Net

bot مخفف robot است و غالبا به کامپیوتری که توسط یک بدافزار آلوده شده است  اطلاق  می شود. کلمه Net  (شبکه )نیز به گروهی از سیستم ها که به هم متصل شده اند گفته می شود.افرادی که بدافزارها را ایجاد کرده اند می توانند به کامپیوترهای آلوده بصورت مستقیم لاگین کنند، اما به جای این کار از بات نت ها برای مدیریت حجم زیادی از کامپیوترهای آلوده استفاده می کنند و این کار را بصورت خودکار انجام می دهند . یک بات نت شبکه ای از کامپیوتر های آلوده است  و بدافزار مربوطه نیز  از شبکه برای گسترش خود استفاده می کند. دستگاه ها یا سیستم هایی که توسط یک بات آلوده شده اند zombie نیز نامیده می شوند.

زمانی که برنامه بات بر روی دستگاهی نصب شد ، تلاش می کند به وب سایت یا سروری که می تواند دستورالعمل ها و دستورات را از آن دریافت کند متصل شود . این سایت یا سرور به عنوان سرور کنترل-فرمان C&C شناخته می شود. C&C با داشتن فهرستی از ماشین های آلوده آنها را مدیریت کرده و ضمن نظارت وضعیت آنها فرامین عملیاتی را برایشان ارسال می کند.  سرور کنترل کننده بات نت botmaster نیز نامیده می شود که فعالیت های بات نت را با استفاده از کانال های ارتباطی ، کنترل می کند. یک بات نت می تواند برای اجرای حملات سایبری  مانند DDOS ، بر علیه یک هدف یا سرقت اطلاعات حساس استفاده شود. لذا انتشار این بات نت ها یکی از تهدیدات سایبری برای جامعه امنیت محسوب می شوند.

چه کسانی بیستر درگیر بات نت ها هستند ؟

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

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

مهاجمین با دسترسی به سرورهای C&C  فرامین را از طریق اینترنت  (یا شبکه های دیگر) بصورت کاملا مخفی به بات ها می فرستند. بات ها نیز بر اساس این فرامین  وظایف خود را انجام می دهند، وظایفی چون جمع آوری اطلاعات،مانیتور کردن فعالیت های کاربر و  . . . . این فرامین می تواند به یک بات منفرد یا تمامی بات های شبکه  فرستاده شود.

طبقه بندی بات نت ها

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

بات های متمرکز :

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

208193435

بات نت های غیر متمرکز یا نظیر به نظیر :

ساختار آنها به گونه ای که وابسته به یک یا چند سرور C&C نیستند.  در این نوع معماری با شناخت یک بات  نمی توان کل شبکه را از کار انداخت.

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

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

208193436

بات نت های ترکیبی :

مدیریت معماری غیر متمرکز بسیار پیچیده است. به همین دلیل هکر ها استفاده از ساختار های ترکیبی را بیشتر ترجیح می دهند.  لذا از هر دو ساختار متمرکز و غیر متمرکز استفاده می کنند  تا خودشان را در مقابل کشف مقاومتر  کنند.

hybrid-botnet

دسته بندی بات نت ها بر اساس پروتکل ارتباطی

بات نت ها را می توان بر اساس پروتکل شبکه ای که از آن استفاده می کنند  و یا تکنولوژی که بر پایه آن ساخته شده اند دسته بندی کرد :

IRC  :

یکی از طرح های کلاسیک بات نت ها  گرایش آنها  به IRC است  که بر مبنای Internet Relay کار می کنند. هر بات دستوراتی را در کانال IRC از یک بات سرور IRC دریافت می کند. یک بات IRC از مجموعه ای از اسکریپت هایی ساخته شده است که به عنوان یک سرویس گیرنده به سرویس Internet Relay Chat متصل می شود.

بیشتر بات نت های پیشرفته بر مبنای پروتکل های خاص خودشان پیاده سازی می شوند، پروتکل هایی مانند TCP , UDP  وICMP

IM  :

بات نت ها می توانند بر مبنای یک سرویس پیام رسان نیز  فعالیت کنند، در این حالت به آنها بات نت های IM  گفته می شود.  در این حالت دستورات از طریق سرویس های IM مانند AOL,MSN  و ICQ به زامبی ها ارسال می شود.

HTTP  :

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

بات نت های شبکه های اجتماعی :

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

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

اهداف این نوع  بات نت ها می تواند اهداف مختلفی باشد :  حملات DDOS ، ارسال اسپم و ایجاد کانال های مخفی برای تبادل اطلاعات.

در این موارد پیدا کردن  فعالیت های مخرب در میان ترافیک داده ها بسیار مشکل است، زیرا در این روش بات ها تنها در حال چک کردن یک فایل و حتی یک امضای متنی معمول در شبکه های اجتماعی هستند. برخی اوقات از کانال ها و توابع شبکه های اجتماعی مدرن ، سرویس های Cloud و پرتال های تحت وب به عنوان  یک کانال مخفی برای ذخیره داده ها استفاده می شود. نمونه آن اتفاقی بود که در سرویس های Evernote رخ داد. هکر ها یک حساب کاربری برای خود ایجاد کرده  و فایل ها را با دستورات به بات نت منتقل می کردند. روش مشابهی نیز در Twitter برای بات نت Falshback استفاده شد.

بات نت Zeus یک نمونه کلاسیک از این نوع معماری است، و قادر بود که اطلاعات بانکی قربانیان را نیز سرقت کند.

بات نت ها در دستگاه های موبایل

یکی از جالب ترین تحولات در دنیای بات نت ها  ورود آنها به پلتفرم های موبایل بود. مرکز تحقیقاتی Damballa حدود ۴۰۰۰۰ دستگاه آلوده موبایل را شناسایی کرد که از طریق سرورهای C&C با هم ارتباط برقرار می کردند. در این خلال لابراتوآر  McAfee اولین مرکزی بود که حجم بزرگی از انتشار نوع جدیدی از بدافزار Zeus را در پلتفرم موبایل گزارش کرد. امروزه بات نت های موبایل یک تهدید جدی هستند. میلیون ها دستگاه موبایل توسط بات نت ها در چین آلوده شده اند.

چگونه می توان دریافت که کامپیوتری عضو یک بات نت شده است؟

زمانی که یک کامپیوتر عضوی از یک شبکه بات نت می شود، با ابزارهای متنوعی میتوان این مورد را بررسی کرد. مهم ترین آنها استفاده از یک Anti-malware  قدرتمند  است. کامپیوتری که آلوده باشد مرتبا در حال ارسال اسپم یا اجرای کوئری های مختلف است، این رفتار در سیستم هایی که سرعت اینترنت پایینی دارند به راحتی قابل تشخیص است.

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

نتیجه گیری :

روش های مختلفی برای تشخیص بات نت ها معرفی شده اند که  توسط تیم های مختلف پیاده سازی شده اند، از جمله این روش ها BotGAD و Wang و BotOnus و BotHunter و BotSniffer هستند.

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

برای مبارزه عیله تکثیر بات نت ها ، نیاز مند فعالیت هایی هستیم که تمام شرکت ها باید در آن سهیم باشند :

  1. همکاری با آژانس های دولتی و شرکت های امنیتی که در زمینه مبارزه با جرایم سایبری فعالیت می کنند.
  2. آگاهی از تهدیدهای سایبری و آمادگی برای پاک سازی آلودگی ها
  3. پذیرش قوانین و مقرراتی که بصورت جهانی برای مبارزه با انتشار بات نت ها و ایجاد پلتفرم ها برای راه اندازی بات نت ها استفاده می شوند.

منتشر شده در بلاگ ایران هاست توسط: حسن زاده

ایران هاست، ارائه دهنده سرويس های ثبت دامنه، ميزباني وب، میزبانی ایمیل، میزبانی اختصاصی و سرورهای اختصاصی و مجازی مطابق با استانداردهای جهانی

شما ممکن است علاقه داشته باشید:

0 تفکر بر روی “تشریح عملکرد Botnet”

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

شبکه های مجازی ما

دسته بندی ها