بخشی از مقاله
چکیده
کرم اینترنتی بدافزاري است که قادر به انتشار و تکثیر خود از طریق شبکههاي کامپیوتري و بدون دخالت عامل انسانی است. نتایج بررسی هاي اخیر نشان می دهد که برخی از کرم هاي اینترنتی در مراحل مختلف چرخه حیات خود به ویژه در مرحله پویش میزبان هاي قربانی هوشمندتر شده اند. در این مقاله، روشی براي تشخیص کرم هاي اینترنتی استتاري پیشنهاد می شود. این کرم هاي هوشمند میزبان هاي شبکه را به صورت کنترل شده پویش میکنند تا از افزایش نمایی نرخ پویش جلوگیري شود. روش پیشنهادي شامل دو مرحله آموزش و تشخیص است. در مرحله آموزش، ابتدا مجموعه اي از رکوردهاي پویش غیرکرمی به عنوان ورودي دریافت می شود.
سپس براي هر میزبان پویشگر در این مجموعه دادگان یک بردار شامل پنج ویژگی تعداد میزبان هاي پویشی متفاوت، نسبت تعداد میزبان هاي پویشی متفاوت به تعداد کل پویش ها، طول مدت پویش، تعداد بازه هاي پویش و تنوع درگاه هاي مقصد استخراج می شود. این بردارهاي ویژگی به عنوان ورودي به طبقه بند تک کلاسی OCSVM داده شده و مدلی براي ترافیک پویش غیرکرمی ایجاد می شود.
در مرحله تشخیص، در هر پنجره زمانی رکوردهاي پویش از حسگرهاي مختلف یک سیستم ناظر تهدیدات اینترنت دریافت شده و با توجه به مدل ایجاد شده در مرحله آموزش کرم استتاري تشخیص داده می شود. روش پیشنهادي با استفاده از مجموعه دادگان DShield و شش نوع ترافیک پویش کرم استتاري مورد ارزیابی قرار میگیرد. این مجموعه دادگان در ماه مارس سال 2013 میلادي توسط سیستم ناظر تهدیدات اینترنت SANS ISC جمعآوري شده و به طور متوسط شامل نزدیک به 20 میلیون رکورد پویش در هر روز است. نتایج آزمایش ها نشان می دهند که روش پیشنهادي در مقایسه با روش هاي قبلی مصالحه بهتري میان نرخ تشخیص و نرخ هشدار نادرست برقرار میکند.
-1 مقدمه
کرم هاي اینترنتی برنامههاي مخرب خودانتشاري هستند که از آسیبپذیري-هاي میزبان هاي شبکه سوء استفاده می کنند. اولین کرم اینترنتی معروف با عنوان Morris در سال 1998 میلادي مشاهده شد .[1] در سال 2001 میلادي، کرم هاي CodeRed و Nimda هزاران میزبان را آلوده کردند ومیلیون ها دلار به شبکه هاي کامپیوتري خسارت وارد کردند
در سال 2003 میلادي، کرم [5] Slammer کشف شد. این کرم در عرض 10 دقیقه، 90 درصد از میزبان هاي آسیب پذیر را آلوده کرد. بین سال هاي 2004 تا 2008 میلادي کرم معروفی مشاهده نشد، تا این که در سال 2008 میلادي کرم Conficker به سرعت در اینترنت منتشر شد و میزبانهاي زیادي را آلوده کرد. کرم IKEE در سال 2009 میلادي جهشی در روند کرم ها ایجاد کرد و تلفن هاي هوشمند iPhone را مورد حمله قرار داد. در سال 2010 میلادي کرم Stuxnet کشف شد که یکی از بدافزارهاي نسل جدید براي حمله به سیستم هاي کنترل صنعتی محسوب می شود
کرم هاي اینترنتی براي یافتن میزبان هاي هدف، آدرس هاي IP را با روش هاي مختلفی از قبیل تصادفی و ترتیبی پویش میکنند .
اکثر کرم هاي اینترنتی سنتی میزبان هاي شبکه را با حداکثر سرعت ممکن پویش می کنند که این عمل سبب تشخیص سریع آنها می شود. اما نوع جدیدي از کرم هاي اینترنتی به نام کرم هاي استتاري میزبان هاي شبکه را به صورت کنترل شده پویش میکنند به گونه اي که از افزایش نمایی نرخ پویش و عبور آن از آستانه تشخیص سیستم هاي ناظر تهدیدات اینترنت جلوگیري میشود. بنابراین، در طی زمان هیچ گونه افزایش قابل توجهی در تعداد میزبان هاي پویشی مشاهده نمی شود. براي مثال، کرم Atak براي کنترل نرخ پویش در برخی مواقع براي مدتی غیرفعال میشد
در این مقاله، روشی جدید براي تشخیص کرم هاي استتاري پیشنهاد می شود. در روش پیشنهادي، ابتدا با استفاده از یک مجموعه دادگان از رکوردهاي پویش غیرکرمی و طبقه بند تک کلاسی OCSVM مدلی براي ترافیک پویش غیرکرمی ایجاد می شود. سپس در هر پنجره زمانی رکوردهاي پویش از حسگرهاي مختلف یک سیستم ناظر تهدیدات اینترنت دریافت شده و با توجه به مدل ایجاد شده کرم استتاري تشخیص داده میشود.
در ادامه، در بخش 2 کارهاي مرتبط مرور شده و در بخش هاي 3 و 4 به ترتیب سیستم هاي ناظر تهدیدات اینترنت و طبقه بند تک کلاسی OCSVM معرفی می شوند. در بخش 5 روش پیشنهادي شرح داده شده و در بخش 6 مورد ارزیابی قرار میگیرد. در نهایت، در بخش 7 نتیجهگیري به عمل میآید.
-2 کار هاي مرتبط
روشهاي تشخیص کرمهاي اینترنتی بر اساس منبع اطلاعات دریافتی به دو دسته مبتنی بر میزبان و مبتنی بر شبکه تقسیم می شوند .[10] در روش هاي تشخیص مبتنی بر میزبان - از قبیل [11] DACODA و Taint Check - [12] از اطلاعات میزبانهاي شبکه و در روش هاي تشخیص مبتنی بر شبکه از اطلاعات مربوط به بسته هاي رد و بدل شده در شبکه در فرآیند تشخیص استفاده می شود.
روشهاي تشخیص مبتنی بر شبکه خود به دو دسته مبتنی بر محتوا و مبتنی بر رفتار تقسیم می شوند. در روش هاي تشخیص مبتنی بر محتوا - از قبیل - [13] AutoGraph بدنه بسته ها با هدف تشخیص کرم بررسی می شوند، بنابراین این روش ها قادر به تشخیص کرمها با ترافیک رمزگذاري شده نمیباشند. در روشهاي تشخیص مبتنی بر رفتار به جاي بدنه بسته ها به رفتار میزبان ها در شبکه توجه میشود، بنابراین این روشها در مقابل کرمها با ترافیک رمزگذاري شده مقاوم هستند.
در برخی از روش هاي تشخیص مبتنی بر رفتار - از قبیل [14] DSC، [15] TRW، [16] MRW و - [17] PGD از کل ترافیک شبکه در فرآیند تشخیص استفاده میشود. بنابراین این روشها براي شبکههاي مقیاس بزرگ مناسب نمی باشند. در روش DSC براي هر درگاه آستانه متفاوتی نگه داري می شود. در صورتی که یک میزبان در شبکه تحت نظارت روي درگاه خاصی بسته اي را دریافت کرده و در دوره هاي زمانی بعدي بستههایی را روي همان درگاه ارسال کند، شمارنده درگاه افزایش یافته و در صورت عبور از آستانه درگاه یک پیام هشدار تولید میشود. در روش PGD براي هر پروتکل یک گراف ساخته می شود که گره هاي آن میزبان ها و یالهاي آن اتصالات میان میزبان ها را نمایش می دهند. در ترافیک عادي، تعداد گرهها و همچنین تعداد گره ها در بزرگترین مؤلفه گراف از توزیع نرمال پیروي میکنند، اما در ترافیک کرم این توزیع متفاوت است.
در برخی دیگر از روش هاي تشخیص مبتنی بر رفتار - از قبیل CISH [18]، [19] CVDH،[9] DFT و - [20] DEDH تنها از ترافیک پویش شبکه در فرآیند تشخیص استفاده می شود. این روش ها براي تشخیص حمله هاي کرمی در شبکه هاي مقیاس بزرگ از قبیل اینترنت مناسب تر هستند، اما به دلیل عدم وجود ترافیک عادي فرآیند تشخیص با پیچیدگی زیادي همراه است.
براي مثال، سیستم هاي ناظر تهدیدات اینترنت - از قبیل [21] SANS ISC و - [22] CAIDA ترافیک پویش روزانه اینترنت را جمع آوري کرده و تجزیه و تحلیل می کنند. DFT روشی مبتنی بر طیف است که در حوزه فرکانس کار می کند. تابع پویش در حوزه زمان با استفاده از تبدیل فوریه به حوزه فرکانس انتقال داده شده و پس از به دست آوردن تابع چگالی طیفی مقدار صافی طیفی محاسبه میشود که در نهایت با استفاده از نمودار SFM حمله کرمی تشخیص داده میشود. DEDH روشی آماري است که از آنتروپی توزیع میزبان هاي قربانی و یک آستانه پویا براي تشخیص کرم ها با نرخ پویش متغیر استفاده میکند.
-3 سیستم هاي ناظر تهدیدات اینترنت
امروزه براي تشخیص و دفاع در مقابل کرم هاي اینترنتی و حمله هاي جلوگیري از سرویس توزیعی، پایش تهدیدات اینترنت در ابعاد بزرگ انجام می شود. هر سیستم ناظر تهدیدات اینترنت - ITM1 - شامل یک مرکز تشخیص و هزاران حسگر ناظر در مکان هاي جغرافیایی مختلف است. این حسگرها در سراسر فضاي آدرس اینترنت پخش می شوند و در میزبان ها، مسیریاب ها و یا دیوارههاي آتش قرار میگیرند. به عنوان مثال، SANS ISC که یکی از سیستم هاي ناظر تهدیدات اینترنت موفق است، بیش از 500هزار حسگر در بیش از 60 کشور جهان دارد
هر حسگر آدرس هاي IP مشخصی را پایش کرده و رکوردهاي ثبت شده از ترافیک پویش را در دوره هاي زمانی مشخص به مرکز تشخیص ارسال می کند. هر رکورد پویش شامل اطلاعاتی درباره یک پویش غیرعادي از قبیل پویش یک درگاه محدود شده یا پویش یک آدرس IP غیرقابل دسترس است. مرکز تشخیص رکوردهاي پویش دریافتی از حسگرهاي مختلف را تحلیل کرده و گزارش هاي مختلفی براي مقابله با تهدیدات منتشر میکند.
-4 ماشین بردار پشتیبان تک کلاسی - OCSVM -
روش هاي طبقه بندي را می توان به دو گروه تک کلاسی و دو کلاسی تقسیم کرد. در روش هاي طبقه بندي دو کلاسی فرض می شود نمونه هاي آموزشی به دو کلاس متفاوت تعلق دارند. بنابراین هدف این روشها یافتن یک مرز تصمیم است که نمونه هاي یک کلاس را از نمونه هاي کلاس دیگر جدا کند.
اما در روش هاي طبقه بندي تک کلاسی فرض می شود که همه نمونههاي آموزشی به تنها یک کلاس به نام کلاس هدف تعلق دارند. در این مقاله، براي تشخیص کرم هاي اینترنتی استتاري در ترافیک پویش اینترنت از ماشین بردار پشتیبان تک کلاسی - OCSVM - استفاده می شود.
در این طبقه بند، ابتدا فضاي ورودي با استفاده از یک تابع هسته مناسب به فضاي ویژگی با تعداد ابعاد بالاتر نگاشت میشود. سپس مبدأ به عنوان تنها عضو کلاس دوم در نظر گرفته شده و با حل یک مساله برنامهریزي درجه دوم ابرصفحهاي پیدا میشود که نمونههاي آموزشی نگاشت شده را با بیشترین حاشیه از مبدأ جدا کند و در عین حال خطاي آموزشی حداقل مقدار ممکن باشد:
که Φ تابعی است که نمونه هاي آموزشی در فضاي ورودي را به حداکثر رساندن فاصله از مبدأ و ∈ - 0,1 - ویژگی نگاشت میکند و پارامتري است که بین فضاي قرارگرفتن اکثر نمونه هاي آموزشی در ناحیه ایجاد شده توسط ابرصفحه مصالحه برقرار میکند. حاشیه یا فاصله ابرصفحه از مبدأ را نمایش می دهد.
در روش پیشنهادي، از طبقه بند تک کلاسی OCSVM با تابع هسته RBF استفاده میشود. این تابع هسته به صورت زیر تعریف میشود:
-5 روش پیشنهادي
در این بخش، روش پیشنهادي براي تشخیص کرم هاي اینترنتی استتاري شرح داده می شود. روش پیشنهادي شامل دو مرحله آموزش و تشخیص است.
در مرحله آموزش، ابتدا مجموعه اي از رکوردهاي پویش غیرکرمی از یک سیستم ناظر تهدیدات اینترنت به عنوان ورودي دریافت می شود. هر رکورد پویش شامل فیلدهایی از قبیل مهر زمانی، آدرس مبدا، درگاه مبدا، آدرس مقصد، درگاه مقصد و غیره است. سپس براي هر میزبان پویشگر در این مجموعه دادگان یک بردار ویژگی استخراج میشود. این بردارهاي ویژگی به عنوان ورودي به طبقه بند تک کلاسی OCSVM داده شده و یک مدل براي ترافیک پویش غیرکرمی ایجاد می شود. براي تعیین آستانه هشداردهی براي درگاه از یک مجموعه دادگان متفاوت از رکوردهاي پویش غیرکرمی استفاده می شود. در مرحله تشخیص، ابتدا در هر پنجره زمانی رکوردهاي پویش از حسگرهاي مختلف یک سیستم ناظر تهدیدات اینترنت دریافت شده و براي میزبان هاي پویشگر مجموعه اي از بردارهاي ویژگی استخراج می شود.
سپس با توجه به این بردارهاي ویژگی و مدل ایجاد شده در مرحله آموزش میزبان هاي مشکوك شناسایی می شوند. در نهایت، این میزبان ها مبتنی بر درگاه پویشی آنها گروه بندي می شوند. در صورتی که تعداد میزبان هاي مشکوك در یک گروه با درگاه از آستانه بیشتر باشد، وقوع کرم اینترنتی گزارش شده و همه میزبان ها در این گروه به عنوان میزبان هاي آلوده به کرم شناسایی میشوند.
در شکل - 1 - عملکرد کلی روش پیشنهادي نمایش داده شده است. در این شکل، مرحله آموزش با رنگ بنفش و مرحله تشخیص با رنگ نارنجی مشخص شده است.
-1-5 ویژگیهاي رفتاري کرمهاي اینترنتی استتاري
در روش پیشنهادي براي تشخیص کرم هاي اینترنتی استتاري و شناسایی میزبان هاي آلوده به این کرم ها از پنج ویژگی متفاوت استفاده می شود. در ادامه، هر کدام از این ویژگیها شرح داده میشوند:
شکل : - 1 - مراحل آموزش و تشخیص در روش پیشنهادي
-1-1-5 تعداد میزبانهاي پویشی متفاوت
هر کرم اینترنتی فعال - استتاري و غیراستتاري - با سوءاستفاده از آسیبپذیري- هاي موجود در یک یا چند برنامه تحت شبکه منتشر می شود. از طرف دیگر، هر برنامه تحت شبکه روي یک درگاه مشخص به درخواست هاي مختلف پاسخ می دهد - براي مثال، سرویس دهندگان وب روي درگاه 80 درخواست هاي HTTP را دریافت می کنند - . بنابراین، هر میزبان آلوده به کرم با پویش یک یا چند درگاه مشخص میزبان هاي آسیب پذیر را شناسایی کرده و آنها را آلوده می کند. با توجه به این که یکی از اهداف هر کرم اینترنتی افزایش نرخ آلودگی است، بنابراین هر میزبان آلوده سعی می کند تا میزبان هاي متفاوت بیشتري را پویش کند که باعث افزایش تنوع در میزبانهاي پویشی میشود
-2-1-5 نسبت تعداد میزبانهاي پویشی متفاوت به تعداد کل
پویشها
فرض کنید نرخ پویش براي دو میزبان پویشگر متفاوت به ترتیب پنج و صد پویش در واحد زمان و تعداد میزبان هاي پویشی متفاوت براي این دو میزبان به ترتیب پنج و ده باشد. با وجود این که مقدار ویژگی »تعداد میزبان هاي پویشی متفاوت« براي دومین میزبان بیشتر از اولین میزبان است، اما رفتار اولین میزبان به رفتار یک میزبان آلوده به کرم شباهت بیشتري دارد. براي حل این مشکل و توصیف بهتر میزبانهاي آلوده از ویژگی »نسبت تعداد میزبانهاي پویشی متفاوت به تعداد کل پویشها« استفاده میشود.
-3-1-5 طول مدت پویش
در کرم هاي استتاري میزبان هاي هدف با نرخ پایین پویش می شوند.