Menu Zavrieť

Moloch – Cyber Defense Monitoring Course Suite

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

Graf

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.

Kibana

Zdroje

CDMCS Cyber Defence Monitoring Course Suite

Rate this post

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

The reCAPTCHA verification period has expired. Please reload the page.