1.Elastinen pino: tietoturvalokien analyysi. Johdanto

1.Elastinen pino: tietoturvalokien analyysi. Johdanto

Splunk-hakkuu- ja analytiikkajärjestelmän myynnin päättymisen yhteydessä Venäjällä heräsi kysymys: millä tämä ratkaisu voidaan korvata? Tutustuttuani eri ratkaisuihin, päädyin ratkaisuun oikealle miehelle - "ELK pino". Tämän järjestelmän käyttöönotto vie aikaa, mutta tuloksena saat erittäin tehokkaan järjestelmän tilan analysointiin ja nopeaan reagoimiseen organisaation tietoturvahäiriöihin. Tässä artikkelisarjassa tarkastellaan ELK-pinon perusominaisuuksia (tai ehkä ei), pohditaan, kuinka voit jäsentää lokeja, rakentaa kaavioita ja kojetauluja ja mitä mielenkiintoisia toimintoja voidaan tehdä käyttämällä esimerkkiä lokeista Check Pointin palomuuri tai OpenVas-suojausskanneri. Aluksi katsotaan, mikä se on - ELK-pino ja mistä komponenteista se koostuu.

"ELK pino" on lyhenne kolmelle avoimen lähdekoodin projektille: Elasticsearch, Logstash и Kibana. Elasticin kehittämä yhdessä kaikkien siihen liittyvien projektien kanssa. Elasticsearch on koko järjestelmän ydin, joka yhdistää tietokannan, haku- ja analyyttisen järjestelmän toiminnot. Logstash on palvelinpuolen tietojenkäsittelyputki, joka vastaanottaa tietoja useista lähteistä samanaikaisesti, jäsentää lokin ja lähettää sen sitten Elasticsearch-tietokantaan. Kibanan avulla käyttäjät voivat visualisoida tietoja käyttämällä kaavioita ja kaavioita Elasticsearchissa. Voit myös hallita tietokantaa Kibanan kautta. Seuraavaksi tarkastelemme jokaista järjestelmää erikseen yksityiskohtaisemmin.

1.Elastinen pino: tietoturvalokien analyysi. Johdanto

Logstash

Logstash on eri lähteistä tulevien lokitapahtumien käsittelyyn tarkoitettu apuohjelma, jolla voit valita viestissä kenttiä ja niiden arvoja sekä konfiguroida tietojen suodatusta ja muokkausta. Kaikkien manipulointien jälkeen Logstash uudelleenohjaa tapahtumat lopulliseen tietovarastoon. Apuohjelma määritetään vain asetustiedostojen kautta.
Tyypillinen logstash-kokoonpano on tiedosto(t), joka koostuu useista saapuvista tietovirroista (syöttö), useista suodattimista tälle tiedolle (suodatin) ja useista lähtevistä virroista (lähtö). Se näyttää yhdeltä tai useammalta asetustiedostolta, joka yksinkertaisimmassa versiossa (joka ei tee mitään) näyttää tältä:

input {
}

filter {
}

output {
}

INPUT-kohdassa määritetään, mihin porttiin lokit lähetetään ja minkä protokollan kautta tai mistä kansiosta luetaan uusia tai jatkuvasti päivittyviä tiedostoja. FILTERissä määritämme lokin jäsentimen: jäsennetään kenttiä, muokataan arvoja, lisätään uusia parametreja tai poistetaan niitä. FILTER on kenttä Logstashille tulevan viestin hallintaan, jossa on paljon muokkausvaihtoehtoja. Lähdössä määritämme minne lähetämme jo jäsennetyn lokin, jos kyseessä on elasticsearch, lähetetään JSON-pyyntö, jossa lähetetään arvot sisältävät kentät, tai osana virheenkorjausta se voidaan tulostaa stdoutiin tai kirjoittaa tiedostoon.

1.Elastinen pino: tietoturvalokien analyysi. Johdanto

Elasticsearch

Aluksi Elasticsearch on ratkaisu täystekstihakuun, mutta lisäominaisuuksilla, kuten helppo skaalaus, replikointi ja muut asiat, jotka tekivät tuotteesta erittäin kätevän ja hyvän ratkaisun suuren kuormituksen projekteihin, joissa on suuria tietomääriä. Elasticsearch on ei-relaatiollinen (NoSQL) JSON-dokumenttivarasto ja hakukone, joka perustuu Lucenen kokotekstihakuun. Laitteistoalusta on Java Virtual Machine, joten järjestelmä vaatii toimiakseen paljon prosessori- ja RAM-resursseja.
Jokainen saapuva viesti, joko Logstashilla tai kyselyn API:lla, indeksoidaan "asiakirjaksi" - analogisesti relaatio-SQL:n taulukon kanssa. Kaikki asiakirjat on tallennettu hakemistoon - SQL-tietokannan analogiin.

Esimerkki asiakirjasta tietokannassa:

{
  "_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",
    ]
}

Kaikki tietokannan kanssa työskentely perustuu JSON-pyyntöihin REST API:n avulla, jotka joko tuottavat asiakirjoja indekseillä tai joitain tilastoja muodossa: kysymys - vastaus. Kaikkien pyyntöjen vastausten visualisoimiseksi kirjoitettiin Kibana, joka on verkkopalvelu.

Kibana

Kibanan avulla voit hakea, noutaa tietoja ja tiedustella tilastoja elasticsearch-tietokannasta, mutta vastausten perusteella rakennetaan monia kauniita kaavioita ja kojetauluja. Järjestelmässä on myös elasticsearch-tietokannan hallintatoiminto, seuraavissa artikkeleissa tarkastellaan tätä palvelua tarkemmin. Otetaan nyt esimerkki kojelaudoista Check Point -palomuurille ja OpenVas-haavoittuvuusskannerille, jotka voidaan rakentaa.

Esimerkki Check Pointin kojelaudasta, kuvaa voi klikata:

1.Elastinen pino: tietoturvalokien analyysi. Johdanto

Esimerkki OpenVasin kojelaudasta, kuvaa voi napsauttaa:

1.Elastinen pino: tietoturvalokien analyysi. Johdanto

Johtopäätös

Katsoimme, mistä se koostuu ELK-pino, tutustuimme hieman päätuotteisiin, myöhemmin kurssilla pohditaan erikseen Logstash-asetustiedoston kirjoittamista, dashboardien asettelua Kibanaan, tutustumista API-pyyntöihin, automaatioon ja paljon muuta!

Pysy siis kuulollaTelegram, Facebook, VK, TS Solution -blogi), Yandex Zen.

Lähde: will.com

Lisää kommentti