Snort أو Suricata. الجزء 2: التثبيت والإعداد الأولي لـ Suricata

وفقًا للإحصاءات ، يزداد حجم حركة مرور الشبكة بحوالي 50٪ كل عام. هذا يؤدي إلى زيادة الحمل على المعدات ، وعلى وجه الخصوص ، يزيد من متطلبات أداء IDS / IPS. يمكنك شراء أجهزة متخصصة باهظة الثمن ، ولكن هناك خيار أرخص - إدخال أحد الأنظمة مفتوحة المصدر. يجد العديد من المسؤولين المبتدئين صعوبة في تثبيت وتكوين IPS المجاني. في حالة Suricata ، هذا ليس صحيحًا تمامًا - يمكنك تثبيته والبدء في صد الهجمات النموذجية بمجموعة من القواعد المجانية في بضع دقائق.

Snort أو Suricata. الجزء 2: التثبيت والإعداد الأولي لـ Suricata
Snort أو Suricata. الجزء 1: اختيار IDS / IPS مجاني لحماية شبكة شركتك

لماذا نحتاج IPS مفتوحة أخرى؟

يعتبر Snort هو المعيار منذ فترة طويلة ، وقد تم تطويره منذ أواخر التسعينيات ، لذلك كان في الأصل خيطًا واحدًا. على مر السنين ، ظهرت جميع الميزات الحديثة فيه ، مثل دعم IPv6 ، والقدرة على تحليل البروتوكولات على مستوى التطبيق ، أو وحدة الوصول إلى البيانات الشاملة.

لقد تعلم محرك Snort 2.X الأساسي العمل مع نوى متعددة ، لكنه ظل ذو ترابط واحد ، وبالتالي لا يمكنه الاستفادة على النحو الأمثل من الأنظمة الأساسية للأجهزة الحديثة.

تم حل المشكلة في الإصدار الثالث من النظام ، لكن الأمر استغرق وقتًا طويلاً لإعداد Suricata ، المكتوب من الصفر ، والذي تمكن من الظهور في السوق. في عام 2009 ، بدأ تطويره على وجه التحديد كبديل متعدد الخيوط لـ Snort ، والذي يحتوي على وظائف IPS خارج الصندوق. يتم توزيع الكود بموجب ترخيص GPLv2 ، لكن الشركاء الماليين للمشروع يمكنهم الوصول إلى نسخة مغلقة من المحرك. ظهرت بعض مشكلات قابلية التوسع في الإصدارات الأولى من النظام ، ولكن تم حلها بسرعة.

لماذا سوريكا؟

يحتوي Suricata على عدة وحدات (على غرار Snort): الالتقاط والتقاط وفك التشفير والكشف والإخراج. بشكل افتراضي ، تذهب حركة المرور الملتقطة قبل فك التشفير في دفق واحد ، على الرغم من أن هذا يؤدي إلى تحميل النظام أكثر. إذا لزم الأمر ، يمكن تقسيم الخيوط في الإعدادات وتوزيعها بين المعالجات - تم تحسين Suricata جيدًا لأجهزة معينة ، على الرغم من أن هذا لم يعد مستوى HOWTO للمبتدئين. من الجدير بالذكر أيضًا أن Suricata لديها أدوات فحص HTTP متقدمة بناءً على مكتبة HTP. يمكن استخدامها أيضًا لتسجيل حركة المرور دون اكتشافها. يدعم النظام أيضًا فك تشفير IPv6 ، بما في ذلك أنفاق IPv4-in-IPv6 وأنفاق IPv6-in-IPv6 والمزيد.

يمكن استخدام واجهات مختلفة لاعتراض حركة المرور (NFQueue و IPFRing و LibPcap و IPFW و AF_PACKET و PF_RING) ، وفي وضع Unix Socket ، يمكنك تلقائيًا تحليل ملفات PCAP التي تم التقاطها بواسطة متشمم آخر. بالإضافة إلى ذلك ، فإن بنية Suricata المعيارية تجعل من السهل توصيل عناصر جديدة لالتقاط وفك تشفير وتحليل ومعالجة حزم الشبكة. من المهم أيضًا ملاحظة أنه في Suricata ، يتم حظر حركة المرور عن طريق مرشح منتظم لنظام التشغيل. يحتوي GNU / Linux على خيارين لكيفية عمل IPS: عبر قائمة انتظار NFQUEUE (وضع NFQ) وعبر نسخة صفرية (وضع AF_PACKET). في الحالة الأولى ، تُرسل الحزمة التي تدخل iptables إلى قائمة انتظار NFQUEUE ، حيث يمكن معالجتها على مستوى المستخدم. تدير Suricata وفقًا لقواعدها الخاصة وتصدر أحد الأحكام الثلاثة: NF_ACCEPT و NF_DROP و NF_REPEAT. النوعان الأولان لا يحتاجان إلى شرح ، بينما يسمح الأخيران بوضع علامات على الحزم وإرسالها إلى أعلى جدول iptables الحالي. يكون وضع AF_PACKET أسرع ، لكنه يفرض عددًا من القيود على النظام: يجب أن يكون له واجهتان للشبكة ويعمل كبوابة. لا يتم إعادة توجيه الحزمة المحظورة إلى الواجهة الثانية.

ميزة هامة في Suricata هي القدرة على استخدام التطورات في Snort. يمتلك المسؤول حق الوصول ، على وجه الخصوص ، إلى مجموعات قواعد Sourcefire VRT و OpenSource الناشئة للتهديدات ، بالإضافة إلى Emerging Threats Pro التجاري. يمكن تحليل الإخراج الموحد باستخدام الخلفيات الشائعة ، كما يتم دعم إخراج PCAP و Syslog. يتم تخزين إعدادات وقواعد النظام في ملفات YAML ، والتي يسهل قراءتها ويمكن معالجتها تلقائيًا. يتعرف محرك Suricata على العديد من البروتوكولات ، لذلك لا يلزم ربط القواعد برقم منفذ. بالإضافة إلى ذلك ، يتم ممارسة مفهوم التدفق بنشاط في قواعد Suricata. لتتبع المشغل ، تُستخدم متغيرات الجلسة لإنشاء عدادات وأعلام مختلفة وتطبيقها. تعامل العديد من أنظمة كشف التسلل (IDS) اتصالات TCP المختلفة ككيانات منفصلة وقد لا ترى اتصالاً بينها يشير إلى بدء الهجوم. يحاول Suricata رؤية الصورة كاملة وفي كثير من الحالات يتعرف على حركة المرور الضارة الموزعة عبر اتصالات مختلفة. يمكنك التحدث عن مزاياها لفترة طويلة ، فمن الأفضل أن ننتقل إلى التثبيت والتكوين.

كيفية التثبيت؟

سنقوم بتثبيت Suricata على خادم افتراضي يقوم بتشغيل Ubuntu 18.04 LTS. يجب تنفيذ جميع الأوامر نيابة عن المستخدم المتميز (الجذر). الخيار الأكثر أمانًا هو إدخال SSH إلى الخادم كمستخدم عادي ثم استخدام الأداة المساعدة sudo لرفع الامتيازات. تحتاج أولاً إلى تثبيت الحزم التي نحتاجها:

sudo apt -y install libpcre3 libpcre3-dev build-essential autoconf automake libtool libpcap-dev libnet1-dev libyaml-0-2 libyaml-dev zlib1g zlib1g-dev libmagic-dev libcap-ng-dev libjansson-dev pkg-config libnetfilter-queue-dev geoip-bin geoip-database geoipupdate apt-transport-https

توصيل مستودع خارجي:

sudo add-apt-repository ppa:oisf/suricata-stable
sudo apt-get update

قم بتثبيت أحدث إصدار مستقر من Suricata:

sudo apt-get install suricata

إذا لزم الأمر ، فقم بتحرير اسم ملفات التكوين ، واستبدل eth0 الافتراضي بالاسم الفعلي للواجهة الخارجية للخادم. يتم تخزين الإعدادات الافتراضية في ملف / etc / default / suricata ، ويتم تخزين الإعدادات المخصصة في /etc/suricata/suricata.yaml. تكوين IDS يقتصر في الغالب على تحرير ملف التكوين هذا. لديها الكثير من المعلمات التي ، بالاسم والغرض ، تتطابق مع نظائرها من Snort. ومع ذلك ، فإن بناء الجملة مختلف تمامًا ، ولكن الملف أسهل في القراءة من تكوينات Snort ويتم التعليق عليه جيدًا.

sudo nano /etc/default/suricata

Snort أو Suricata. الجزء 2: التثبيت والإعداد الأولي لـ Suricata

и

sudo nano /etc/suricata/suricata.yaml

Snort أو Suricata. الجزء 2: التثبيت والإعداد الأولي لـ Suricata

انتباه! قبل البدء ، يجدر التحقق من قيم المتغيرات من قسم vars.

لإكمال الإعداد ، ستحتاج إلى تثبيت تحديث suricata لتحديث القواعد وتحميلها. من السهل جدًا القيام بذلك:

sudo apt install python-pip
sudo pip install pyyaml
sudo pip install <a href="https://github.com/OISF/suricata-update/archive/master.zip">https://github.com/OISF/suricata-update/archive/master.zip</a>
sudo pip install --pre --upgrade suricata-update

بعد ذلك ، نحتاج إلى تشغيل الأمر suricata-update لتثبيت مجموعة قواعد Emerging Threats Open:

sudo suricata-update

Snort أو Suricata. الجزء 2: التثبيت والإعداد الأولي لـ Suricata

لعرض قائمة مصادر القواعد ، قم بتشغيل الأمر التالي:

sudo suricata-update list-sources

Snort أو Suricata. الجزء 2: التثبيت والإعداد الأولي لـ Suricata

تحديث مصادر القاعدة:

sudo suricata-update update-sources

Snort أو Suricata. الجزء 2: التثبيت والإعداد الأولي لـ Suricata

إعادة النظر في المصادر المحدثة:

sudo suricata-update list-sources

إذا لزم الأمر ، يمكنك تضمين المصادر المجانية المتاحة:

sudo suricata-update enable-source ptresearch/attackdetection
sudo suricata-update enable-source oisf/trafficid
sudo suricata-update enable-source sslbl/ssl-fp-blacklist

بعد ذلك ، تحتاج إلى تحديث القواعد مرة أخرى:

sudo suricata-update

هذا يكمل التثبيت والتكوين الأولي لـ Suricata في Ubuntu 18.04 LTS. ثم تبدأ المتعة: في المقالة التالية ، سنقوم بتوصيل خادم افتراضي بشبكة المكتب عبر VPN ونبدأ في تحليل جميع حركة المرور الواردة والصادرة. سنولي اهتمامًا خاصًا لحظر هجمات DDoS ونشاط البرامج الضارة ومحاولات استغلال الثغرات الأمنية في الخدمات التي يمكن الوصول إليها من الشبكات العامة. من أجل الوضوح ، ستتم محاكاة هجمات الأنواع الأكثر شيوعًا.

Snort أو Suricata. الجزء 2: التثبيت والإعداد الأولي لـ Suricata

Snort أو Suricata. الجزء 2: التثبيت والإعداد الأولي لـ Suricata

المصدر: www.habr.com

إضافة تعليق