Suricata 1.4.4 Atbrīvots - tīkla ielaušanās atklāšanas, novēršanas un drošības uzraudzības sistēma


Suricata ir atvērta koda augstas veiktspējas mūsdienīga tīkla ielaušanās noteikšanas, novēršanas un drošības uzraudzības sistēma Unix/Linux, FreeBSD un Windows balstītām sistēmām. To izstrādāja OISF (Atvērtās informācijas drošības fonds) bezpeļņas fonds un piederēja tam.

Nesen OISF projekta komanda paziņoja par Suricata 1.4.4 izlaišanu ar nelieliem, bet izšķirošiem atjauninājumiem un novērsa dažas būtiskas kļūdas salīdzinājumā ar iepriekšējo laidienu.

Suricata funkcijas

Suricata ir uz noteikumiem balstīts ielaušanās atklāšanas un novēršanas dzinējs, kas izmanto ārēji izstrādātus noteikumu kopumus, lai uzraudzītu tīkla trafiku, kā arī spēj apstrādāt vairāku gigabaitu trafiku un sniedz brīdinājumus pa e-pastu sistēmas/tīkla administratoriem.

Suricata nodrošina ātrumu un nozīmi tīkla trafika noteikšanā. Motors ir izstrādāts, lai izmantotu paaugstinātu apstrādes jaudu, ko piedāvā mūsdienīgi daudzkodolu aparatūras mikroshēmu komplekti.

Motors nodrošina ne tikai TCP, UDP, ICMP un IP atslēgvārdus, bet arī iebūvētu atbalstu HTTP, FTP, TLS un SMB. Sistēmas administrators var izveidot savu kārtulu, lai noteiktu atbilstību HTTP straumē. Tas kļūs par atšķirīgu ļaunprātīgas programmatūras noteikšanu un kontroli.

Dzinējs noteikti pieņems noteikumus, kas ir IP atbilstības, pamatojoties uz RBN un kompromitētiem IP sarakstiem pie Emerging Threat, un saglabās tos īpašā ātri atbilstošā pirmapstrādes procesorā.

1. darbība: Suricata instalēšana RHEL, CentOS un Fedora

Lai instalētu dažas nepieciešamās pakotnes i386 un x86_64 sistēmām, jums jāizmanto Fedora EPEL krātuve.

  1. iespējojiet Fedora EPEL krātuvi

Pirms jūs varat apkopot un izveidot savai sistēmai Suricata, instalējiet šādus atkarības pakotnes, kas nepieciešamas tālākai instalēšanai. Atkarībā no interneta ātruma procesa pabeigšana var aizņemt kādu laiku.

# yum -y install libpcap libpcap-devel libnet libnet-devel pcre \
pcre-devel gcc gcc-c++ automake autoconf libtool make libyaml \
libyaml-devel zlib zlib-devel libcap-ng libcap-ng-devel magic magic-devel file file-devel

Pēc tam izveidojiet Suricata ar IPS atbalstu. Lai to izdarītu, mums ir nepieciešamas pakotnes “libnfnetlink” un “libnetfilter_queue”, taču šīs iepriekš izveidotās pakotnes nav pieejamas EPEL vai CentOS Base krātuvēs. Tātad, mums ir jālejupielādē un jāinstalē RPMS no Emerging Threats CentOS repozitorija.

# rpm -Uvh http://rules.emergingthreatspro.com/projects/emergingrepo/i386/libnetfilter_queue-0.0.15-1.i386.rpm \
http://rules.emergingthreatspro.com/projects/emergingrepo/i386/libnetfilter_queue-devel-0.0.15-1.i386.rpm \
http://rules.emergingthreatspro.com/projects/emergingrepo/i386/libnfnetlink-0.0.30-1.i386.rpm \ 
http://rules.emergingthreatspro.com/projects/emergingrepo/i386/libnfnetlink-devel-0.0.30-1.i386.rpm
# rpm -Uvh http://rules.emergingthreatspro.com/projects/emergingrepo/x86_64/libnetfilter_queue-0.0.15-1.x86_64.rpm \
http://rules.emergingthreatspro.com/projects/emergingrepo/x86_64/libnetfilter_queue-devel-0.0.15-1.x86_64.rpm \
http://rules.emergingthreatspro.com/projects/emergingrepo/x86_64/libnfnetlink-0.0.30-1.x86_64.rpm \ 
http://rules.emergingthreatspro.com/projects/emergingrepo/x86_64/libnfnetlink-devel-0.0.30-1.x86_64.rpm

Lejupielādējiet jaunākos Suricata avota failus un izveidojiet tos, izmantojot šādas komandas.

# cd /tmp
# wget http://www.openinfosecfoundation.org/download/suricata-1.4.4.tar.gz
# tar -xvzf suricata-1.4.4.tar.gz
# cd suricata-1.4.4

Tagad mēs izmantojam Suricata automātiskās iestatīšanas funkciju, lai automātiski izveidotu visus nepieciešamos direktorijus, konfigurācijas failus un jaunākos kārtulu kopas.

# ./configure && make && make install-conf
# ./configure && make && make install-rules
# ./configure && make && make install-full

2. darbība: Suricata instalēšana Debian un Ubuntu

Pirms sākat instalēšanu, lai turpinātu darbu, sistēmā jābūt instalētām šādām priekšnosacījumu pakotnēm. Pārliecinieties, vai jums ir jābūt root lietotājam, lai palaistu šo komandu. Šis instalēšanas process var aizņemt kādu laiku, atkarībā no jūsu pašreizējā interneta ātruma.

# apt-get -y install libpcre3 libpcre3-dbg libpcre3-dev \
build-essential autoconf automake libtool libpcap-dev libnet1-dev \
libyaml-0-2 libyaml-dev zlib1g zlib1g-dev libmagic-dev libcap-ng-dev \
pkg-config magic file libhtp-dev

Pēc noklusējuma darbojas kā IDS. Ja vēlaties pievienot IDS atbalstu, instalējiet dažas nepieciešamās pakotnes šādi.

# apt-get -y install libnetfilter-queue-dev libnetfilter-queue1 libnfnetlink-dev libnfnetlink0

Lejupielādējiet jaunāko Suricata darvas bumbu un izveidojiet to, izmantojot šādas komandas.

# cd /tmp
# wget http://www.openinfosecfoundation.org/download/suricata-1.4.4.tar.gz
# tar -xvzf suricata-1.4.4.tar.gz
# cd suricata-1.4.4

Izmantojiet opciju Suricata Auto Setup, lai automātiski izveidotu visus nepieciešamos direktorijus, konfigurācijas failus un kārtulu kopas, kā parādīts zemāk.

# ./configure && make && make install-conf
# ./configure && make && make install-rules
# ./configure && make && make install-full

3. darbība: Suricata pamata iestatīšana

Pēc Suricata lejupielādes un instalēšanas ir pienācis laiks pāriet uz pamata iestatīšanu. Izveidojiet šādus direktorātus.

# mkdir /var/log/suricata
# mkdir /etc/suricata

Nākamā daļa ir kopēt konfigurācijas failus, piemēram, “sification.config ”,“ reference.config ”un“ suricata.yaml ”no bāzes būvēšanas instalācijas direktorija.

# cd /tmp/suricata-1.4.4
# cp classification.config /etc/suricata
# cp reference.config /etc/suricata
# cp suricata.yaml /etc/suricata

Visbeidzot, pirmo reizi palaidiet “Suricata Engine” un norādiet vēlamo interfeisa ierīces nosaukumu. Eth0 vietā jūs varat iekļaut sev tīkamu tīkla karti.

# suricata -c /etc/suricata/suricata.yaml -i eth0

23/7/2013 -- 12:22:45 -  - This is Suricata version 1.4.4 RELEASE
23/7/2013 -- 12:22:45 -  - CPUs/cores online: 2
23/7/2013 -- 12:22:45 -  - Found an MTU of 1500 for 'eth0'
23/7/2013 -- 12:22:45 -  - allocated 2097152 bytes of memory for the defrag hash... 65536 buckets of size 32
23/7/2013 -- 12:22:45 -  - preallocated 65535 defrag trackers of size 104
23/7/2013 -- 12:22:45 -  - defrag memory usage: 8912792 bytes, maximum: 33554432
23/7/2013 -- 12:22:45 -  - AutoFP mode using default "Active Packets" flow load balancer
23/7/2013 -- 12:22:45 -  - preallocated 1024 packets. Total memory 3170304
23/7/2013 -- 12:22:45 -  - allocated 131072 bytes of memory for the host hash... 4096 buckets of size 32
23/7/2013 -- 12:22:45 -  - preallocated 1000 hosts of size 76
23/7/2013 -- 12:22:45 -  - host memory usage: 207072 bytes, maximum: 16777216
23/7/2013 -- 12:22:45 -  - allocated 2097152 bytes of memory for the flow hash... 65536 buckets of size 32
23/7/2013 -- 12:22:45 -  - preallocated 10000 flows of size 176
23/7/2013 -- 12:22:45 -  - flow memory usage: 3857152 bytes, maximum: 33554432
23/7/2013 -- 12:22:45 -  - IP reputation disabled
23/7/2013 -- 12:22:45 -  - using magic-file /usr/share/file/magic

Pēc vairākām minūtēm pārbaudiet, vai motors darbojas pareizi, kā arī uztver un pārbauda satiksmi.

# cd /usr/local/var/log/suricata/
# ls -l

-rw-r--r-- 1 root root  25331 Jul 23 12:27 fast.log
drwxr-xr-x 2 root root   4096 Jul 23 11:34 files
-rw-r--r-- 1 root root  12345 Jul 23 11:37 http.log
-rw-r--r-- 1 root root 650978 Jul 23 12:27 stats.log
-rw-r--r-- 1 root root  22853 Jul 23 11:53 unified2.alert.1374557837
-rw-r--r-- 1 root root   2691 Jul 23 12:09 unified2.alert.1374559711
-rw-r--r-- 1 root root   2143 Jul 23 12:13 unified2.alert.1374559939
-rw-r--r-- 1 root root   6262 Jul 23 12:27 unified2.alert.1374560613

Noskatieties “stats.log” failu un pārliecinieties, vai parādītā informācija ir atjaunināta reāllaikā.

# tail -f stats.log

tcp.reassembly_memuse     | Detect                    | 0
tcp.reassembly_gap        | Detect                    | 0
detect.alert              | Detect                    | 27
flow_mgr.closed_pruned    | FlowManagerThread         | 3
flow_mgr.new_pruned       | FlowManagerThread         | 277
flow_mgr.est_pruned       | FlowManagerThread         | 0
flow.memuse               | FlowManagerThread         | 3870000
flow.spare                | FlowManagerThread         | 10000
flow.emerg_mode_entered   | FlowManagerThread         | 0
flow.emerg_mode_over      | FlowManagerThread         | 0

Atsauces saites

Suricata mājas lapa
Suricata lietotāja rokasgrāmata