Снорт немесе Суриката. 2-бөлім: Suricata орнату және бастапқы орнату

Статистикаға сәйкес, желілік трафик көлемі жыл сайын шамамен 50%-ға артады. Бұл жабдыққа түсетін жүктеменің артуына әкеледі және, атап айтқанда, IDS/IPS өнімділік талаптарын арттырады. Сіз қымбат мамандандырылған жабдықты сатып ала аласыз, бірақ арзанырақ нұсқа бар - ашық бастапқы жүйелердің бірін енгізу. Көптеген жаңадан келген әкімшілер тегін IPS орнату және конфигурациялау өте қиын деп ойлайды. Суиката жағдайында бұл мүлдем дұрыс емес - сіз оны орнатып, бірнеше минут ішінде еркін ережелер жиынтығымен стандартты шабуылдарды тойтаруға кірісе аласыз.

Снорт немесе Суриката. 2-бөлім: Suricata орнату және бастапқы орнату
Снорт немесе Суриката. 1-бөлім: Корпоративтік желіні қорғау үшін тегін IDS/IPS таңдау

Неліктен бізге басқа ашық IPS керек?

Ұзақ уақыт бойы стандарт болып саналған Snort тоқсаныншы жылдардың аяғынан бері әзірленуде, сондықтан ол бастапқыда бір ағынды болды. Осы жылдар ішінде ол IPv6 қолдауы, қолданбалы деңгейдегі хаттамаларды талдау мүмкіндігі немесе деректерге қол жеткізудің әмбебап модулі сияқты барлық заманауи мүмкіндіктерге ие болды.

Негізгі Snort 2.X қозғалтқышы бірнеше ядролармен жұмыс істеуді үйренді, бірақ бір ағынды болып қалды, сондықтан заманауи аппараттық платформалардың артықшылығын оңтайлы пайдалана алмайды.

Мәселе жүйенің үшінші нұсқасында шешілді, бірақ нөлден бастап жазылған Suricata нарықта пайда болуы үшін дайындалуға көп уақыт кетті. 2009 жылы ол қораптан тыс IPS функциялары бар Snort-қа көп ағынды балама ретінде дәл әзірлене бастады. Код GPLv2 лицензиясы бойынша таратылады, бірақ жобаның қаржылық серіктестері қозғалтқыштың жабық нұсқасына қол жеткізе алады. Жүйенің алғашқы нұсқаларында масштабтауға қатысты кейбір мәселелер туындады, бірақ олар тез арада шешілді.

Неліктен Суиката?

Suricata-да бірнеше модуль бар (мысалы, Snort): түсіру, алу, декодтау, анықтау және шығару. Әдепкі бойынша, түсірілген трафик бір ағында декодтаудан бұрын өтеді, бірақ бұл жүйені көбірек жүктейді. Қажет болса, ағындарды параметрлерде бөлуге және процессорлар арасында бөлуге болады - Suricata нақты жабдық үшін өте жақсы оңтайландырылған, бірақ бұл енді жаңадан бастаушылар үшін HOWTO деңгейі емес. Сондай-ақ, Suricata-да HTP кітапханасына негізделген кеңейтілген HTTP тексеру құралдары бар екенін атап өткен жөн. Оларды трафикті анықтаусыз тіркеу үшін де пайдалануға болады. Жүйе сонымен қатар IPv6 декодтауын қолдайды, соның ішінде IPv4-in-IPv6, IPv6-in-IPv6 туннельдері және т.б.

Трафикті тоқтату үшін әртүрлі интерфейстерді пайдалануға болады (NFQueue, IPFRing, LibPcap, IPFW, AF_PACKET, PF_RING) және Unix Socket режимінде басқа sniffer түсірген PCAP файлдарын автоматты түрде талдауға болады. Сонымен қатар, 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 ережелер жиынына, сондай-ақ коммерциялық Emerging Threats Pro бағдарламасына қол жеткізе алады. Бірыңғай шығысты танымал серверлер арқылы талдауға болады және PCAP және Syslog жүйесіне шығаруға да қолдау көрсетіледі. Жүйе параметрлері мен ережелері YAML файлдарында сақталады, оларды оқу оңай және автоматты түрде өңдеуге болады. Suricata қозғалтқышы көптеген хаттамаларды таниды, сондықтан ережелерді порт нөміріне байланыстырудың қажеті жоқ. Сонымен қатар, flowbits тұжырымдамасы Суриката ережелерінде белсенді түрде қолданылады. Іске қосуды қадағалау үшін әртүрлі есептегіштер мен жалаушаларды жасауға және қолдануға мүмкіндік беретін сеанс айнымалылары пайдаланылады. Көптеген IDS әртүрлі TCP қосылымдарын жеке нысандар ретінде қарастырады және шабуылдың басталуын көрсету үшін олардың арасындағы байланысты көрмеуі мүмкін. Суриката бүкіл суретті көруге тырысады және көп жағдайда әртүрлі қосылымдар арқылы таратылған зиянды трафикті таниды. Біз оның артықшылықтары туралы ұзақ уақыт айта аламыз, орнату мен конфигурацияға көшкеніміз жөн.

Қалай орнату керек?

Біз Suricata бағдарламасын Ubuntu 18.04 LTS жұмыс істейтін виртуалды серверге орнатамыз. Барлық командалар суперпайдаланушы (root) ретінде орындалуы керек. Ең қауіпсіз опция стандартты пайдаланушы ретінде серверге 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

Снорт немесе Суриката. 2-бөлім: Suricata орнату және бастапқы орнату

и

sudo nano /etc/suricata/suricata.yaml

Снорт немесе Суриката. 2-бөлім: Suricata орнату және бастапқы орнату

Назар аударыңыз! Бастамас бұрын vars бөліміндегі айнымалы мәндерді тексеру керек.

Орнатуды аяқтау үшін ережелерді жаңарту және жүктеп алу үшін suricata-update орнату қажет. Мұны істеу өте оңай:

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

Содан кейін біз Emerging Threats Open ережелер жинағын орнату үшін suricata-update пәрменін іске қосуымыз керек:

sudo suricata-update

Снорт немесе Суриката. 2-бөлім: Suricata орнату және бастапқы орнату

Ереже көздерінің тізімін көру үшін келесі пәрменді іске қосыңыз:

sudo suricata-update list-sources

Снорт немесе Суриката. 2-бөлім: Suricata орнату және бастапқы орнату

Ереже көздерін жаңарту:

sudo suricata-update update-sources

Снорт немесе Суриката. 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

Осы кезде Ubuntu 18.04 LTS жүйесінде Suricata орнату және бастапқы конфигурациясын аяқталды деп санауға болады. Содан кейін қызық басталады: келесі мақалада біз виртуалды серверді VPN арқылы кеңсе желісіне қосамыз және барлық кіріс және шығыс трафикті талдауды бастаймыз. Біз DDoS шабуылдарын, зиянды бағдарламалар белсенділігін және жалпыға қолжетімді желілерден қолжетімді қызметтердегі осалдықтарды пайдалану әрекеттерін блоктауға ерекше назар аударамыз. Түсінікті болу үшін ең көп таралған түрдегі шабуылдар имитацияланады.

Снорт немесе Суриката. 2-бөлім: Suricata орнату және бастапқы орнату

Снорт немесе Суриката. 2-бөлім: Suricata орнату және бастапқы орнату

Ақпарат көзі: www.habr.com

пікір қалдыру