در مقاله «Honeypot چیست؟» به تعریف سیستمهای Honeypot، مزایا و معایب این سیستمها پرداختیم. در این مقاله پس از معرفی انواع Honeypot، به ذكر یك مثال از هر نوع خواهیم پرداخت.
برای درك بهتر Honeypot ها، میتوانیم آنها را به دو گروه با تعامل ( Interaction) كم و با تعامل زیاد تقسیم كنیم. منظور از interaction، میزان فعالیت و تعاملی است كه یك فرد مهاجم اجازه دارد با آن Honeypot انجام دهد. هر چه این میزان فعالیت و تعامل بیشتر باشد، فرد مهاجم كارهای بیشتری میتواند انجام دهد و در نتیجه شما میتوانید راجع به وی و فعالیتش اطلاعات بیشتری بدست آورید. البته با افزایش این فعالیت و تعامل، میزان ریسك نیز افزایش می یابد. Honeypot های با تعامل كم اجازه انجام حجم كمی از تعاملات را صادر میكنند، در حالیكه Honeypot های با تعامل زیاد حجم زیادی از تعاملات را اجازه میدهند.
Honeypot های با تعامل كم
Honeypot های با تعامل كم، با شبیه سازی سیستمها و سرویسها كار میكنند و فعالیتهای مهاجمان نیز صرفا شامل همان چیزهایی میشود كه سرویسهای شبیه سازی شده اجازه میدهند. برای مثال، Honeypot BackOfficer Friendly یك نمونه Honeypot بسیار ساده است كه هفت سرویس مختلف را شبیه سازی میكند. مهاجمان در مورد كارهایی كه با Honeypot مبتنی بر سرویسهای شبیه سازی شده میتوانند انجام دهند بسیار محدود هستند. در بیشترین حالت، مهاجمان میتوانند به این Honeypot ها وصل شده و دستورات اولیه كمی را انجام دهند.
استفاده از Honeypot های با تعامل كم ساده تر است، چرا كه آنها معمولا از پیش با گزینه های مختلفی برای administrator تنظیم شده اند. فقط كافی است شما انتخاب كرده و كلیك كنید و بلافاصله یك Honeypot را با سیستم عامل، سرویسها و رفتار مورد نظر خود در اختیار داشته باشید. از جمله این Honeypot ها میتوان به Specter اشاره كرد كه برای اجرای تحت ویندوز طراحی شده است. این Honeypot میتواند تا 13 سیستم عامل مختلف را شبیه سازی كرده و 14 سرویس مختلف را نظارت نماید. واسطهای كاربری باعث میشوند كه استفاده از این Honeypot ها بسیار ساده باشد، فقط كافی است روی سرویسهایی كه میخواهید تحت نظارت قرار گیرند كلیك كرده و نحوه رفتار Honeypot را تعیین نمایید.
Honeypot های با تعامل كم همچنین از خطر كمتری برخوردارند، چرا كه سرویسهای شبیه سازی شده، كارهایی را كه هكر میتواند انجام دهد محدود میكنند. هیچ سیستم عامل حقیقی برای لود كردن toolkit ها توسط مهاجم وجود ندارد، و هیچ سرویسی كه واقعا بتوان به آن نفوذ كرد نیز موجود نیست.
اما این سرویسها حجم محدودی از اطلاعات را میتوانند جمع آوری نمایند، چرا كه هكرها در كار با آنها محدود هستند. همچنین این سرویسها در مواجهه با رفتارهای شناخته شده و حملات مورد انتظار بهتر كار میكنند. زمانی كه هكرها كاری ناشناخته یا غیر منتظره را انجام میدهند، این Honeypot ها در درك فعالیت هكر، پاسخگویی مناسب، یا ثبت فعالیت با مشكل روبرو میشوند. به عنوان مثالهایی از Honeypot های با تعامل كم میتوان به Honeyd، Specter، و KFSensor اشاره كرد. برای درك بهتر نحوه كار Honeypot های با تعامل كم، نگاه كوتاهی به Honeyd می اندازیم.
مثالی از Honeypot های با تعامل كم: Honeyd
Honeyd یك Honeypot متن باز است كه اولین بار در آوریل 2002 توسط «نیلز پرووس» عرضه شد. Honeyd به عنوان یك راه حل متن باز، رایگان بوده و اجازه دسترسی كامل كاربران به كد منبع خود را فراهم می آورد. این Honeypot كه برای سیستمهای یونیكس طراحی شده است، میتواند در سیستمهای ویندوز نیز مورد استفاده قرار گیرد. البته در این حالت بسیاری از ویژگیهای مورد استفاده در سیستمهای یونیكس را از دست میدهد. Honeyd یك Honeypot با تعامل كم است كه نرم افزار آن را روی یك كامپیوتر نصب میكنید. سپس این نرم افزار صدها سیستم عامل و سرویس مختلف را شبیه سازی میكند. با ویرایش فایل تنظیمات، شما تعیین میكنید كه كدام آدرسهای IP توسط Honeyd كنترل گردند، انواع سیستم عاملهایی كه شبیه سازی میشوند كدامها باشند، و كدام سرویسها شبیه سازی گردند.
برای مثال شما میتوانید به Honeyd بگویید كه هسته یك سیستم Linux 2.4.10 را با یك سرور FTP كه به پورت 21 گوش میدهد شبیه سازی نماید. اگر مهاجمان به این Honeypot مراجعه كنند، بر این باور خواهند بود كه در حال تعامل با یك سیستم لینوكس هستند. اگر مهاجمان به سرویس FTP متصل شوند، تصور خواهند كرد كه با یك سرویس واقعی FTP در تماس هستند. اسكریپت شبیه سازی شده از بسیاری نظرها كاملا شبیه یك سرویس FTP واقعی رفتار كرده و در عین حال، تمامی فعالیتهای فرد مهاجم را ثبت میكند. البته این اسكریپت چیزی بیش از یك برنامه نیست كه منتظر یك ورودی مشخص از مهاجم میماند و خروجی از پیش تعیین شده ای را تولید میكند. اگر فرد مهاجم كاری انجام دهد كه اسكریپت شبیه سازی شده برای آن برنامه ریزی نشده باشد، این اسكریپت صرفا یك پیغام خطا برخواهد گرداند.
Honeyd دارای ویژگیهایی است كه برای Honeypot های با تعامل كم معمول نیست. این Honeypot نه تنها شبیه سازی سیستم عامل را به وسیله تغییر رفتار سرویسها انجام می دهد، بلكه سیستم عاملها را در سطح پشته IP نیز شبیه سازی میكند. اگر یك فرد مهاجم از روشهای فعال fingerprinting مانند ابزارهای امنیتی اسكن Nmap و Xprobe استفاده كند، Honeyd در سطح پشته IP به عنوان هر سیستم عاملی كه بخواهید به شما پاسخ میدهد. به علاوه بر خلاف اغلب Honeypot های با تعامل كم، Honeyd میتواند میلیونها آدرس IP را كنترل نماید. Honeyd این كار را با كنترل كردن آدرسهای IP كامپیوترهایی كه این Honeypot روی آنها نصب شده است انجام نمیدهد، بلكه تمامی آدرسهای IP بلا استفاده روی شبكه شما را كنترل میكند. زمانیكه Honeyd یك تلاش را برای اتصال به یكی از آدرسهای IP بلا استفاده تشخیص میدهد، آن تماس را قطع كرده، به طور پویا خود را به جای آن قربانی جا زده، و سپس با فرد مهاجم به تعامل میپردازد. این قابلیت به طور قابل توجهی شانس تعامل Honeyd با یك مهاجم را بالا میبرد.
Honeypot های با تعامل زیاد
Honeypot های با تعامل زیاد با Honeypot های با تعامل كم تفاوت بسیاری دارند، چرا كه آنها كل سیستم عامل و برنامه ها را به طور حقیقی برای تعامل با مهاجمان فراهم می آورند. Honeypot های با تعامل زیاد چیزی را شبیه سازی نمیكنند، بلكه كامپیوترهایی واقعی هستند كه برنامه هایی واقعی دارند كه آماده نفوذ توسط مهاجمان هستند. مزایای استفاده از این دسته از Honeypot ها بسیار قابل توجه است. آنها برای این طراحی شده اند كه حجم زیادی از اطلاعات را به دست آورند. این Honeypot ها نه تنها میتوانند مهاجمانی را كه به یك سیستم متصل میشوند شناسایی نمایند، بلكه به مهاجمان اجازه میدهند كه به این سرویسها نفوذ كرده و به سیستم عامل دسترسی پیدا كنند. در نتیجه شما قادر خواهید بود rootkit های این مهاجمان را كه به این سیستمها آپلود میشوند به دست آورده، در حالیكه مهاجمان با این سیستم در حال تعامل هستند ضربات كلید آنها را تحلیل نموده، و زمانیكه با سایر مهاجمان در حال ارتباط هستند آنها را كنترل كنید. در نتیجه میتوانید حركات، میزان مهارت، سازمان، و سایر اطلاعات ارزشمند را راجع به این مهاجمان به دست آورید.
همچنین از آنجایی كه Honeypot های با تعامل زیاد شبیه سازی انجام نمیدهند، طوری طراحی شده اند كه رفتارهای جدید، ناشناخته یا غیر منتظره را شناسایی كنند. این دسته از Honeypot ها بارها و بارها ثابت كرده اند كه قابلیت كشف فعالیتهای جدید، از پروتكلهای IP غیر استاندارد مورد استفاده برای كانالهای دستورات پنهانی گرفته تا تونل زدن IPv6 در محیط IPv4 برای پنهان كردن ارتباطات را دارا هستند. البته برای به دست آوردن این قابلیتها باید بهای آن را نیز پرداخت. اولا Honeypot های با تعامل زیاد ریسك بالایی دارند. از آنجایی كه مهاجمان با سیستم عاملهای واقعی روبرو میشوند، این Honeypot ها میتوانند برای حمله كردن و ضربه زدن به سایر سیستمهایی كه Honeypot نیستند مورد استفاده قرار گیرند. ثانیا Honeypot های با تعامل زیاد پیچیده هستند. این بار به همین سادگی نیست كه یك نرم افزار نصب كنید و پس از آن یك Honeypot داشته باشید. بلكه شما باید سیستمهای واقعی را برای تعامل با مهاجمان ساخته و تنظیم نمایید. همچنین با تلاش برای كم كردن خطر مهاجمانی كه از Honeypot شما استفاده میكنند، این پیچیدگی بیشتر نیز خواهد شد.
دو مثال از Honeypot های با تعامل زیاد عبارتند از Symantec Decoy Server و Honeynet ها. برای ارائه دید بهتری از Honeypot های با تعامل زیاد، در ادامه به توضیح Decoy Server خواهیم پرداخت.
مثالی از Honeypot های با تعامل زیاد: Symantec Decoy Server
Decoy Server یك Honeypot تجاری است كه توسط Symantec تولید شده و به فروش میرسد. این سیستم به عنوان یك Honeypot كه با تعامل زیاد است، سیستم عاملها و یا سرویسها را شبیه سازی نمیكند، بلكه سیستمهای حقیقی و برنامه های حقیقی را برای برقراری تعامل با مهاجمان ایجاد میكند. در حال حاضر Decoy Server صرفا روی سیستم عامل Solaris كار میكند. این برنامه ، نرم افزاری است كه روی یك سیستم Solaris نصب میشود. سپس این نرم افزار سیستم میزبان موجود را در اختیار گرفته و تا چهار «قفس» یكتا ایجاد میكند، كه هر قفس یك Honeypot است. هر قفس یك سیستم عامل جدا و سیستم فایل مخصوص به خود را داراست. مهاجمان درست مانند سیستم عاملهای واقعی با این قفسها ارتباط برقرار میكنند. چیزی كه مهاجمان درك نمیكنند این است كه هر فعالیت و هر ضربه صفحه كلید آنها توسط Honeypot ثبت و ضبط میشود.
Honeypot های با تعامل كم در مقایسه با Honeypot های با تعامل زیاد
-
در هنگام انتخاب Honeypot توجه داشته باشید كه هیچ یك از این دو نوع از دیگری بهتر نیستند. بلكه هر یك دارای مزایا و معایبی بوده و برای كاری بهتر میباشند.
مزایا و معایب Honeypot های با تعامل كم و Honeypot های با تعامل زیاد را میتوان به شرح زیر بیان كرد: Honeypot های با تعامل كم (شبیه سازی كننده سیستم عاملها و سرویسها) -
پیاده سازی و به كار گیری آسان: معمولا به سادگی نصب یك نرم افزار روی یك كامپیوتر است
-
ریسك كم: سرویسهای شبیه سازی شده كارهایی كه مهاجمان میتوانند یا نمیتوانند انجام دهند را كنترل میكنند.
-
جمع آوری اطلاعات محدود: از آنجاییكه در این دسته از Honeypot ها مهاجمان مجاز به تعامل در حد محدودی هستند، اطلاعات محدودی نیز میتوان راجع به آنها بدست آورد.
Honeypot های با تعامل زیاد (بدون شبیه سازی، با استفاده از سیستم عاملها و سرویسهای حقیقی) -
نصب و به كار گیری آنها میتواند سخت باشد (نسخه های تجاری ساده ترند)
-
ریسك بالا. این موضوع كه مهاجمان با سیستم عاملهای واقعی روبرو میشوند كه میتوانند با آن به تعامل بپردازند مزایا و معایب خاص خود را داراست.
سازمانهای مختلف، اهداف متفاوتی دارند و به همین دلیل از Honeypot های مختلفی نیز استفاده میكنند. یك روال معمول این است كه سازمانهای تجاری مانند بانكها، خرده فروشان، و تولید كننده ها، Honeypot های با تعامل كم را به علت ریسك پایین، به كار گیری آسان، و نگهداری ساده، ترجیح میدهند. استفاده از Honeypot های با تعامل زیاد نیز در میان سازمانهایی كه به قابلیتهای منحصر به فرد راه حلهای با تعامل زیاد و مدیریت ریسك احتیاج دارند معمول تر است. از جمله این سازمانها میتوان به سازمانهای نظامی، دولتی، و آموزشی اشاره كرد.