Snort چیست؟ + آموزش نصب
در این آموزش به سوال Snort چیست پاسخ میدهیم و و به نحوه آموزش نصب آن پرداخته ایم، با ما همراه باشید.
Snort چیست؟ و چه کاربردی دارد؟
IDS چیست؟
IDS مخفف Intrusion Detection System به معنی سیستم تشخیص و شناسایی نفوذ است. میتواند ابزاری سخت افزاری و یا برنامه ای نرم افزاری باشد که هدف آن تشخیص ترافیک های مشکوک در ورودی شبکه و همچنین ارائه گزارش از نحوه عملکرد سیستم و شبکه است.
IPS چیست؟
IPS مخفف Intrusion Prevention System به معنی سیستم جلوگیری از نفوذ است. ابزاری سخت افزاری و یا برنامه ای نرم افزاری است که جلوی نفوذ و حمله ای که توسط IDS شناسایی شده را میگیرد.
انواع IDS
- HIDS) Host Based IDS):
این نوع از IDS، برای شناسایی حمله ها و نفوذ بر روی سیستم میزبان است.
- NIDS) Network Base IDS):
در این نوع از IDS، ترافیک های ورودی شبکه مورد بررسی قرار می گیرند و در صورت وجود مدرکی از نفوذ و حمله به شبکه، آن را گزارش میکند. NIDS برای دریافت و تجزیه تحلیل ترافیک شبکه، نیاز دارد تا کارت شبکه سیستم IDS در حالت Promiscuous باشد.
- DIDS) Distributed IDS):
این نوع از IDS ترکیبی از HIDS و NIDS است و برای شناسایی حمله و نفوذ از دو روش زیر استفاده میکند.
- Signature Based Detection: در این روش قانون هایی برای ترافیک شبکه ایجاد میشود و ورودی های شبکه با توجه به این قوانین مورد بررسی قرار می گیرند.
- Behavior Anomaly Detection: در این روش با توجه به ترافیک و ورودی شبکه در حالت عادی (رفتار عادی) قوانین ایجاد میشوند. در صورت مشاهده اتفاقات غیر عادی، آن را گزارش میکند.
- File Integrity Checker:
در این نوع از IDS، بر روی فایل سیستم ها علامتی به عنوان امضا می گذارد و آنها را در پایگاه داده خود ذخیره میکند. بر اساس مدت زمانی که ما تعیین میکنیم، فایل سیستم ها را مورد بررسی قرار میدهد و در صورت وجود مغایرت یکی از امضاها، آن را گزارش میدهد.
اهداف IDS
- شناسایی نفوذ و حمله به شبکه.
- ایجاد گزارش و هشدار از ترافیک های مشکوک.
- حفاظت از داده ها در سیستم.
- منظم کردن داده ها بر روی سیستم.
در ویندوز و لینوکس از نرم افزاری تحت عنوان Snort برای تشخیص و شناسایی نفوذ استفاده میشود. که در ادامه به بررسی این نرم افزار میپردازیم.
Snort چیست؟
Snort نرم افزاری متن باز برای تشخیص نفوذ (IDS) و جلوگیری از نفوذ (IPS) است؛ که به زبان برنامه نویسی C نوشته شده است. در سال 1998 توسط Martin Roesch ساخته شد و در حال حاضر توسط توسعه دهندگان Sourcefire که زیرمجموعه شرکت سیسکو هستند، توسعه می یابد. این نرم افزار در سال 2009 بهترین نرم افزار متن باز شناخته شد.
Snort محصولی رایگان و دارای پایگاه داده کاربردی است که بر روی سیستم عامل هایی مانند ویندوز، لینوکس، یونیکس و مک قابل نصب و استفاده است. آپدیت قوانین (Rules) به صورت رایگان در دسترس است.
نرم افزار Snort بر روی شبکه و سیستم در صورت وجود ترافیک، همان لحظه آن را مورد بررسی قرار میدهد. این نرم افزار را در 3 حالت میتوان استفاده کرد:
- Sniffer Mode: در این حالت، Snort ترافیک شبکه را به اصطلاح شنود میکشد (Sniff). برای تجزیه و تحلیل ترافیک نیاز است تا کارت شبکه سیستم بر روی Promiscuous قرار بگیرد.
- Packet Logger Mode: در این حالت، گزارشی از ترافیک های شناسایی شده در حالت sniff تهیه میشود.
- Network Intrusion Detection: و در این حالت، نفوذ و حمله به شبکه تشخیص داده میشود و ترافیک ورودی بر اساس قوانین ایجاد شده توسط کاربر بررسی میشوند.
در صورت علاقه مندی به مباحث تجزیه تحلیل شبکه اموزش اسنیف شبکه را در پن تست کور مشاهده کنید.
بسته های لازم برای نصب Snort
- Tcpdump: ابزاری برای Sniff.
- Libdnet: ابزاری برای بررسی و تغییر بسته ها در شبکه.
- DAQ: مجموعه ای از کتابخانه های API که از Libdnet برای جمع آوری اطلاعات استفاده میکند.
- Libpcap: شناسایی بسته در شبکه.
- LibPcre: مجموعه ای از کتابخانه ها برای ایجاد قوانین در Snort.
نصب Snort در ویندوز
- دانلود نرم افزار Snort از سایت رسمی آن به آدرس: https://www.snort.org/
- خارج کردن از حالت فشرده و اجرای فایل exe
نصب Snort در لینوکس
- دانلود نرم افزار
نرم افزار Snort را از سایت رسمی آن به آدرس زیر دانلود کنید.
- یا می توانید با دستورات زیر ان را دانلود و از حالت فشرده خارج کنید:
cd /usr/src
wget -0 snort-2.8.6.1.tar.gz http://snort.org/downloads/116
tar xvzf snort-2.8.6.1.tar.gz
- نصب Snort
قبل از نصب اسنورت مطمئن شوید که بسته های Libpcap و LibPcre را بر روی سیستم نصب دارید.
حال Snort را با استفاده از دستورات زیر نصب کنید.
cd snort-2.8.6.1
configure/.
make
make install
- دستور تایید نصب
snort –version
- ایجاد فایل های مورد نیاز
ساخت فایل های پیکربندی، قوانین و فهرست ترافیک ورودی.
mkdir /etc/snort
mkdir /etc/snort/rules
mkdir /var/log/snort
ایجاد فایل های snort.conf و icmp.rules
cat /etc/snort/snort.conf
Include /etc/snort/rules/icmp.rules
cat /etc/snort/rules/icmp.rules
- اجرای نرم افزار Snort
snort -c /etc/snort/snort.conf -l /var/log/snort/
قوانین Snort
یکی از مهمترین پایه ها در یک سیستم تشخیص نفوذ، قانون است. برای تشخیص نفوذ، باید ترافیک ورودی با قوانین وضع شده بر روی بسته ها مورد بررسی قرار بگیرد. در اسنورت به طور پیشفرض بیش از 1900 قانون وجود دارد که برای تشخیص نفوذ و مقابله با حمله در ترافیک ورودی مورد استفاده قرار میگیرند.
ساختار اصلی قوانین Snort به صورت زیر است:
ساختار کلی Rule ها در Snort
Rule Header: بخش اصلی ساختار قانون که شامل اطلاعات کلی از آن قانون است. مانند: Action، Protocol، Port و….
Rule Option: به این قسمت، بخش اختیاری نیز میگویند که به دو دسته عمومی تشخیص محتوا و تشخیص غیر محتوا تقسیم میشود. این دو دسته شامل کلمات کلیدی هستند که باعث افزایش دقت تشخیص نفوذ میشوند.
نکته : برای امنیت بیشتر پیشنهاد میکنیم فایروال iptables را هم در پن تست کور مشاهده کنید.
موفق باشید.