1. Elastic stack: analiza jurnalelor de securitate. Introducere

1. Elastic stack: analiza jurnalelor de securitate. Introducere

Având în vedere încheierea vânzărilor în Rusia a sistemului de logare și analiză Splunk, a apărut întrebarea cu ce poate fi înlocuit această soluție? După ce am investit timp în cunoașterea diferitelor soluții, m-am oprit asupra unei soluții pentru bărbați - «stiva ELK». Acest sistem necesită timp pentru configurare, dar în cele din urmă se poate obține un sistem foarte puternic pentru analiza stării și reacția operativă la incidentele de securitate informațională din organizație. În acest ciclu de articole, vom explora funcțiile de bază (sau poate nu) ale stivei ELK, vom analiza cum se pot parsa jurnalele, cum se construiesc graficele și tablourile de bord, și ce funcții interesante se pot realiza folosind jurnalele de la firewallul Check Point sau scannerul de securitate OpenVas. Pentru început, să vedem ce este de fapt - stiva ELK și din ce componente este alcătuită.

«stiva ELK» — este un acronim pentru trei proiecte de cod sursă deschis: Elasticsearch, Logstash și Kibana. Este dezvoltat de compania Elastic împreună cu toate proiectele conexe. Elasticsearch este nucleul întregului sistem, care combină funcții de bază de date, căutare și analiză. Logstash este un conector de procesare a datelor pe partea serverului, care primește date din mai multe surse simultan, parsează jurnalul și apoi îl trimite în baza de date Elasticsearch. Kibana permite utilizatorilor să vizualizeze datele folosind diagrame și grafice în Elasticsearch. De asemenea, prin Kibana se poate administra baza de date. Mai departe, vom examina mai detaliat fiecare sistem în parte.

1. Elastic stack: analiza jurnalelor de securitate. Introducere

Logstash

Logstash este un utilitar pentru procesarea evenimentelor de jurnal din diverse surse, care permite extragerea câmpurilor și valorilor acestora din mesaje, precum și configurarea filtrării și editării datelor. După toate manevrele, Logstash redirecționează evenimentele către stocarea finală a datelor. Utilitarul se configurează doar prin fișiere de configurare.
O configurație tipică logstash constă din unul sau mai multe fișiere care includ mai multe fluxuri de informație (input), mai multe filtre pentru aceste informații (filter) și mai multe fluxuri de ieșire (output). Aceasta arată ca unul sau mai multe fișiere de configurare, care în cea mai simplă variantă (care nu face nimic) arată astfel:

input {
}

filter {
}

output {
}

În INPUT configurăm pe ce port vor veni logurile și prin ce protocol, sau din ce folder să citim fișierele noi sau fișierele care sunt în continuare scrise. În FILTER configurăm parser-ul logurilor: analiza câmpurilor, editarea valorilor, adăugarea unor noi parametrii sau eliminarea celor existente. FILTER este un câmp pentru gestionarea mesajului care vine pe Logstash, având o mulțime de opțiuni de editare. În OUTPUT configurăm unde trimitem logul deja analizat; în cazul în care acesta este Elasticsearch, se trimite o cerere JSON, în care se transmit câmpurile cu valorile, sau în scop de debugare putem afișa în stdout sau putem scrie într-un fișier.

1. Elastic stack: analiza jurnalelor de securitate. Introducere

ElasticSearch

Inițial, Elasticsearch este o soluție pentru căutările full-text, dar cu funcționalități suplimentare, cum ar fi scalarea ușoară, replicarea și altele, ceea ce a făcut ca produsul să fie foarte convenabil și o soluție bună pentru proiecte cu sarcini mari de lucru ce gestionează volume mari de date. Elasticsearch este un stocare documente non-relațională (NoSQL) în format JSON, și un motor de căutare bazat pe căutarea full-text Lucene. Platforma hardware este Java Virtual Machine, așadar sistemul necesită o mare cantitate de resurse CPU și RAM pentru a funcționa.
Fiecare mesaj primit, fie de la Logstash sau printr-o cerere API, este indexat ca un "document" – echivalentul unei tabele în SQL relațional. Toate documentele sunt stocate într-un index – echivalentul unei baze de date în SQL.

Exemplu de document în bază:

{
  "_index": "checkpoint-2019.10.10",
  "_type": "_doc",
  "_id": "yvNZcWwBygXz5W1aycBy",
  "_version": 1,
  "_score": null,
  "_source": {
	"layer_uuid": [
      "dae7f01c-4c98-4c3a-a643-bfbb8fcf40f0",
      "dbee3718-cf2f-4de0-8681-529cb75be9a6"
	],
	"outzone": "External",
	"layer_name": [
  	"TSS-Standard Security",
  	"TSS-Standard Application"
	],
	"time": "1565269565",
	"dst": "103.5.198.210",
	"parent_rule": "0",
	"host": "10.10.10.250",
	"ifname": "eth6",
    ]
}

Toată interacțiunea cu baza de date se bazează pe cereri JSON prin REST API, care fie returnează documente în funcție de index, fie oferă anumite statistici într-un format: întrebare – răspuns. Pentru a vizualiza toate răspunsurile la cereri a fost creat Kibana, care este un serviciu web.

Kibana

Kibana permite căutarea și extragerea datelor, precum și interogarea statisticilor din baza de date Elasticsearch; pe baza răspunsurilor se construiesc multe grafice frumoase și dashboard-uri. De asemenea, sistemul are funcționalitate de administrare a bazei de date Elasticsearch. În articolele viitoare, vom explora mai în detaliu acest serviciu. Acum, vom prezenta un exemplu de dashboard-uri pentru firewall-ul Check Point și scanner-ul de vulnerabilități OpenVas, care pot fi construite.

Exemplu de dashboard pentru Check Point, imaginea este clicabilă:

1. Elastic stack: analiza jurnalelor de securitate. Introducere

Exemplu de dashboard pentru OpenVas, imaginea este clicabilă:

1. Elastic stack: analiza jurnalelor de securitate. Introducere

Concluzie

Am analizat din ce este compus ELK stack, ne-am familiarizat puțin cu produsele de bază, iar mai departe în curs vom examina în mod separat scrierea fișierului de configurație Logstash, configurarea dashboard-urilor pe Kibana, vom învăța despre interogările API, automatizare și multe altele!

Așadar, urmăriți actualizările (Telegram, Facebook, VK, Blogul TS Solution), Yandex.Zen.

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster