Cyber Defence Monitoring Course Suite (CDMCS)
- Autor : Tomáš Mokoš, Marek Brodec
- Operačný systém : Ubuntu 16.04
- Verzia Elasticsearch : 5.5.1
- Verzia Suricata : 4.0.1
Tento článok je zastaraný, použite novšie návody uvedené nižšie.
Inštalácia Suricaty
Prepojenie Molocha/Arkime so Suricatou
Moloch/Arkime – Inštalácia
Elasticsearch
Elasticsearch je open source nástroj, ktorého primárnym účelom je efektívne a urýchlené fulltextové vyhľadávanie v množstve ním indexovaných dát. Jeho najčastejším použitím je prehľadávanie databázy dokumentov.
Stiahnutie Molochom aktuálne podporovanej verzie Elasticsearch.
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.1.deb
Rozbalenie archívu spojené s inštaláciou
sudo dpkg -i elasticsearch-5.5.1.deb
Suricata
Suricata je veľmi rýchly, robustný a neustále rozvíjajúci sa free open source detekčný nástroj. Je schopný jednak detekovať narušenie vniknutia v reálnom čase, vykonávať prevenciu vniknutí ale i monitorovať bezpečnosť siete a spracovávať pcap súbory offline.
Nastavenie premennej v ktorej bude uložené číslo nami inštalovanej verzie.
VER=4.0.1
Stiahnutie a rozbalenie inštalačného balíka.
wget http://www.openinfosecfoundation.org/download/suricata-$VER.tar.gz
tar -xvzf "suricata-$VER.tar.gz"
Inštalácia a konfigurácia
./configure --enable-nfqueue --prefix=/usr --sysconfdir=/etc --localstatedir=/var
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
V tejto chvíli máme na výber jednu z nasledujúcich možností:
- Vytvoriť a nastaviť len všetky nevyhnutné priečinky a konfiguračný súbor suricata.yaml.
./configure && make && make install-conf
- Automaticky stiahne a nastaví posledné dostupné pravidlá pre Suricatu, podľa ktorých sú vyhodnocované pakety za hrozbu.
./configure && make && make install-rules
- Je kombinácia oboch predchádzajúcich možností. Všetky potrebné súbory sú vytvorené, nakonfigurované a sú stiahnuté a aktivované posledné dostupné pravidla pre vyhodnocovanie hrozieb
./configure && make && make install-full
- Úprava konfiguračného súboru pre naše potreby. Nasledujúce riadky budú pridané na koniec súboru. Zahŕňajú nastavenie zapisovania do eve.json logov , definovanie rozhrania na ktorom bude pracovať suricata enp7s0f0 a cesta k predvoleným pravidlám /usr/local/etc/suricata/rules.
cat >> /usr/local/etc/suricata/suricata.yaml <<EOF
stats:
enabled: no
outputs:
- fast:
enabled: no
- eve-log:
enabled: yes
filename: eve.json
types:
- alert:
tagged-packets: no
xff:
enabled: no
af-packet:
- interface: enp7s0f0
cluster-id: 98
cluster-type: cluster_flow
defrag: yes
default-rule-path: /usr/local/etc/suricata/rules
sensor-name: moloch-singlehost
EOF
GeoLite
Je free databáza obsahujúca databázu pridelených IP adries spolu s uvedením krajiny poprípade mesta organizácie, ktorej bola pridelená konkrétna IP adresa poprípade rozsah adries. Databáza IP adries je aktualizovaná vždy prvý utorok v mesiaci.
Stiahnutie archívov a rozbalenie databázy
echo "$(date) installing GeoLite2"
[[ -f 'GeoLite2-City.mmdb.gz' ]] || wget -q -4 http://geolite.maxmind.com/download/geoip/database/GeoLite2-City.mmdb.gz
mkdir -p /usr/local/share/GeoIP
gunzip GeoLite2-City.mmdb.gz --stdout > /usr/local/share/GeoIP/GeoLite2-City.mmdb
Evebox
EveBox je webové rozhranie poskytujúce nástroje pre manažment alertov a udalostí generovaných IDS detekčným nástrojom Suricata. Tento nástroj úzko spolupracuje s Elasticsearchom. Jeho sekundárnou úlohou je prepojenie logov Suricaty s Elasticsearchom.
Stiahnutie inštalačného balíka najnovšej verzie Evebox.
wget -q -4 https://evebox.org/files/development/evebox-latest-amd64.deb
Rozbalenie archívu spojené s inštaláciou
dpkg -i evebox-latest-amd64.deb
Nastavenie URL adresy pre prístup k Elasticsearchu, premennej ELASTICSEARCH_INDEX, ktorá pri svojom zavolaní bude indexovať dáta do Elasticsearchu pod názvom indexov suricata a posledným parametrom je pridanie absolútnej cesty súboru z ktorého sú načítavané alerty a udalostí Suricaty.
cat >/usr/local/etc/default/evebox <<EOF
ELASTICSEARCH_URL="-e http://localhost:9200"
ELASTICSEARCH_INDEX="--index suricata"
SURICATA_EVE="--end /var/log/suricata/eve.json"
EOF
Vytvorenie súboru služby vďaka, ktorému je možné proces spustenia Evebox Servera spustiť len zavolaním názvu tejto služby bez potreby dodefinovania súborov a ďalších nevyhnutných možností zakaždým.
cat > /lib/systemd/system/evebox.service <<EOF
[Unit]
Description=EveBox Server
[Service]
ExecStart=/usr/bin/evebox \$ELASTICSEARCH_URL \$ELASTICSEARCH_INDEX \$CONFIG \$EVEBOX_OPTS
EnvironmentFile=-/usr/local/etc/default/evebox
[Install]
WantedBy=multi-user.target
EOF
Rovnaký zámer ako v predošlom kroku ale pre spustenie procesu Eveboxu, ktorý bude importovať alerty zo Suricata logov.
cat > /lib/systemd/system/evebox-esimport.service <<EOF
[Unit]
Description=EveBox-EsImport
[Service]
ExecStart=/usr/bin/evebox esimport \$ELASTICSEARCH_URL \$ELASTICSEARCH_INDEX \$SURICATA_EVE
EnvironmentFile/usr/local/etc/default/evebox
[Install]
WantedBy=multi-user.target
EOF
Zaradenie služby konfigurovanej v predošlých súboroch medzi služby.
systemctl enable evebox-esimport
systemctl enable evebox
Príkazy pre spustenie, pozastavenie,reštart služieb prípadne zistenie služby.
systemctl start|restart|stop|status evebox-esimport
systemctl start|restart|stop|status evebox
Pri akejkoľvek zmene v konfiguračnom súbore služby je nutné reloadovať daemon a znovu zaradiť medzi služby.
systemctl deamon-reload
systemctl enable ....
Moloch
Pridanie repozitárov a inštalácia JAVA.
add-apt-repository ppa:webupd8team/java
apt-get update
apt-get -y install oracle-java8-installer
Inštalácia nevyhnutných balíčkov pre chod Molocha.
apt-get install wget curl libpcre3-dev uuid-dev libmagic-dev pkg-config g++ flex bison zlib1g-dev libffi-dev gettext libgeoip-dev make libjson-perl libbz2-dev libwww-perl libpng-dev xz-utils libffi-dev
Stiahnutie inštalačného balíčka pre Ubuntu 16.04
wget https://files.molo.ch/builds/ubuntu-16.04/moloch_0.20.1-1_amd64.deb
Rozbalenie balíčka spojené so samotnou inštaláciou
dpkg -i moloch_0.20.1-1_amd64.deb
Spustenie konfigurácie. Keďže sme Elasticsearch inštalovali osobitne pri konfigurácií nepovolíme inštaláciu Elasticsearch Dema.
sudo ./data/moloch/bin/Configure
Inštalácia pokračuje spustením Elasticsearchu a počiatočnej incializácie databázy
systemctl start elasticsearch.service
/data/moloch/db/db.pl http://127.0.0.1:9200 init
/data/moloch/db/db.pl http://127.0.0.1:9200 upgrade
Pridanie používateľa pre prístup k webovému grafickému prostrediu.
/data/moloch/bin/moloch_add_user.sh admin user password –admin
Vytvorenie konfiguračného súboru súčastí wiseService a nastavenie parametrov jednak samotnej služby a rovnako aj pre Suricatu(IP adresa pre prístup k Eveboxu, polia ktoré budú v Molochu zobrazvané, atď…)
cd /data/moloch/etc/
cp /data/moloch/wiseService/wiseService.ini.sample /data/moloch/etcwise.ini
cat > /data/moloch/etc/wise.ini <<EOF
[wiseService]
port=8081
[suricata]
evBox=http://127.0.0.1:5636
fields=severity;category;signature;flow_id;_id
mustHaveTags=escalated
mustNotHaveTags=archived
EOF
Vytvorenie symbolickej linky v priečinku wiseService odkazujúcej na konfiguračný súbor vytvorený v predošlom kroku.
cd /data/moloch/wiseService/
ln -s /data/moloch/etc/wise.ini wiseService.ini
Spustenie musí prebiehať priamo z priečinku wiseService
node /data/moloch/bin/node wiseService.js -c wiseService.ini
Kibana
Stiahnutie a rozbalenie archívu, je nutné vybrať verziu podporovanú pre inštalovanú verziu Elasticsearchu.
wget https://artifacts.elastic.co/downloads/kibana/kibana-5.5.3-amd64.deb
dpkg -i kibana-5.5.3-amd64.deb
Spustenie služby
service kibana start
service kibana status
Konfiguračný súbor je umiestnenie
cat /etc/kibana/kibana.yml
Pre prístup cez web je nevyhnutné povoliť komunikáciu na čísle portu Kibanu štandardne je to port 5601.
iptables -A INPUT -m udp -p udp --dport 5601 -j ACCEPT
iptables -A INPUT -m tcp -p tcp --dport 5601 -j ACCEPT
Pre náhľad do Elasticsearchu je možné využívať služby poskytované Kibanou. V prvom kroku je nutné nastaviť ktoré indexy chceme prehľadávať. Ako index pattern je nutné nastaviť pre molocha všetko čo začína „session-“ a pre suricatu „suricata-“. Tieto nastavenia je možné meniť na karte Management.
Zdroje
CDMCS Cyber Defence Monitoring Course Suite