بخشی از مقاله

چکیده

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

اگرچه تا بحال سیستم های تشخیص نفوذ با رویکرد های متنوعی جهت بهبود امنیت شبکه های محلی ارائه شده اند، اما مشکل عمده این سیستم ها، که معمولا بر اساس شناخت ناهنجاری کار می کنند و یا بر اساس تشخیص امضا، این است که تعداد تشخیص های مثبت غلط/منفی غلط در آن ها زی اد است. این امر مخصوصا به دلیل عدم کارایی مناسب سیستم های تشخیص نفوذ مبتنی بر شناخت ناهنجاری در استخراج ویژگی های مهم در داده ها رخ می دهد.

از این رو، در این مقاله با استفاده از یک رویکرد نوین مبتنی بر تحلیل مولفه اصلی به ارائه یک راهکار مبتنی بر تشخیص ناهنجاری می پردازیم که بتواند نسبت به روش های ادبیات موضوع نرخ تشخیص های غلط کمتری از خود نشان داده و در نتیجه کارایی بالاتری برای حفظ امنیت سیستم از خود نشان دهد. نتایج نشان می دهد که روش پیشنهادی به خوبی توانسته است از تولید نتایج مثبت اشتباه که معمولا در سیستم های تشخیص نفوذ مبتنی بر شناسایی ناهنجاری مشاهده می شود جلوگیری کرده و نسبت به روش های مرسوم تشخیص نفوذ کارایی بالاتری را از خود نشان دهد.

مقدمه

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

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

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

ای ن رویکرد البته با توجه به ویژگی هایی که منحصرا از سیستم تشخیص نفوذ مورد نظر انتظار می رود می تواند متفاوت بوده و یا دارای پیچیدگی های متفاوتی باشد. عمده ترین راهکار برای شاخت سیستم های تشخیص نفوذ ایجاد و تعریف پایگاهی از قوانین است که ویژگی های حملات را برای سیستم بیان کرده و توسط آن می توان با تحلیل رفتار و مطابقت با ویژگی های حملات از پیش ثبت شده به شناسایی حملات و رفتار مشکوک پرداخت. این رویکرد در ادبیات موضوع با عنوان تشخیص امضاء یا تشخیص سوء استفاده شناخته می شود. از ویژگی های منحصر بفرد این راهکار برای تشخیص نفوذ می توان به دقت بالا در تشخیص رفتار عادی و عدم ایجاد مشکل برا ی کاربران عادی اشاره کرد .

[1] اما، مشکل عمده این راهکار عدم توانایی در شناسایی اکثر حملات اشاره کرد که دلیل عمده آن نیز عدم توانایی در تعریف توامی قوانین منجر به حمله در شبکه اشاره کرد. به عبارت دیگر، به دلیل فضای وسیع پارامتریک شبکه های کامپیوتری، تعریف مجموعه قوانینی که تمامی حملات احتمالی را معرفی می کنند امری بسیار دشوار و تقریبا غیر ممکن است. از این رو این سیستم ها معمولا اگر رفتاری با قوانین تعریف شده آن ها مطابقت نداشته باشد هشدار خاصی ایجاد نمی کنند و در نتیجه ی ک کاربر عادی هیچ مشکلی در ادامه کار خود نخواهد داشت .[2]

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

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

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

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

این مقاله در ادامه به صورت ذیل پیکربندی شده است: در بخش 2، تاریخچه تحقیق از طریق مطالعه تطبیقی بر روی راهکارهای موجود بررسی می شود. در بخش 3 راهکار پیشنهادی مورد شرح و بررسی قرار خواهد گرفت. نتایج تجربی حاصل از اعمال راهکار پیشنهادی بر روی دیتاست DARPA99 در بخش 4 مورد تحلیل و مباحثه قرار می گیرد . در انتها، نتیجه گیری از کارهای انجام شده جهت ارائه این مقاله در بخش 5 مورد توجه قرار گرفته است.

تاریخچه تحقیق
 
در [4] رویکردی برای تشخیص دسترسی مجازشماری نشده ارائه گردیده است که مبتنی بر نوعی دستهبندی آماری موجی شکل کار می کند. در راهکار پیشنهادی این تحقیق، در ابتدا اتصالات فعال شبکه در دوره های زمانی خاص ثبت می شوند تا یک فرم موجی شکل را تشکیل دهند. در ادامه، در هر دوره زمانی ویژگی هایی از اتصالات و رفتار آن ها مورد بررسی قرار می گیرد که بیان کننده رفتار کاربران بوده تا بتوان از آن ها جهت تشخیص دسترسی های مجاز شماری نشده استفاده نمود. در [5]، رویکردی با عنوان موتور شناسایی نفوذ فازی FIRE ارائه شده است که پایه آن تشخیص مخرب بودن و یا مغرضانه بودن رفتار کاربران در شبکه توسط استفاده از یک سیستم استنتاج مبتنی بر منطق فازی است. راهکار اصلی تشخیص نفوذ در این تحقیق، استفاده از تکنیک تشخیص ناهنجاری است.

در [6]، آنتروپی اطلاعات به عنوان راهکاری برای ایجاد یک سیستم ممیزی امنیت شبکه که به صورت چند عاملی امنیت شبکه را مانیتور می کند مورد استفاده قرار گرفته است. در [7] ، الگوریتم ژنتیک با عنوان راهکاری جهت بهینه سازی برای ساخت یک سیستم تشخیص نفوذ هوشمند مورد استفاده قرار گرفته است. این تحقیق، تشخیص حملات در شبکه را مانند DoS، از طریق به کارگیری الگوریتم ژنتیک جهت راه اندازی عملیات کشف پیوندی انجام می دهد. در [8]، از شبکه های عصبی TDNN جهت شناسایی حملات در فتارهای موقت کاربران استفاده شده است. در این کار، با استفاده از قاب های زمانی که معرف رفتار موقتی کاربران در شبکه هستند، داده هایی برای شبکه های عصبی TDNN فراهم شده اند که از طریق آن ها TDNN می تواند به تفکیک حمله از غیر حمله بپردازد.

در [9]، رویکردی بر پایه تطبیق سریع الگو ارائه گردیده است تا بتوان از طریق آن به تشخیص رفتار مشکوک در شبکه های محلی پرداخت. این تحقیق البته سرعت را در سیستم های تشخیص نفوذ مورد هدف قرار داده. در [10]، رویکردی مبتنی بر روش k نزدیک ترین همسایه ارائه گردیده است که تشخیص رفتار مشکوک به نفوذ را در برنامه های در حال اجرا از طریق دسته بندی انجام می دهد. در حقیقت، این تحقیق تمرکز خود را بر روی تشخیص حملاتی قرار داده است که از طریق فراخواهی های مکرر برخی روال ها سعی بر ایجاد رخنه در سیستم دارند. بدین ترتیب، دسته بندی پارامترهای رفتاری برنامه با استفاده از رویکرد K نزدیک ترین همسایه می تواند مبنایی برای تشخیص نفوذ های صورت گرفته از طریق فراخوانی های مکرر باشد.

در [11]، شبکه های عصبی و ماشین بردار پشتیبان در یک معماری پیشنهادی برای ایجاد یک سیستم تشخیص نفوذ در شبکه به کار گرفته شده اند. اساس راهکار ارائه شده در این تحقیق بر مبنای تشخیص ناهنجاری در رفتار کاربران پایه گذاری شده است. در این کار، از شبکه های عصبی جهت مدل سازی الگوهای رفتاری عادی، و از ماشین بردار پشتیبان جهت تفکیک رفتار نرمال از مشکوک استفاده می شود. در [12]، رویکردی جهت طراحی سیستم های تشخیص نفوذ یکپارچه ارائه شده است که در چندین نوع شبکه عصبی را برای یکپارچه سازی و بالا بردن دقت تفکیک نفوذ از غیر نوفذ مورد استفاده قرار می دهد.

این تحقیق شبکه های عصبی مولفه اصلی ، شبکه های گاز عصبی رشد یابنده و شبکه های خود سازمان ده مولفه اصلی را برای طراحی یک سیستم تشخیص نفوذ کارا به کار می گیرد. در [13]، از داده کاوی جهت تشخیص نفوذهایی که با عنوان تغییر چهره شناخته می شوند به عنوان راهکار ساخت سیستم تشخیص نفوذ استفاده شده است. در [14]، رویکردی مبتنی بر تشخیص ناهنجاری جهت طراحی سیستم تشخیص نفوذ ارائه شده است که در آن روال تشخیص نفوذ مبتنی بر "زمینه" کار می کند. سیستم تشخیص نفوذ پیشنهادی در این تحقیق به ساخت مدل های نرمال رفتارهای بوسیله توصیف پروفایل رفتاری کاربران می پردازد. در این تحقیق، در واقع مشاهده رفتار غیر عادی از طریق مقایسه پارامترهای رفتاری کاربر با مدل نرمال مبنای تشخیص نفوذ در شبکه است.

در [15] به منظور طراحی یک سیستم تشخیص نفوذ بهبودی در الگوریتم ژنتیک مرسوم انجام گرفته است. در این تحقیق، الگوریتم ژنتیک در حقیقت به منظور کاهش ویژگی هایی مورد استفاده قرار گرفته است که در انجای دسته بندی رفتار بهره وری اطلاعات بیشتری را دارا می باشند. سپس، الگوریتم ژنتیک بهبود یافته برای تعریف قوانین بهینه به صورت خودکار مورد استفاده قرار می گیرند تا بتوان از اطریق این قوانین به شناسایی و تفکیک حملات از رفتار عادی پرداخت.

روش پیشنهادی

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

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

در روش پیشنهادی در این مقاله، ابتدا ویژگی هایی از داده های خام انتخاب می شوند که انتظار می رود تاثیر مستقیم بر روی تشخیص نفوذ دارند. البته روش پیشنهادی در این تحقیق بر مبنای ویژگی های متناظر با tcpdump عمل می کند. از این رو، انتظار می رود که خروجی مرحله استخراج ویژگی داده های tcpdump باشند. یکی از نوآوری های موجود در این تحقیق نگاشت داده ها به ابعاد بزرگ تر از داده های اصلی نرمال است تا بتوان قدرت تفکیک بیشتری را در مدل سازی بر روی داده های مورد نظر در پی داشت.

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

برای این کار با کدسازی از مقادیر Categorical آن ها را به صورت کدهای باینری درآورده و با توجه به طول رشته نگهدارنده آن ها، بعد مورد نظر را به داده ها اضافه می کنیم. در اینجا چون از دیتاستی استفاده می کنیم که 41 ویژگی دارد، افزایش بعد تعداد ویژگی ها را به 118 عدد می رساند. در ادامه، به منظور مدل سازی داده های نرمال و ساخت مدل مرجع از راهکاری با عنوان تحلیل مولف اصلی استفاده می کنیم.

در متن اصلی مقاله به هم ریختگی وجود ندارد. برای مطالعه بیشتر مقاله آن را خریداری کنید