Menu Zavrieť

Anonymizácia datasetu KIS 2018

Anonymizácia datasetu KIS 2018

  • Autori : Tomáš Mokoš, Miroslav Kohútik

KIS 2018 je sieťový dataset vytvorený Katedrou Informačných sietí na Fakulte Riadenia a Informatiky Žilinskej Univerzity. Sieťové datasety slúžia na trénovanie sieťových bezpečnostných sytémov, menovite IDS a IPS. Tieto systémy musia vedieť rozpoznať bežnú neškodnú prevádzku od útočnej, preto musia sieťové datasety čo najlepšie odrážať reálnu prevádzku obsahujúcu obidva druhy prevádzky.

Vzhľadom na to, že sme chceli dataset KIS 2018 publikovať na verejnosti, bolo potrebné aby sme z neho odstránili všetky citlivé informácie, ktoré by nám mohli uškodiť ak by boli použité proti nám. Na tento účel sme využili nástroj TraceWrangler.

Nastavenie jazyka per aplikáciu vo Win 10

Win OS umožňuje nastavovať rozdielné jazyky per aplikáciu. Takže ak máme v systéme viac jazykov a ich klávesníc, napr. anglickú a slovenskú, je možné nastaviť si nie jeden jazyk pre všetky spustené aplikácie, ale iný jazyk per otvorenú aplikáciu. Napríklad tak pre word môžeme mať slovenský jazyk a slovenské rozloženie klávesnice, ale pre inú apku, napr. pre prehliadač, angličtinu.

Spôsob nastavenia je jednoduchý, ale keďže sa to nerobí často, zvyknem naň zabúdať. Problém tiež je, že Win si to zvyknú z času na čas meniť na default, t.j. jeden jazyk pre všetko.

Prepojenie Moloch-Suricata


Prepojenie Moloch-Suricata

  • Autori : Tomáš Mokoš, Miroslav Kohútik

V tomto článku si ukážeme ako prepojiť nástroj na odchytávanie sieťovej prevádzky Moloch s nástrojom na detekciu narušenia bezpečnosti Suricata.

Návody na inštaláciu Molocha a Suricaty môžete nájsť tu a tu.

Nástroj Moloch archivuje sieťovú prevádzku, ku ktorej následne umožňuje rýchly a prehľadný prístup, avšak sám o sebe neposkytuje bezpečnostné opatrenia pre prevádzku, ktorú sleduje. Na druhej strane, IDS Suricata dozerá na sledovanú prevádzku a vytvára značky, ktoré informujú o bezpečnostných hrozbách, ale nedisponuje grafickým rozhraním na ich zobrazenie.

Od verzie 1.5 (vydanej 16.7.2018), Moloch podporuje plugin pre import alertov, ktoré generuje Suricata. Suricata spolu s Molochom musia byť spustené na tom istom zariadení. Dáta, ktoré vygenerovala Suricata sú prístupné vo webovom rozhraní Molocha v záložkách Sessions a SPI View. Všetky spojenia, ktoré obsahujú dáta Suricaty je možné nájsť dotazom suricata.signature == EXISTS! vo vyhľadávacom poli Molocha. Toto riešenie nezahŕňa žiadne špeciálne používateľské rozhranie pre Suricatu v Molochu, iba pridáva nové polia do dát vygenerovaných Molochom. Na pridanie pluginu je potrebné upraviť konfiguračný súbor Molocha, pridať v ňom suricata.so do zoznamu pluginov a špecifikovať cestu k súboru eve.json, do ktorého Suricata zapisuje alerty.

Do konfiguračného súboru Molocha, ktorý sa nachádza v /data/moloch/etc/config.ini pridáme nasledujúce riadky:

pluginsDir=/data/moloch/plugins
plugins= suricata.so;
suricataAlertFile=/usr/local/var/log/suricata/eve.json
suricataExpireMinutes=60

Následne nám v záložkách sessions a SPI view pribudne položka Suricata.
Suricata sessionsSuricata SPI View

Zdroj:

Scirius CE – Inštalácia


Scirius CE – Inštalácia

  • Autor: Miroslav Kohútik
  • Operačný systém : Ubuntu 16.04

Scirius Community Edition je webové rozhranie určené pre správu Suricata pravidiel. Stará sa o súbor rules a aktualizácie s ním spojených súborov.

V tomto návode si ukážeme ako nainštalovať Scirius Community Edition na Operačnom systéme Ubuntu 16.04.
Pred tým než začneme inštalovať Scirius CE, musíme mať nainštalovaný IDS Suricata. Návod na inštaláciu Suricaty sa nachádza tu.

Nainštalujeme si manažéra pre python balíčky a hlavičkové súbory pre jazyk python

sudo apt-get install python-pip python-dev

Stiahneme si Scirius repozitár z GitHubu

git clone https://github.com/StamusNetworks/scirius.git

Presunieme sa do priečinku, ktorý sme práve stiahli a nainštalujeme z neho potrebné závislosti

cd scirius
sudo pip install -r requirements.txt

Stiahneme si modul na monitorovanie zmien v súborovom systéme pyinotify. Tento modul je potrebný pre reštartovanie Suricaty cez Scirius

sudo pip install pyinotify

Stiahneme si modul Gitdb na čítanie a zapisovanie do git repozitárov

sudo pip install gitdb

Nainštalujeme si npm

sudo apt-get install npm

Stiahneme si webpack verziu 3.11

sudo npm install -g npm@latest webpack@3.11

Nainštalujeme Scirius

npm install

Predošlý príkaz vytvoril priečinok pre Hunt komponent sciriusu. Presunieme sa do priečinka hunt, nainštalujeme ho a pripravíme ho na použitie

cd hunt
npm install
npm run build

Spustenie Sciriusu

Z priečinku scirius inicializujeme Django databázu

python manage.py migrate

Vytvoríme účet pre superusera

python manage.py createsuperuser

Pred spustením aplikácie musíme najprv vytvoriť balíčky modulov tým, že spustíme webpack (tento krok je potrebné zopakovať po každej aktualizácii kódu)

sudo webpack

Ak chceme spustiť Scirius tak, aby bol prístupný iba na lokálnom zariadení na adrese localhost:8000

sudo python manage.py runserver

Ak chceme aby Scirius počúval na adrese, ktorá je prístupná z vonkajšej siete, musíme ju pridať do zoznamu ALLOWED_HOSTS v súbore settings.py. Následne môžeme spustiť Scirius príkazom

python manage.py runserver x.x.x.x:8000

Zdroj:

Zabbix 4.0 – Inštalácia


Zabbix 4.0 – Inštalácia

  • Autor: Miroslav Kohútik
  • Operačný systém : Ubuntu 16.04

Tento návod obsahuje jednotlivé kroky inštalácie Zabbixu verzie 4.0 na operačnom systéme Ubuntu 16.04.

Zabbix je bezplatný open-source monitorovací software. Dokáže monitorovať množstvo metrík ohľadom stavu spravovanej siete a v nej sa nachádzajúcich zariadení a služieb (vrátane virtuálnych zariadení).

Zabbix využíva služby webového servera apache, SQL databázy (v našom prípade MySQL) a jazyk PHP na zobrazenie webového rozhrania.
Pred inštaláciou samotného Zabbixu si najprv nainštalujeme spomenuté komponenty.

Aktualizujeme zoznam dostupných balíčkov pre APT a nainštalujeme si postupne apache server, MySQL server, jazyk PHP a jeho potrebné komponenty

sudo apt-get update
sudo apt-get install apache2 libapache2-mod-php
sudo apt-get install mysql-server
sudo apt-get install php php-mbstring php-gd php-xml php-bcmath php-ldap php-mysql

Teraz ešte musíme manuálne nastaviť časovú zónu v konfiguračnom súbore PHP, ktorý sa nachádza v /etc/php/VERZIA_PHP/apache2/php.ini. Nájdeme v ňom sekciu [Date] a nastavíme parameter date.timezone podľa časovej zóny, v ktorej sa nachádzame. Zoznam platných časových zón nájdeme tu.
nastavenie časovej zóny v php.ini

Stiahneme a nainštalujeme si balíček s konfiguračnými súbormi APT repozitára a znovu aktualizujeme zoznam dostupných balíčkov. My sme použili operačný systém Ubuntu 16.04, pre inštaláciu na Ubuntu 14.04 treba nahradiť v príkazoch reťazec „xenial“ reťazcom „trusty“ a pre Ubuntu 18.04 reťazcom „bionic“.

wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-2+xenial_all.deb
sudo dpkg -i zabbix-release_4.0-2+xenial_all.deb
sudo apt-get update

Nainštalujeme centrálny komponent Zabbix server a Zabbix frontend na zariadení, na ktorom chceme zbierať monitorovacie dáta

sudo apt-get install zabbix-server-mysql
sudo apt-get install zabbix-frontend-php

Vytvoríme MySQL Databázu a používateľa pre Zabbix. Prvým príkazom vstúpime do príkazového riadku MySQL, zvyšné tri sú MySQL príkazy.

mysql -u root -p
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by '<password>';
quit;

Naimportujeme inicializačné dáta do databázy:

zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql - uzabbix -p zabbix

Otvoríme konfiguračný súbor Zabbixu a doplníme doňho nasledujúce riadky. V poslednom riadku namiesto napíšeme heslo, ktoré sme nastavili pre MySQL databázu.

sudo nano /etc/zabbix/zabbix_server.conf
    DBHost=localhost
    DBName=zabbix
    DBUser=zabbix
    DBPassword=<password>

Zapneme Zabbix server

sudo systemctl start zabbix-server.service

Ak chceme aby sa Zabbix spustil pri zapnutí systému použijeme nasledujúci príkaz

update-rc.d zabbix-server enable

Reštartujeme Apache web server

sudo systemctl restart apache2.service

Teraz by sme už mali mať prístupné webové rozhranie Zabbixu na adrese http://IP_ADDRESS_OF_INTERFACE/zabbix/.

Nainštalujeme a spustíme Zabbix agenta na všetkých zariadeniach, ktoré chceme monitorovať

sudo apt-get install zabbix-agent
sudo systemctl start zabbix-agent.service

Zdroj:

Monitorovanie servera s elastic stack


Monitorovanie servera s Elastic Stack

  • Autor: Miroslav Kohútik
  • Verzia Elastic Stack: 6.7.0
  • Operačný systém : Ubuntu 16.04

Elastic Stack je skupina produktov od spoločnosti Elastic postavených okolo databázy Elastisearch, ktoré sú navrhnuté na prácu s dátami z akéhokoľvek zdroja.

V tomto článku si ukážeme ako monitorovať stav služby Elasticsearch a záťaž servera za použitia služieb Elastic Stack.

Pred tým než začneme, nainštalujeme si Elasticsearch, návod nájdeme v sekcii Príprava pred inštaláciou na začiatku tohto článku.

X-pack

X-pack je rozšírenie pre Elastic Stack, ktoré poskytuje bezpečnostné, výstražné, monitorovacie a hlásiace služby v jednom balíčku. Od Elastic Stack verzie 6.3 je X-Pack súčasťou každého komponentu Elastic Stack a tým odpadá predošlá nutnosť osobitnej inštalácie.

Kibana

Kibana je komponent Elastic Stacku pre vizualizáciu dát z Elasticsearchu. Pre potreby monitorovania sprístupňuje monitorovacie dáta, ktoré generuje X-Pack.

Inštalácia Kibany

Stiahneme a nainštalujeme si verejný GPG kľúč

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

Stiahneme si inštalačný balíček Kibany

wget https://artifacts.elastic.co/downloads/kibana/kibana-6.7.0-amd64.deb

Rozbalíme a nainštalujeme balíček s Kibanou

sudo dpkg -i kibana-6.7.0-amd64.deb
Konfigurácia Kibany

Teraz by sme už mali mať Kibanu pripravenú na použitie, avšak iba na lokálnom zariadení. Ak sa chceme na Kibanu pripájať zo vzdialeného zariadenia, musíme ešte nastaviť IP adresu, na ktorej chceme mať dostupné webové rozhranie Kibany.

Otvoríme konfiguračný súbor kibana.yaml

sudo nano /etc/kibana/kibana.yaml

V súbore nájdeme riadok #server.host: “localhost”, odkomentujeme ho (vymažeme znak “#” na začiatku) a prepíšeme ho na server.host: “x.x.x.x”, kde x.x.x.x je IP adresa zariadenia, na ktorom práve inštalujeme Kibanu. V prípade, že náš Elasticsearch beží na inej adrese alebo porte ako localhost:9200, musíme v tomto súbore nasmerovať Kibanu na správnu IP adresu alebo port.

kibana.yaml

Ak chceme aby sa Kibana spustila pri zapnutí servera spustíme nasledujúce dva príkazy

sudo /bin/systemctl daemon-reload
sudo /bin/systemctl enable kibana.service

Teraz už môžeme Kibanu spustiť nasledovným príkazom

sudo systemctl start kibana.service

Nasledujúcim príkazom skontrolujeme status Kibany

sudo systemctl status kibana.service

K webovému rozhraniu Kibany pristupujeme cez prehliadač zadaním kombinácie IP adresy servera a defaultného portu Kibany: x.x.x.x:5601.
K monitorovacím dátam sa dostaneme v záložke monitoring. Pri prvom spustení sa nám zobrazí informácia o tom, že monitorovanie je momentálne vypnuté, zapneme ho kliknutím na tlačidlo “Turn on monitoring”.

Záložka monitoring pri prvom spustení

Stav služby Elasticsearch na serveri potom môžeme sledovať kliknutím na “Nodes”, kde sa nám zobrazí zoznam zariadení, na ktorých je distribuovaný Elasticsearch.

Záložka monitoring pri aktívnom nasadení

Metricbeat

X-pack zbiera len štatistiky o stave jednotlivých komponentov Elastic Stack. Na monitorovanie stavu celkového zaťaženia servera je v Elastic Stacku určený komponent Metricbeat.

V prípade, že máme funkčnú Kibanu, inštalácia Metricbeatu je jednoduchá.

Stiahneme a nainštalujeme Metricbeat balíček

curl -L -O https://artifacts.elastic.co/downloads/beats/metricbeat/metricbeat-6.7.0-amd64.deb
sudo dpkg -i metricbeat-6.7.0-amd64.deb

Upravíme súbor /etc/metricbeat/metricbeat.yml pridaním nasledujúcich riadkov

setup.kibana:
    host: "192.168.1.186:5601"
output.elasticsearch:
    hosts: ["localhost:9200"]

Povolíme systémový modul, ktoý umožňuje Metricbeatu zbierať monitorovacie dáta

sudo metricbeat modules enable system

Nakonfigurujeme Metricbeat:

sudo metricbeat setup

Spustíme Metricbeat:

sudo systemctl start metricbeat.service

Teraz by sme už mali vidieť štatistiky o stave servera v záložke dashboard zobrazením “[Metricbeat System] Host overview”.

Stav servera

Zdroje:

Moloch upgrade


Moloch Upgrade

  • Autori: Tomáš Mokoš, Miroslav Kohútik

Upgrade Molocha na najnovšiu verziu nie je možný z akejkoľvek verzie. Pri niektorých starších verziách vyžaduje postupnú inštaláciu novších verzií v presnom poradí.

Upgrade na Moloch 1.1.0

Najstaršia verzia Molocha, ktorú sme mali nasadenú bola verzia 0.50.
Upgrade Molocha z verzie 0.50 na verziu 1.0 a vyššie vyžaduje, vzhľadom na veľké zmeny vo verzii 1.0, reindexovanie všetkých session dát. Reindexovanie sa deje na pozadí  po upgrade a preto trvá iba chvíľu, kým je server znova online.

Medzi veľké zmeny patria najmä:

  • Všetky názvy polí boli premenované a analyzované polia boli vymazané.
  • Kódy krajín boli skrátené z 3 znakov na 2 znaky.
  • Značky, ktoré boli pridané pred verziou 0.14.1 nebudú premigrované.
  • Plná podpora IPv6 pomocou Elasticsearch IP type.

Stiahneme balíček s verziou 1.1.0

Priradíme mu práva:

chmod +x moloch_1.1.0-1_amd64.deb

Vypneme všetky súčasti molocha:

service molochcapture stop
service molochviewer stop

Nainštalujeme Moloch v1.1.0:

dpkg -i moloch_1.1.0-1_amd64.deb

Na všetkých uzloch spustíme /data/moloch/bin/moloch_update_geo.sh , ktorý nám stiahne a aktualizuje nové mmdb style maxmind súbory.

Spustíme db.pl http://localhost:9200 upgrade , pre upgrade databázy.

Zapneme súčasti Molocha:

service molochcapture start
service molochviewer start

Pokiaľ vznikne problém a súčasti budú mať problém sa spustiť, je potrebné skontrolovať logy capture a viewera nachádzajúce sa v /data/moloch/logs/capture.log a /data/moloch/logs/viewer.log.

Upgrade na Moloch 1.5.3 a vyššie

Pre upgrade na Moloch 1.5 a vyššie musíme najprv upgradovať Moloch na verziu 1.0 alebo 1.1 (1.1.1 je odporúčaná). Taktiež, všetky reindexovacie operácie musia byť dokončené.

Vypneme capture a viewer:

service molochcapture stop
service molochviewer stop

Stiahneme balíček s verziou 1.5.3

Priradíme mu práva a rozbalíme ho:

chmod +x moloch_1.5.3-1_amd64.deb
dpkg -i moloch_1.5.3-1_amd64.deb

Pre clean inštaláciu spustíme:

/data/moloch/db.pl http://localhost:9200 init

Ak chceme len upgrade:

/data/moloch/db.pl http://localhost:9200 upgrade

Ak sme sa rozhodli pre clean inštaláciu, musíme znovu pridať používateľa, pretože ho init script vymaže:

/data/moloch/bin/moloch_add_user.sh admin "Admin User" THEPASSWORD --admin

Spustenie offline monitoringu priečinku:

exec /data/moloch/bin/moloch-capture -c /data/moloch/etc/config.ini --host moloch3 -m -R /data/moloch/monitor/

Spustenie viewera:

service molochviewer start

Pokiaľ majú súčasti problém sa spustiť je potrebné prezrieť logy:

/data/moloch/logs/capture.log
/data/moloch/logs/viewer.log

Zdroj:
Moloch FAQ – Upgrading Moloch

Moloch v1.7.0 – Inštalácia systému

Inštalácia systému Moloch

  • Autor : Miroslav Kohútik
  • Testovaná verzia : 1.7.0
  • Operačný systém : Ubuntu 16.04

Inštalácia Molocha nie je triviálna, preto sme pripravili tento návod ako nasadiť systém Moloch v cloudovom prostredí.

Príprava pred inštaláciou

Pred inštaláciou samotného Molocha musíme nainštalovať databázu Elasticsearch a vykonať nasledovné zmeny v konfigurácii operačného systému.