|
|
# bmIDS
|
|
|
-----------------
|
|
|
* Verzia: 2.3
|
|
|
* Stav verzie: vyvíjaná
|
|
|
* Autori:
|
|
|
Martin Ujlaky,
|
|
|
Ladislav Berta
|
|
|
* Licencia: GNU GPLv3
|
|
|
* Implemetačné prostredie: openjdk-6-jre-headless
|
|
|
* GIT: https://git.cnl.sk/monica/slameter_ids
|
|
|
* Trac: http://monica.trac.cnl.tuke.sk/query?verbose=1&component=bmIDS&order=status
|
|
|
* Changelog
|
|
|
* Používateľská príručka PDF
|
|
|
* Systémová príručka PDF
|
|
|
|
|
|
# **A.**
|
|
|
### **Stručný opis**
|
|
|
Program bmIDS predstavuje systém pre detekciu narušenia v počítačovej sieti. Jeho úlohou je spracovať údaje o prebiehajúcej komunikácii v sieti, vyhodnotiť prevádzku podľa vopred určených pravidiel a následne určiť mieru pravdepodobnosti prebiehajúceho útoku, resp. signalizovať anomálie. Zdrojom údajov pre systém bmIDS sú nástroje exportér (mybeem) a kolektor (JXColl), ktoré poskytuje informácie o komunikácii v sieti vo formáte správ protokolu IPFIX. Na prenos týchto správ v reálnom čase slúži aplikačné rozhranie ACP. Na vyhodnotenie prevádzky a detekciu jednotlivých útokov bmIDS používa fuzzy subsystémy.
|
|
|
|
|
|
Systém pozostáva z dvoch aplikácii. BmIDSanalyzer je konzolová aplikácia, ktorá sa spustí na serveri a neustále vyhodnocuje prevádzku v počítačovej sieti. Záznamy o kritickej prevádzke sa zapisujú a uchovávajú v databáze. Aplikácia zároveň môže odosielať údaje o vyhodnotenej prevádzke ďalšej aplikácii, ktorá beží na webovom serveri. Aplikácia ids je súčasťou webovej aplikácie SLAmeter, a umožňuje administrátorovi aktívne sledovať prevádzku a tiež zobraziť údaje o podozrivej prevádzke vo webovom prostredí.
|
... | ... | @@ -27,8 +12,20 @@ V aktuálnej verzii programu je detekovateľných 6 typov útokov. |
|
|
* TTL Expiry Flood - záplava paketmi ICMP protokolu typu Time exceeded - vypršal čas
|
|
|
* FIN Flood - záplava paketmi TCP protokolu s príznakom FIN
|
|
|
|
|
|
# **C.**
|
|
|
### **Systémové požiadavky**
|
|
|
## Informácie o projekte
|
|
|
---------------------
|
|
|
* **Verzia**: 2.3
|
|
|
* **Stav**: vyvíjaný
|
|
|
* **Autori**:
|
|
|
* **Martin Ujlaky**
|
|
|
* **Ladislav Berta**
|
|
|
* Licencia: GNU GPLv3
|
|
|
* Implemetačné prostredie:
|
|
|
* **openjdk-6-jre-headless**
|
|
|
|
|
|
|
|
|
## Systémové požiadavky
|
|
|
---------------------
|
|
|
* **Operačný systém:** Linux
|
|
|
* **Hardvér:**
|
|
|
* procesor: Intel Pentium III 1GHz alebo ekvivalent
|
... | ... | @@ -41,37 +38,101 @@ V aktuálnej verzii programu je detekovateľných 6 typov útokov. |
|
|
* **Webový server:**
|
|
|
* podľa požiadaviek webSLA
|
|
|
|
|
|
# **D.**
|
|
|
### **Závislosti**
|
|
|
## Závislosti
|
|
|
---------------
|
|
|
* Exportér
|
|
|
* Kolektor
|
|
|
* ACPapi
|
|
|
|
|
|
### **Iné**
|
|
|
## Iné
|
|
|
----------------
|
|
|
Spustenie bmIDS je možné po dodržaní postupnosti kolektor > exportér > bmIDS.
|
|
|
|
|
|
## Preklad zdrojových kódov
|
|
|
------------------
|
|
|
1. nainštalovať vývojárské prostredie NetBeans v7.0.1 a vyššie
|
|
|
2. pridáť v NetBeans -e repozitár pre bmIDSanalyzer
|
|
|
3. kliknúť pravým tlačidlom myši na projekt a vybrať možnosť preložiť zdrojové súbory (NetBeans uloží spustiteľný súbor v priečinku dist pracovného priečinka programu)
|
|
|
|
|
|
## Návod na inštaláciu
|
|
|
-----------------------
|
|
|
Aplikácia bmIDSanalyzer je závislá na exportovacom a zhromažďovacom procese. Preto je potrebné najprv nainštalovať exportér na server kde bude sledovaná sieťová prevádzka. Tiež je potrebná inštalácia kolektora JXColl verzie 3.9, ktorá bude slúžiť ako zdroj údajov pre bmIDSanalyzer. Kolektor vyžaduje aj inštaláciu databázy.
|
|
|
|
|
|
Súbory ktoré budú potrebné k inštalácii kolektora, databázy a aplikácie bmIDSanalyzer je možné stiahnuť zadaním príkazu do príkaového riadku:
|
|
|
|
|
|
```bash
|
|
|
sudo git clone https://git.cnl.sk/ladislav.berta/bmIDSv2-3.git -c http.sslVerify=false
|
|
|
```
|
|
|
|
|
|
V prípade ak git nie je nainštalovaný, treba ho nainštalovať príkazom:
|
|
|
|
|
|
```bash
|
|
|
sudo apt-get install git
|
|
|
```
|
|
|
|
|
|
Výsledkom bude adresár bmIDSv2-3 ktorý bude obsahovať aplikáciu bmIDSanalyzer a k nemu potrebné súbory, aplikáciu kolektora (deb ballíček) a skripty pre vytvorenie tabuliek v databáze.
|
|
|
|
|
|
V nasledujúcich krokoch je popísaný postup pre:
|
|
|
1. Inštalovanie exportéra mybeem.
|
|
|
2. Inštalovanie databázy PostgreSQL
|
|
|
3. Inštalácia databázy, ktorá je potrebná pre kolektor a aplikáciu bmIDSanalyzer v režime učenia.
|
|
|
4. Inštalácia samotného JXColl
|
|
|
5. Inštalácia samotnej aplikácie bmIDSanalyzer a webovej aplikácie nástroja bmIDS.
|
|
|
|
|
|
## 1. Inštalácia mybeem
|
|
|
------------------------------
|
|
|
Priama inštalácia deb balíčka je možná podľa nasledujúceho postupu (zdroj: mybeem):
|
|
|
Pozn.: v prípade manuálnej inštalácie sa treba pozrieť na stránku mybeem, ktorá obsahuje všetky potrebné informácie vrátane postupov inštalácie.
|
|
|
1. Pre úspešnú inštaláciu programu mybeem je potrebný jeho inštalačný deb balíček. Inštalácia sa prevedie nainštalovaním deb balíčka do systému. Pre úspešnú inštaláciu je potrebné mať v systéme nainštalované knižnice:
|
|
|
|
|
|
```bash
|
|
|
sudo apt-get install libpcap-dev libxml2-dev libssl-dev libsctp-dev libsctp-dev libssl0.9.8 libsctp-dev libxml2-utils gawk gcc autoconf build-essential libtool
|
|
|
```
|
|
|
### 2. Stiahnúť balík nDPI verzie 1.5.2:
|
|
|
```bash
|
|
|
wget https://git.cnl.sk/monica/slameter_exporter/raw/master/lib/nDPI_1.5.2.tar.gz --no-check-certificate
|
|
|
```
|
|
|
### 3. Postup inštalácie balíka nDPI verzie 1.5.2:
|
|
|
```bash
|
|
|
sudo su
|
|
|
tar zxvf nDPI_1.5.2.tar.gz
|
|
|
cd nDPI
|
|
|
sh autogen.sh
|
|
|
make
|
|
|
make install
|
|
|
echo "export LD_LIBRARY_PATH=\"/usr/local/lib:$LD_LIBRARY_PATH\"" >> ~/.bashrc
|
|
|
```
|
|
|
### 4. Stiahnutie zdrojových kódov:
|
|
|
```bash
|
|
|
wget https://git.cnl.sk/monica/slameter_exporter/repository/archive.tar.gz --no-check-certificate
|
|
|
```
|
|
|
### 5. Vykonanie prekladu:
|
|
|
```bash
|
|
|
tar zxvf archive.tar.gz
|
|
|
cd slameter_exporter.git/src/mybeem
|
|
|
make
|
|
|
```
|
|
|
### 6. Spustenie programu:
|
|
|
```bash
|
|
|
sudo ./beem -c config.xml
|
|
|
```
|
|
|
|
|
|
## ---------------------------------------------------------------------------
|
|
|
Po úspešnom nainštalovaní exportéra je potrebné nainštalovať kolektor a databázu podľa postupu uvedeného nižšie.
|
|
|
|
|
|
|
|
|
Komponent (napr. exporter/kolektor/analyzer)
|
|
|
## Inštalácia PostgreSQL a Javy pod Ubuntu 14.04
|
|
|
------------------------------
|
|
|
Nainštalovať PostgreSQL 9.2, Java 7 a ďalšie potrebné balíky:
|
|
|
```bash
|
|
|
sudo apt-get update
|
|
|
```
|
|
|
|
|
|
* **A** strucny opis podla IPFIX spec. Co to je, naco sluzi, ako funguje, vseobecna graficka architektura, hlavne komponenty
|
|
|
```bash
|
|
|
sudo apt-get install postgresql libpq-dev postgresql-contrib openjdk-7-jre-headless lksctp-tools
|
|
|
```
|
|
|
|
|
|
* **B** vyvyjany druh skupinou MONICA, tj. mybeem, jxcoll, eval/web i
|
|
|
* **B.1** opat, konkretna graficka architektura, opis jednotlivych casti/modulov/podkomponentov
|
|
|
* **B.2** v ramci architekt. opisat aj moduly (ak su) napr. v pripade eval tam je kopec
|
|
|
* **C** systemove specifikacie (na spustenie/preklad)
|
|
|
* **D** zavislost (co potrebujem rozbehat aby mi to fungovalo, aky iny komponent, ake kniznice, baliky, db, sluzbu, atd.)
|
|
|
* **E** Instalacia
|
|
|
* **E.1** Instalacia pre vyvoj. Sem pojde instalacia/konfiguracia/nastavenie pre vyvoj s tym, ze sa niekde umiestny aj developerska verzia (napr. zdrojaky pre Netbeans IDE)
|
|
|
* **E.2** Instalacia pre pouzivanie. Tu treba dat podrobny opis, ako sa to instaluje spolu s kazdym dalsim komponentom, na ktorom zavisi (tu sa dohodnite, a rozdelte ulohy).
|
|
|
* **E.2.1** Instalacia cez DEB balik/skript
|
|
|
* **E.2.1** Kompilacia/manualna instalacia -- kam co treba nakopirovat, prepisat, spustit, make-nut, atd.
|
|
|
* **E.3.1** Spustenie produktu/programu/vystupu s tym ze sa opise aj poradie ak je potrebne najprv nieco ine spustit. Resp. pouzitie komponentu/programu/vystupu...
|
|
|
* **E.3.2** Opis parametrov/prepinacov pri spusteni (ak je)
|
|
|
* **E.3.3** Opis konfig. suboru (ak je)![10_3_architektura_navrh]
|
|
|
Nastaviť Javu 7 ako defaultný Java interpréter. Po zadaní nasledovného príkazy vyberieme správnu verziu Javy (7). Nastavenú verziu možno overiť príkazom ```bash java -version ```:
|
|
|
|
|
|
Format: ![Alt Text](https://git.cnl.sk/uploads/monica/slameter_ids/563189a4d3/10_3_architektura_navrh.png 50%) |
|
|
\ No newline at end of file |
|
|
```bash
|
|
|
sudo update-alternatives --config java
|
|
|
``` |