امنیت موضوعی داغ است که اخیرا نیز به آن توجه بسیاری شده است. سالها پیش ویروسها تنها نگرانی ادمینها بودند. ویروسها بهحدی مرسوم بودند که موجب پدیدآمدن تعداد زیادی از ابزارهای مقابله با آنها شدند. امروزه، کمتر کسی از آنتیویروسها روی سیستم خود بهره نبرد؛ اما خطر نوپدیدی که کاربران را بیشازپیش تهدید میکند و کمتر مدنظر کاربران قرار میگیرد، «نفوذ رایانهای» است. نفوذ رایانهای بهمعنای دسترسی غیرمجاز کاربران مشکوک به دادههای سیستم است. شبکهها به هدف هکرهای بیماری تبدیلشده که از هیچ تلاشی برای دسترسی به اطلاعاتتان دریغ نمیکنند. بهترین دفاع درمقابل چنین تهدیداتی استفاده از سیستمهای تشخیص و پیشگیری از نفوذ است.
در این مقاله، ابتدا دربارهی روشهای تشخیص نفوذ توضیحاتی میدهیم. به تعداد روشهای ممکن برای نفوذ به سیستم، روش برای تشخیص و مقابله با نفوذ وجود دارد. پس از معرفی روشها، آنها را به دو گروه اصلی سیستمهای تشخیص نفوذ و تفاوت آنها اشاره و در انتها نیز، ۱۰ ابزار برتر و رایگان برای پیشگیری و تشخیص نفوذ را معرفی میکنیم.
روشهای تشخیص نفوذ
بهطور کلی دو روش متفاوت برای شناسایی نفوذها وجود دارد: ۱. مبتنی بر اثر (Signature-Based)؛ ۲. مبتنی بر آنومالی. روش تشخیص مبتنی بر اثر، دادهها را تحلیل میکند و بهدنبال الگوهای خاص مرتبط با نفوذ میگردد. این روش تقریبا مانند روش قدیمی آنتیویروسها در تشخیص ویروسها است که مبتنی بر تغییرات ایجادشدهی ویروس است. مشکل اصلی این روش کارایی آن در زمان حضور الگوها است. این موضوع بدین معناست که حداقل چندین حمله باید اتفاق افتاده باشد و اثرها شناختهشده باشند.
در سوی دیگر، روش مبتنی بر آنومالی عملکرد بهتری دربرابر «حملات روز صفر» (Zero-Day Attack) دارد. در این روش، نفوذ قبل از اینکه بتواند تأثیرش را ایجاد کند، شناساییشدنی است. این روش بهجای جستوجوی الگوهای شناختهشدهی نفوذ، بهدنبال آنومالیها (آنومالی: تفاوتها با حالت عادی) میگردد. برای مثال، این سیستمها تلاشهای مکرر برای دسترسی به سیستم با ورود گذرواژهی اشتباه را شناسایی میکنند که نشانهی معمولی از حملات جستوجوی فراگیر (Brute Force Attack) است. احتمالا دریافتهاید که هرکدام از این روشها مزایا و معایب خود را دارند؛ بههمیندلیل، ابزارهای برتر این زمینه از ترکیبی از هر دو روش بهره میبرد تا برترین امنیت را ارائه دهند.
انواع سیستمهای تشخیص نفوذ
همانند روشهای تشخیص نفوذ، دو نوع اصلی از سیستمهای تشخیص نفوذ وجود دارد. تفاوت اصلی این سیستمها به مکان تشخیص نفوذ برمیگردد؛ در سطح «میزبان» یا «شبکه». این دو سیستم مزایا و معایب خود را دارند و بهترین سناریو استفاده از هر دو روش است.
۱. سیستمهای تشخیص نفوذ در سطح میزبان (HIDS)
این نوع از سیستمهای تشخیص نفوذ در سطح میزبان عمل میکند. این سیستمها فایلهای ثبت رویداد (log) برای یافتن هرگونه ردی از فعالیت مشکوک و تغییرات بدون اجازهی فایلهای تنظیمی مهم را بررسی میکنند. البته، این فعالیتی است که HIDS مبتنی بر آنومالی انجام میدهد. در نقطهی مقابل، سیستمهای مبتنی بر اثر را داریم که در فایلهای ثبت رویداد و تنظیمی بهدنبال الگوهای شناختهشده نفوذ میگردند. همانگونه که احتمالا حدس زدهاید، HIDS بهطور مستقیم بر دستگاهی نصب میشود که قرار است از آن حفاظت شود.
۲. سیستمهای تشخیص نفوذ در سطح شبکه (NIDS)
سیستمهای تشخیص نفوذ در سطح شبکه پا را از HIDS فراتر میگذارند و در شبکه با نفوذ مقابله میکنند. این سیستمها از روشهای مشابهی برای تشخیص نفوذ بهره میبرند. البته، بهجای جستوجو در فایلهای لاگ و تنظیمات، ترافیک شبکه مانند درخواستهای اتصال را بررسی میکنند. برخی از روشهای نفوذ برای تشخیص آسیبپذیریها بدینترتیب است که بستههایی ناقص بهطور عمدی به میزبان ارسال میشود تا واکنش آنها بررسی شود. NIDSها بهراحتی این حملات را تشخیص میدهند.
شاید بتوان NIDS را برتر از HIDS دانست؛ زیرا حملات را قبل از رسیدن به رایانه شما تشخیص میدهد. همچنین، این سیستمها به نصب روی هر سیستم نیاز ندارند؛ اما سیستمهای NIDS کارایی بسیار کمی دربرابر حملات درونی دارند که متأسفانه چندان غیررایج نیست. شایان ذکر است بهترین امنیت را استفاده ترکیبی از هر دو سیستم بهارمغان میآورد.
تشخیص نفوذ دربرابر پیشگیری از آن
در دنیای امنیت، دو نوع ابزار برای محافظت برابر نفوذ وجود دارد: ا. سیستمهای تشخیص نفوذ؛ ۲. سیستمهای پیشگیری از نفوذ. این دو نوع هدف متفاوتی دنبال میکنند؛ اما اشتراکاتی نیز دارند. سیستمهای تشخیص نفوذ همانگونه که از نامشان برمیآید، تلاشهای نفوذ و فعالیتهای مشکوک را صرفا تشخیص میدهند. این سیستمها بعد از تشخیص، فقط یک هشدار یا اعلانیه برای مدیر سیستم نمایش میدهند. بقیهی اقدامات برای جلوگیری از نفوذ و مقابله با آن برعهدهی مدیر است. درمقابل، سیستمهای پیشگیری از نفوذ بهطور کلی تلاش میکنند نفوذ را متوقف کنند. البته، خود سیستمهای پیشگیری نیز یک بخش تشخیص را شامل میشوند.
برترین ابزارهای رایگان تشخیص نفوذ
ابزارهای تشخیص نفوذ بسیار گرانی وجود دارند؛ اما خوشبختانه تعدادی ابزار رایگان نیز موجود است. در فهرست زیر با ابزارهای برتر آشنا میشویم.
۱. OSSEC
OSSEC مخفف Open Source Security (امنیت متنباز) است. این ابزار که به Trend Micro، یکی از نامهای بزرگ امنیت تعلق دارد، برترین ابزار HIDS بهشمار میرود. این نرمافزار روی سیستمعاملهای شبهیونیکس نصب میشود؛ اما روی ویندوز نیز استفادهکردنی است و بر فایلهای ثبت رویداد و تنظیمات تمرکز میکند. این ابزار از فایلهای مهم چکسام (Checksum) تهیه و این چکسام را مرتب ارزیابی میکند. همچنین، این ابزار هرگونه تلاش برای دستیابی به دسترسی روت را بررسی میکند. این ابزار روی سیستمعامل ویندوز بر تغییرات رجیستری نیز نظارت میکند. درصورت شناسایی هر مورد مشکوک، OSSEC اعلانیهی مربوط را در کنسول نمایش میشود و به ایمیل شما نیز ارسال میکند.
۲. Snort
اسنورت (Snort) همتای ابزار OSSEC در بخش NIDS است. اسنورت درواقع بسیار کاراتر از ابزار تشخیص نفوذ است و در مقام تحلیلگر بستهها نیز عمل میکند. اسنورت همانند دیوار آتش (Firewall) با قوانین تنظیم میشود. این قوانین را میتوانید از وبسایت اسنورت دریافت و بهدلخواه شخصیسازی کنید.
قوانین پایهای اسنورت میتواند دامنهی گستردهای از فعالیتها مانند اسکن پورتها، حملات سرریز بافر (buffer overflow)، حملات CGI و پروبهای SMB را شناسایی کند. توانایی تشخیصی اسنورت کاملا بر قوانین نصبشده بر آن وابسته است. برخی از قوانین مبتنی بر اثر و برخی دیگر مبتنی بر آنومالی هستند. اسنورت ترکیبی بسیار عالی از هر دو مدل از قوانین را به شما ارائه میدهد.
۳. Suricata
سوریکاتا سیستم تشخیص و پیشگیری نفوذ است و خود را بهعنوان اکوسیستمی کامل برای نظارت امنیتی معرفی میکند. یکی از ویژگیهای مهم این ابزار درمقایسهبا اسنورت، کارکرد آن تا لایهی اپلیکیشن است. این امر به این ابزار اجازهی شناسایی خطرهایی را میدهد که ممکن است ابزارهای دیگر بهدلیل تقسیمشدن در بستههای متعدد نادیده بگیرند.
بااینحال، کارکرد سوریکاتا فقط به لایهی اپلیکیشن محدود نمیشود و این ابزار در سطوح پایینتر و پروتکلهایی نظیر TLS ،ICMP ،TCP و UDP نیز عمل میکند. این ابزار همچنین پروتکلهای HTTP و FTP و SMB را برای یافتن تلاشهای نفوذ پنهانشده در قالب درخواستهای غیرعادی بررسی میکند. سوریکاتا از قابلیت استخراج فایل نیز بهره میبرد تا مدیران خود فایلهای مشکوک را بررسی کنند.
سوریکاتا بسیار هوشمندانه طراحی شده و بار کاری خود را روی هستههای متعدد پردازنده و تردهای آن برای دستیابی به بهترین کارایی پخش میکند. این ابزار همچنین بخشی از بار کاری خود را روی کارت گرافیک منتقل میکند که قابلیت فوقالعادهای برای سرورها محسوب میشود.
۴. Bro Network Security Monitor
این ابزار نیز از ابزارهای رایگان تشخیص نفوذ شبکه بهشمار میآید. برو در دو حوزه عمل میکند: ثبت ترافیک و تحلیل. مانند سوریکاتا، برو در لایهی اپلیکیشن عمل میکند که به تشخیص بهتر تلاشهای نفوذ تقسیمشده منجر میشود. اولین جزء این ابزار موتور رویدادها است که اتصالها و درخواستها را ردیابی میکند. این رویدادها را بعدا اسکریپتهای سیاستگذاری تحلیل میکنند و براساس این تحلیل اعمال بعدی انجام میشوند. این ویژگی برو را به ابزار تشخیص و پیشگیری نفوذ تبدیل میسازد. برو فعالیتهای HTTP ،DNS ،FTP و SNMP را بررسی میکند. این ابزار روی یونیکس و لینوکس و OS X دردسترس است؛ اما ضعف اصلی آن نبود نسخهی ویندوز است.
۵. Open WIPS NG
این ابزار متنباز بر شبکههای بیسیم تمرکز میکند. کلمهی WIPS مخفف Wireless Intrusion Prevention System (سیستم پیشگیری از نفوذ بیسیم) است. این ابزار از سه بخش تشکیل شده است: ۱. حسگر که وظیفهی دریافت ترافیک بیسیم و ارسال آن به سرور برای بررسی و تحلیل را برعهده دارد؛ ۲. سرور که دادههای ارسالی از حسگر را جمعآوری و تحلیل میکند و به حملات پاسخ مناسب میدهد؛ ۳. تعامل که از محیطی گرافیکی برای مدیریت سرور و نمایش اطلاعات مربوط بهره میبرد.
البته جالب است بدانید Open WIPS NG را توسعهدهندهای ساخته که قبلا ابزار Aircrack NG را توسعه داده است. این ابزار، ابزاری برای سرقت بستهها و بازکردن گذرواژهها است که بخشی جداییناپذیر از ابزارهای مربوط به هک وایفای محسوب میشود. بهتر است به این موضوع از این منظر توجه کنید که توسعهدهنده اطلاعات زیادی دربارهی امنیت وایفای میداند.
۶. Samhain
Samhain ابزار رایگان تشخیص نفوذ در سطح میزبان است که قابلیت بررسی و تحلیل فایلهای ثبت رویداد را دارد. علاوهبرآن، این ابزار قابلیت تشخیص روتکیت، نظارت بر پورتها، تشخیص فایلهای اجرای SUID مشکوک و فرایندهای پنهان را نیز دارد. این ابزار بهگونهای طراحی شده که سیستمهای متعددی را با سیستمعاملهای گوناگون بررسی کند و گزارشی کامل و تجمیعیافته از همه سیستمها ارائه دهد. البته، میتوان از این ابزار روی تنها یک رایانه هم بهره برد. Samhain روی سیستمهای شبهپوسیکس (POSIX)، مانند یونیکس و لینوکس و OS X اجرا میشود. البته، روی ویندوز ازطریق Cygwin میتوان از بخش نظارت این ابزار بهره برد.
یکی از قابلیتهای خاص این ابزار، حالت پنهان آن است که به مهاجمان اجازهی شناسایی این ابزار را نمیدهد. بسیاری از نفوذگران پردازشهای مربوطبه تشخیص نفوذ را از بین میبرند تا بهراحتی کار خود را انجام دهند. بااینحال، Samhain با بهرهگیری از پنهاننگاری (Steganography) پردازشهای خود را پنهان نگه میدارد. همچنین، فایلهای لاگ و بکآپهای تنظیمات این ابزار با PGP رمزنگاری میشود تا از دستکاریشدن جلوگیری شود.
۷. Fail2Ban
این ابزار HIDS رایگان و جالبی است که برخی از قابلیتهای مربوط به پیشگیری را نیز دارد. این ابزار درصورت تشخیص فعالیت مشکوک، بهسرعت قوانین فایروال را بهروز و آدرس آیپی مربوط به فعالیت مشکوک را مسدود میکند. این عمل پیشفرض ابزار درقبال تهدیدات است. فعالیتهای دیگر مانند ارسال اعلانیههای ایمیلی تنظیمشدنی است. این سیستم فیلترهای پیشساختهای برای برخی از سرویسهای رایج مانند Apache ،Courrier ،SSH ،FTP و Postfix دارد. هر فیلتر را یک یا چند عمل همراهی میکنند تا پاسخ مناسب به موارد مشکوک داده شود.
۸. AIDE
AIDE مخفف Advanced Intrusion Detection Environment (محیط پیشرفته تشخیص نفوذ) است. این ابزار HIDS رایگان بهطور اساسی بر تشخیص روتکیت و مقایسهی اثرها تمرکز میکند. وقتی AIDE را نصب میکنید، این ابزار پایگاه دادهای از دادههای فایلهای تنظیمی سیستم شما ایجاد میکند. از این پایگاه داده برای مقایسهی هرگونه تغییر آتی در این فایلها و خنثیکردن این تغییرات درصورت نیاز استفاده میشود.
AIDE از هر دو روش تحلیل مبتنی بر اثر و آنومالی بهره میبرد که مبتنی بر نیاز است؛ یعنی این دو همزمان استفاده نمیشوند. ضعف اصلی این ابزار نیز همین موضوع است. البته، AIDE ابزاری خط فرمانی است و میتوان با استفاده از CRON job آن را در بازههای زمانی دلخواه اجرا کرد. پس اگر این ابزار در بازههای کوتاه مثلا یکدقیقهای اجرا شود، دادههایی تقریبا بدون درنگ (Real-Time) خواهید داشت. AIDE در هسته خود چیزی بهغیز از ابزار مقایسهی داده نیست و اسکریپتهای خارجی آن را HIDS واقعی کردهاند.
۹. Security Onion
سکوریتی آنیِن (Security Onion) غولی هیجانانگیز است که زمان زیادی برای شما ذخیره میکند. Security Onion فقط ابزار پیشگیری یا تشخیص نفوذ نیست؛ بلکه توزیع کامل لینوکس با تمرکز بر تشخیص نفوذ و نظارت بر امنیت شرکتی و مدیریت لاگهاست. این توزیع از بسیاری از ابزارهایی مانند اسنورت، OSSEC، سوریکاتا و برو بهره میبرد. Security Onion آچارفرانسهای تمامعیار برای امنیت شرکت شماست.
برترین ویژگی و قوت این توزیع نصب بسیار آسانش است. شما با نصب این توزیع ابزارهای HIDS و NIDS خواهید داشت که با هر دو روش مبتنی بر اثر و آنومالی عمل میکنند. همچنین، این توزیع هم ابزارهای متنی دارد و هم ابزارهایی با رابط گرافیکی. ترکیبی عالی از تمامی ابزارهای موردنیازتان در این توزیع موجود است.
۱۰. Sagan
ساگان بیشتر سیستم تحلیل فایل ثبت رویداد است تا IDS واقعی؛ اما از برخی از ویژگیهای سیستم تشخیص نفوذ نیز بهره میبرد. این ابزار قابلیت تعامل با اسنورت و سوریکاتا را نیز دارد.
ساگان قابلیت اجرای اسکریپت را نیز دارد که با آن میتوان این ابزار را به سیستم پیشگیری از نفوذ نیز تبدیل کرد. استفاده از این ابزار بهتنهایی شاید راهحل مناسبی نباشد؛ اما قطعا همراه قدرتمندی درکنار سایر ابزارهاست.
جمعبندی
سیستمهای تشخیص نفوذ فقط قطرهای از دریای ابزارهای موجود برای کمک به مدیران در حفظ امنیت و اطمینان از عملکرد مطلوب سیستمها هستند. هرکدام از ابزارهای معرفیشده کارا و قوی هستند؛ اما در اهداف باهم اندکی تفاوت دارند. انتخاب ابزار مناسب شما تاحدزیادی به سلیقهی شخصی و نیازهای خاص بستگی بستگی دارد.
ددیگاه شما چیست؟ آیا برای جلوگیری از نفوذ به سیستمتان ابزاری دارید؟ آیا ابزارهای معرفیشده را مفید میدانید؟ چه ابزارهای دیگری را میشناسید که لایق حضور در این فهرست هستند؟ دیدگاههایتان را با ما بهاشتراک بگذارید.