Shahrestani و دیگران بر رابط کاربری مناسب یک برنامه کشف کننده بات نت تاکید کردند .در این روش علاوه بر مقایسه الگوهای شناخته شده رفتار بات نت ها با ترافیک شبکه برای کشف بات نت ها به صورت خودکار ، مقدار پارامتر های نشان دهنده وجود ترافیک بات نت ها در شبکه هم برای کاربر به صورت بصری[۶۴] نشان داده می شود تا از هوش بشری[۶۵] هم برای همیاری به تشخیص صحیح تر وجود بات نت ها در شبکه استفاده شود . این روش فقط برای نظارت بر شبکه های خیلی کوچک و شبکه های محلی[۶۶] مناسب است . [۹]
Yu و دیگران معتقدند که اکثر روش های موجود برای کشف بات نت ها بسیار کند عمل می کنند یا بر اساس داده های جمع آوری شده در گذشته کار می کنند که باعث می شود تا همیشه یه قدم عقب تر از مهاجم باشند و در بسیاری از مواقع اطلاعاتی که بر پایه آن تصمیم گیری می کنند به دلیل تغییر نحوه عملکرد بات نت بلا استفاده باشد .
در مواردی که نیازمندی بلادرنگ[۶۷] وجود دارد پاسخ در کمترین زمان ممکن به بات نت بسیار حائز اهمیت است . در ساختار پیشنهادی Yu ابتدا اطلاعات خام ترافیک شبکه ای برای کاهش فیلتر[۶۸]
می شود یعنی ترافیک هایی که به نظر سالم هستند جدا می شود این قسمت از چارچوب چند لایه ای آن ها قسمت اصلی محسوب می شوند چون حجم بالای ترافیک شبکه را که باعث جلوگیری از عکس العمل بلادرنگ بسیاری از روش های پیشنهادی می شود تقلیل می دهد ، که البته این کار نقاط ضعفی هم دارد ، مثلا اگر ما برای مرحله اول فیلتر کردن لیست سفیدی از ترافیک های بی خطر تهیه کنیم و ترافیک مربوط به فیسبوک هم جزء آن باشد آن وقت ما بات نت جدید Koobface را که بر پایه فیسبوک کار می کند را در دسته ترافیک های قانونی و بی خطر قرار می دهیم در نتیجه این بات سیستم پیشنهادی Yu را دور میزند . [۱۵]
Gu و همکاران یک روش مبتنی بر خوشه بندی برای تشخیص بات نت ها در مرحله حمله ارائه کرده اند. در این روش، ابتدا ترافیک ارتباطی مشابه و ترافیک بدخواهانه مشابه خوشه بندی شده و سپس یک همبستگی بین خوشه ای انجام می شود تا میزبان های دارای هر دو الگوی فعالیت بدخواهانه مشابه شناسایی شوند. روش فوق به صورت غیر بر خط عمل می کند که در سیستم های تشخیص بات نت یک ضعف عمده به شمار می آید. همچنین در صورتی که بات های عضو یک بات نت در مرحله حمله فعالیت بدخواهانه جدیدی را انجام دهند، این روش قادر به تشخیص آن بات نت نخواهد بود.[۴]
Xiaocongو همکاران روشی پیشنهاد کرده اند که در آن از تحلیل خوشه بندی وفق پذیر نسبت به داده، برای تشخیص بر خط بات نت متمرکز[۶۹] در مرحله فرمان و کنترل استفاده می شود.
در این روش، ابتدا جریان های ترافیک شبکه به دنباله هایی از ویژگی ها تبدیل می شوند. سپس خوشه بندی وفق پذیر نسبت به داده بر روی آن ها اعمال شده تا خوشه ها تنها در صورت تغییر عمده جریان های عضو آن ها به روز رسانی می شوند. در صورتی که جریان ها در یک خوشه از شباهت بالایی نسبت به هم برخوردار باشند و میزبان های تولید کننده آن ها به یک نقطه مرکزی متصل شوند، این میزبان ها آلوده به بات نت تشخیص داده می شوند.
عیب این روش این است که تنها قادر به تشخیص بات نت های متمرکز است و خوشه بندی
ارائه شده فقط ویژگی های عددی را در بر می گیرد. همچنین در این روش مدت زمان نگهداری
جریان ها در هر خوشه به صورت شفاف بیان نشده و چنین به نظر می رسد که فضای ذخیره سازی به صورت نا محدود در نظر گرفته شده است. بنابراین از کارایی زیادی برای تشخیص بر خط بات نت ها برخودار نیست.[۱۳]
فصل سوم
روش پیشنهادی
۳-۱- روش پیشنهادی
همانطور که قبلا شرح دادهشد ، بر خلاف سایر بدافزارها، بات نتها چرخه حیات شفافتری دارند که میتواند به سه مرحله اصلی شکلگیری ، فرمان و کنترل و حمله تقسیم شود . در هر مرحله نوع فعالیت بات نتها متفاوت است . بهترین سیاست برای تشخیص آن ها می تواند زمانی اتخاذ شود که مکانیزمهای هر مرحله به روشنی درک شود . بر اساس تحقیقات صورت گرفته ، بات نتهای نظیر به نظیر ، دارای ویژگیهای مشابهی هستند . با شناسایی این ویژگیها ، میتوان بستهها و رویدادهای مشکوک را به کمک روشهای هوشمند ، شناسایی نمود. بنابراین پیامهای آلوده ممکن است در فواصل زمانی نامنظم ظاهر شوند ، که با روشهای تشابه خوشهای امکان ردیابی آن ها وجود دارد .
سیستم تشخیص خودکار بستههای آلوده و مشکوک ، در یک نگاه کلی از مراحل زیر تشکیل شدهاست:
۱) جمع آوری اطلاعات آماری شبکه.
۲) خوشهبندی بستهها.
۳) شناسایی خوشههای سالم و خوشههای حاوی آلوده.
۴) جمع آوری اطلاعات آماری هاست نامعلوم.
۵) تعیین خوشه مورد نظر.
بدین منظور، از دادههای مانیتورینگ شبکه با اعداد کافی و متنوع بسته ارسالی و دریافتی کار خوشهبندی را آغاز مینماییم. برای خوشه بندی باید چندین مرحله انجام شود:
۱) تجزیه و تحلیل و استخراج ویژگیها از بستههای شبکه.
۲) انتخاب بهترین ویژگیها.
۳) خوشهبندی با روشهای تشخیص Anomaly.
۴) تعیین خوشه برای هاست جاری.
همچنین با آنالیز جریانهای شبکه، هاستهایی که با توجه به مهمترین ویژگیها از جمله میزان بایت ارسالی و دریافتی، تعداد بسته ارسال و … از لحاظ تئوری در گروه باتهای نظیر به نظیر قرار نمیگیرند ، حذف میشوند .
در این فصل ابتدا به بیان معماری روش پیشنهادی پرداخته شده و سپس شبهکد و پارامترهای روش پیشنهادی به طور کامل توضیح داده میشود.
۳-۲- معماری روش پیشنهادی
همانطور که گفتهشد ، هدف این پایاننامه ، ارائه روش خودکار خوشهبندی ، در راستای تشخیص باتنتها میباشد. به همین دلیل ، ابتدا باید دادههای مناسب جمع آوری شوند. بعد از شناسایی مجموعهداده مناسب و واقعی، که حاوی هاستهای سالم و هاستهای آلوده به باتنت نظیر به نظیر هستند ، نوبت به تفسیر بستهها میرسد . در این مرحله باید سرآیندها[۷۰] و پیآیندهای[۷۱] بیهوده و همچنین داده موجود در هر بسته که جهت یادگیری ماشین کارایی ندارند ، کنار گذاشته شده و سپس پروتکلهایی که در فرض مساله ، تعریف نشدهاند ، حدف شوند .
بعد از این مرحله ، ساختار دادهای به ازای هر هاست ، تعریف شده که اطلاعات آماری هر هاست با توجه به کل بستههای تفسیر شده ، در آن قرار میگیرد . با انجام یک فیلتر اولیه ، هاستهای فاقد ارزش حذف میشوند. حال باید ویژگیهای موثر جهت خوشهبندی تعیین شوند. در منابع مختلف روشهایی مبتنی بر تئوری اطلاعات نظیر Information Gain و … استفاده شده که در این کار ، از الگوریتمهاب انتخاب ویژگی[۷۲] استفاده شدهاست.
بعد از این مرحله ، داده مورد نظر جهت خوشهبندی آماده میباشد . این داده فاقد متغیر کلاس میباشد . مهمترین مزایای روش پیشنهادی عبارتند از:
قابلیت تشخیص پویای باتها.
افزایش دقت با بهکارگیری روشهای خوشهبندی جدید.
سرعت بالا و هزینه زمانی پایین و عدم گلوگاه شدن در جریان شبکه.
استفاده از مجموعهداده وسیع و متنوع در راستای افزایش دقت مدل.
سادگی.
توانایی تشخیص باتها مستقل از آدرس IP.
شاید بتوان مهمترین عیوب این روش را به طور خلاصه به صورت زیر بیان نمود:
۱) عدم توازن تعداد هاستهای سالم و هاستهای آلوده. طبیعتا عدم تقارن در دادهها، سبب کاهش کیفیت در برخی از روشهای یادگیری ماشین میشود. در این کار نیز باید این مورد، بررسی گردد.
۲) نیاز به تنظیم پارامتر در روش خوشهبندی: به دلیل استفاده از روش توسعهیافته
K-Means طبیعتا باید تعداد خوشهها تعیین شود. همچنین در الگوریتم تعیین ویژگیها نیز، نیاز به تعیین پارامترهای اجرایی است.
۳) در مرحله تشخیص و بعد از ساخت مدل، باید مقداری از تبادل داده با هاست نامعلوم انجام شده تا اطلاعات آماری تکمیل گردد. سپس از مدل ساخته شده جهت تشخیص استفاده نمود. به بیانی دیگر، امکان تشخیص درجا[۷۳] وجود ندارد.
در ادامه نیز کارایی روش پیشنهادی ارزیابی میشود. در این مقایسه ، شرایط پردازش ثابت نگه داشته میشود . در راستای تحلیل نتایج ، باید کارایی این بخش خوشه بندی و تحلیل شود. در شکل ۳-۱، فلوچارت کلی روش پیشنهادی مشاهده میشود .
شکل۳-۱: چارچوب کلی روش پیشنهادی
با توجه به شکل۳-۱، مراحل روش پیشنهادی به شرح زیر میباشد: