3. Elastic stack: security naplók elemzése. Dashboardok

3. Elastic stack: security naplók elemzése. Dashboardok

A korábbi cikkekben kicsit megismerkedtünk az ELK stack-kel és a Logstash konfigurációs fájl beállításával a naplóelemző számára, ebben a cikkben a legfontosabb dologra térünk át az elemzés szempontjából: arra, amit látni szeretnél a rendszertől, és amiért mindez létrejött — ezek a grafikonok és táblázatok, amelyek össze vannak kapcsolva a dashboardokkal. Ma közelebbről megismerkedünk a vizualizáló rendszerrel, Kibanamegnézzük, hogyan készíthetünk grafikonokat, táblázatokat, és ennek eredményeként felépítünk egy egyszerű dashboardot a Check Point tűzfal naplóiból.

A kibanával való munka első lépése egy index mintázat. Logikailag ez az indexek közötti logikai alapelv. Természetesen ez kizárólag arról szól, hogy a Kibana kényelmesebben kereshessen információkat az összes index között egyszerre. Ez úgy van beállítva, hogy egy string összehasonlítással, például “checkpoint-*” és az index nevével történik. Például a „checkpoint-2019.12.05” megfelel a mintának, míg a csak „checkpoint” már nem. Külön említést érdemel, hogy a keresés során nem lehet egyszerre különböző index mintákra keresni, később a következő cikkekben látni fogjuk, hogy az API-kérések vagy az index név alapján, vagy éppen a mintázaton keresztül történnek, a kép kattintható:

3. Elastic stack: security naplók elemzése. Dashboardok

Ezután ellenőrizzük a Discover menüben, hogy minden napló indexelve van, és a helyes elemző be van állítva. Ha bármilyen eltérést találunk, például a típus megváltoztatása stringről egész számra, szerkeszteni kell a Logstash konfigurációs fájlt, ennek eredményeként az új naplók helyesen fognak rögzülni. Ahhoz, hogy a régi naplók a módosítás előtt a kívánt formátumban jelenjenek meg, csak a reindexelési folyamat segít, a következő cikkekben ezt a műveletet részletesebben fogjuk megvizsgálni. Biztosítsuk, hogy minden rendben van, a kép kattintható:

3. Elastic stack: security naplók elemzése. Dashboardok

A naplók a helyükön vannak, így elkezdhetjük a dashboardok felépítését. A biztonsági termékek dashboardjaiból származó analitika alapján megérthetjük a szervezeti információbiztonság állapotát, vizuálisan láthatjuk a jelenlegi politika sebezhető pontjait, és a jövőben kidolgozhatjuk a megszüntetésük módjait. Készítünk egy kicsi dashboardot, használva néhány vizualizáló eszközt. A dashboard 5 komponensből fog állni:

  1. táblázat az összes napló számának összesítésére a blade-ek alapján
  2. táblázat a kritikus IPS aláírásokról
  3. kördiagram a Threat Prevention eseményeiről
  4. diagram a legnépszerűbb weboldalak látogatottságáról
  5. diagram a legveszélyesebb alkalmazások használatáról

A vizualizációs alakzatok létrehozásához lépjünk a menübe Visualize, és válasszuk ki a kívánt alakzatot, amelyet meg akarunk alkotni! Haladjunk lépésről lépésre.

Tábla a bleydekre vonatkozó logok összesítő számának kiszámításához

Ehhez válasszuk ki az alakzatot Adattábla, belépünk a grafikonok létrehozásának eszközébe, bal oldalon az alakzat beállításait adjuk meg, jobbra pedig azt, hogy jelenlegi beállításaink mellett hogyan fog kinézni. Először bemutatom, hogyan fog kinézni a kész tábla, ezt követően pedig végigmegyünk a beállításokon, a kép kattintható:

3. Elastic stack: security naplók elemzése. Dashboardok

Részletesebb alakzatbeállítások, a kép kattintható:

3. Elastic stack: security naplók elemzése. Dashboardok

Nézzük át a beállításokat.

Először is beállítandó metrika, ez az érték, amely szerint az összes mezőt aggregálni fogjuk. A metrikák az adott módon dokumentumokból kinyert értékek alapján számítódnak. Az értékek általában a mezők dokumentumból, de script-ekkel is generálhatók. Ebben az esetben ezt az értéket állítjuk be Aggregation: Count (a logok összes száma).

Ezt követően a táblázatot szegmensek (mezők) szerint osztjuk fel, azaz ezen beállítás segítségével történik a metrika kiszámítása. E funkciót a Buckets beállítás látja el, amely kétféleképpen konfigurálható:

  1. split rows — oszlopok hozzáadása, és a táblázat későbbi sorokra való felosztása
  2. split table — felosztás több táblázatra egy adott mező értékei szerint.

A buckets. Több felosztást is hozzáadhatunk, hogy több oszlopot vagy táblázatot készítsünk, a korlátok inkább logikai természetűek. Az aggregációnál kiválaszthatjuk, hogy milyen módon történjen a felosztás a szegmensekre: ipv4 tartomány, dátumtartomány, Terms stb. A legérdekesebb választás a Terms és Significant Terms, a felosztás az index egy adott mezőjének értékei alapján történik, a közöttük lévő különbség a visszaadott értékek számában és azok megjelenítésében rejlik. Mivel a táblázatot a bleydek neve szerint szeretnénk felosztani, kiválasztjuk a mezőt — product.keyword és megadjuk a méretet 25 visszaadott értékben.

Az Elasticsearch-ban sorok helyett 2 típusú adat létezik — szöveg és kulcsszó. Ha teljes szöveges keresést szeretne végezni, a text típust kell használnia, ami nagyon hasznos, ha saját keresőszolgáltatást ír, például szeretnék megtalálni egy szó említését egy mező (szöveg) konkrét jelentésében. Ha csak pontos egyezést szeretne, a keyword típust kell használnia. A keyword adattípust olyan mezőknél is érdemes használni, amelyek rendezést vagy aggregálást igényelnek, tehát az esetünkben.

Ennek eredményeként az Elasticsearch számolja a logok számát egy adott idő alatt, aggregálva a product mező értékét. A Custom Label mezőben adjuk meg az oszlop nevét, amely meg fog jelenni a táblázatban, beállítjuk az időtartamot, ameddig összegyűjtjük a logokat, elindítjuk a vizualizációt — a Kibana küld egy lekérdezést az elasticsearch-nek, várja a választ, majd vizualizálja az adatokat. A táblázat készen áll!

Kördiagram a Threat Prevention eseményekről

Különös érdeklődést mutat az információ, hogy hány reakció van a hozzávetőleges arányban detect és prevent a kiberbiztonsági eseményekkel kapcsolatosan a jelenlegi biztonsági politikában. Ilyen esetben jól mondható, hogy a kördiagram megfelelő. Válasszuk a Visualize opciót — Pie chart. A metrikában az aggregációt a logok számával is beállítjuk. A buckets mezőbe a Terms => action legyen beállítva.

Úgy tűnik, minden rendben van, de az eredmények minden blade-re vonatkoznak, tehát csak azon blade-eket kell kiszűrnünk, amelyek a Threat Prevention keretein belül működnek. Ezért mindenképpen beállítjuk a szűrőt hogy csak az információkat keressük azokkal a blade-ekkel kapcsolatban, amelyek a kiberbiztonsági eseményekért felelnek — product: („Anti-Bot” VAGY „New Anti-Virus” VAGY „DDoS Protector” VAGY „SmartDefense” VAGY „Threat Emulation”). A kép kattintható:

3. Elastic stack: security naplók elemzése. Dashboardok

És további részletes beállítások, a kép kattintható:

3. Elastic stack: security naplók elemzése. Dashboardok

Táblázat az IPS eseményekről

Ezután a kiberbiztonság szempontjából nagyon fontos az események megtekintése és ellenőrzése a blade-en Az IPS Blade hibát okozhat a szabályzat telepítésekor az NGFW-don, ha túl sok aláírást használsz. A Check Point szerint és Fenyegetés Emanáció, akik nem blokkolódnak a jelenlegi politikák szerint, hogy a jövőben vagy átválthassuk a szignatúrát prevent állapotba, vagy ha a forgalom érvényes — ne ellenőrizzük a szignatúrát. A táblázatot ugyanúgy hozzuk létre, mint az első példánál, csak azzal a különbséggel, hogy több oszlopot hozunk létre: protections.keyword, severity.keyword, product.keyword, originsicname.keyword. Mindenképpen beállítunk egy szűrőt, hogy csak az információkat keressük azokkal a blade-ekkel kapcsolatban, amelyek a kiberbiztonsági eseményekért felelnek — product: ( „SmartDefense” VAGY „Threat Emulation”). A kép kattintható:

3. Elastic stack: security naplók elemzése. Dashboardok

További részletes beállítások, a kép kattintható:

3. Elastic stack: security naplók elemzése. Dashboardok

Diagramok a leglátogatottabb weboldalakról

Ehhez létrehozunk egy alakzatot — Vertikális oszlop. A metrikát szintén a count (Y tengely) segítségével használjuk, míg az X tengelyen a látogatott weboldalak neveit — "appi_name"-t fogjuk használni. Itt van egy kis trükk: ha a beállításokat az aktuális verzióval indítjuk, akkor az összes weboldal egy színnel fog jelölve lenni a grafikonon, ezért hogy színesebbé tegyük őket, egy extra beállítást használunk — a "split series"-t, amely lehetővé teszi, hogy a már elkészült oszlopot több értékre osszuk, természetesen a választott mezőtől függően! Ezt az osztást használhatjuk egy színes oszlopként az értékek szerint stacked módban, vagy normál módban, hogy több oszlopot hozzunk létre az X tengely egy adott értéke szerint. Ebben az esetben itt ugyanazt az értéket használjuk, mint az X tengelyen, ami lehetővé teszi számunkra, hogy az összes oszlopot különböző színűre fessük, a jobb felső sarokban színekkel lesznek megjelölve. A szűrőben beállítjuk — product: "URL Filtering" annak érdekében, hogy csak a látogatott weboldalakra vonatkozó információt lássuk, a kép kattintható:

3. Elastic stack: security naplók elemzése. Dashboardok

Beállítások:

3. Elastic stack: security naplók elemzése. Dashboardok

Diagram a legveszélyesebb alkalmazások használatáról

Ehhez létrehozunk egy alakzatot — Vertical Bar. A metrikát szintén a count (Y tengely) segítségével használjuk, míg az X tengelyen a használt alkalmazások neveit — "appi_name"-t fogjuk használni. A legfontosabb a szűrő beállítása — product: "Application Control" AND app_risk: (4 OR 5 OR 3 ) AND action: "accept". A naplókat az Application Control blade segítségével szűrjük, csak azokat a weboldalakat vesszük figyelembe, amelyeket Critical, High, Medium kockázatú weboldalként kategorizáltak, és csak abban az esetben, ha ezekhez a weboldalakhoz a hozzáférés engedélyezett. A kép kattintható:

3. Elastic stack: security naplók elemzése. Dashboardok

Beállítások, kattintható:

3. Elastic stack: security naplók elemzése. Dashboardok

Irányítópult

A műszerfalak megtekintése és létrehozása külön menüpontban található — Mérőműsor. Itt minden egyszerű: létrehozunk egy új műszerfalat, hozzáadjuk a vizualizációt, elhelyezzük a helyükre, és ennyi!

Létrehozunk egy műszerfalat, amely alapján megérthetjük az információbiztonság alapvető helyzetét a szervezetben, természetesen csak a Check Point szintjén, a kép kattintható:

3. Elastic stack: security naplók elemzése. Dashboardok

Ezekből a grafikonokból megérthetjük, hogy mely kritikus aláírások nincsenek blokkolva a tűzfalon, hová járnak a felhasználók, és melyek a legveszélyesebb alkalmazások, amelyeket használnak.

Zárás

Megvizsgáltuk a Kibana alapvető vizualizációs lehetőségeit és létrehoztunk egy műszerfalat, de ez csak a kezdet. A tanfolyam következő részében külön foglalkozunk a térképek beállításával, az elasticsearch rendszer működésével, megismerkedünk az API lekérdezésekkel, az automatizálással és még sok mással!

Úgyhogy kövessétek az frissítéseket (Telegram, Facebook, VK, TS Solution Blog), Yandex.Zen.

Forrás: habr.com

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster