1.Elasta stako: analizo de sekurecaj protokoloj. Enkonduko

1.Elasta stako: analizo de sekurecaj protokoloj. Enkonduko

Lige kun la fino de vendoj en Rusio de la Splunk-dehakado kaj analiza sistemo, aperis la demando: per kio povas anstataŭigi ĉi tiun solvon? Pasiginte tempon familiarigante min kun malsamaj solvoj, mi decidis por solvo por vera viro - "ELK-stako". Ĉi tiu sistemo bezonas tempon por instali, sed kiel rezulto vi povas akiri tre potencan sistemon por analizi la statuson kaj rapide respondi al informaj sekurecaj okazaĵoj en la organizo. En ĉi tiu serio de artikoloj, ni rigardos la bazajn (aŭ eble ne) kapablojn de la ELK-stako, konsideros kiel vi povas analizi protokolojn, kiel konstrui grafikaĵojn kaj instrumentpanelojn, kaj kiajn interesajn funkciojn oni povas fari uzante la ekzemplon de protokoloj de la Check Point-fajrmuro aŭ la sekureca skanilo OpenVas. Komence, ni rigardu kio ĝi estas - la ELK-stako, kaj el kiuj komponantoj ĝi konsistas.

"ELK-stako" estas akronimo por tri malfermfontaj projektoj: Elasta esploro, Logstash и Kibana. Disvolvita de Elastic kune kun ĉiuj rilataj projektoj. Elasticsearch estas la kerno de la tuta sistemo, kiu kombinas la funkciojn de datumbazo, serĉo kaj analiza sistemo. Logstash estas servilflanka datumtraktaddukto, kiu ricevas datumojn de pluraj fontoj samtempe, analizas la protokolon kaj poste sendas ĝin al Elasticsearch-datumbazo. Kibana permesas al uzantoj bildigi datumojn per diagramoj kaj grafikaĵoj en Elasticsearch. Vi ankaŭ povas administri la datumbazon per Kibana. Poste, ni konsideros ĉiun sistemon aparte pli detale.

1.Elasta stako: analizo de sekurecaj protokoloj. Enkonduko

Logstash

Logstash estas ilo por prilaborado de protokolaj eventoj el diversaj fontoj, per kiu vi povas elekti kampojn kaj iliajn valorojn en mesaĝo, kaj vi ankaŭ povas agordi datumajn filtradon kaj redaktadon. Post ĉiuj manipuladoj, Logstash redirektas eventojn al la fina datumvendejo. La ilo estas agordita nur per agordaj dosieroj.
Tipa logstash-agordo estas dosiero(j) konsistanta el pluraj alvenantaj fluoj de informoj (enigaĵo), pluraj filtriloj por ĉi tiu informo (filtrilo) kaj pluraj elirfluoj (eligo). Ĝi aspektas kiel unu aŭ pluraj agordaj dosieroj, kiuj en la plej simpla versio (kiu tute nenion faras) aspektas jene:

input {
}

filter {
}

output {
}

En INPUT ni agordas al kiu haveno la protokoloj estos senditaj kaj per kiu protokolo, aŭ de kiu dosierujo legi novajn aŭ konstante ĝisdatigitajn dosierojn. En FILTRO ni agordas la protokolan analizilon: analizante kampojn, redaktante valorojn, aldonante novajn parametrojn aŭ forigante ilin. FILTRO estas kampo por administri la mesaĝon kiu venas al Logstash kun multaj redaktaj opcioj. En eligo ni agordas kie ni sendas la jam analizitan protokolon, se ĝi estas elastika serĉo, oni sendas JSON-peton en kiu kampoj kun valoroj estas senditaj, aŭ kiel parto de la sencimigo ĝi povas esti eligita al stdout aŭ skribita al dosiero.

1.Elasta stako: analizo de sekurecaj protokoloj. Enkonduko

Elasta Serĉo

Komence, Elasticsearch estas solvo por plenteksta serĉo, sed kun pliaj agrablaĵoj kiel facila skalo, reproduktado kaj aliaj aferoj, kiuj igis la produkton tre oportuna kaj bona solvo por altŝarĝaj projektoj kun grandaj volumoj da datumoj. Elasticsearch estas ne-rilata (NoSQL) JSON-dokumentbutiko kaj serĉilo bazita sur Lucene-plenteksta serĉo. La aparatara platformo estas Java Virtuala Maŝino, do la sistemo postulas grandan kvanton da procesoro kaj RAM-resursoj por funkcii.
Ĉiu envenanta mesaĝo, ĉu kun Logstash aŭ uzante la demandan API, estas indeksita kiel "dokumento" - analoga al tabelo en interrilata SQL. Ĉiuj dokumentoj estas konservitaj en indekso - analogo de datumbazo en SQL.

Ekzemplo de dokumento en la datumbazo:

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

Ĉiuj laboroj kun la datumbazo baziĝas sur JSON-petoj uzante la REST API, kiuj aŭ produktas dokumentojn per indekso aŭ iujn statistikojn en la formato: demando - respondo. Por bildigi ĉiujn respondojn al petoj, Kibana estis skribita, kiu estas retservo.

Kibana

Kibana permesas al vi serĉi, preni datumojn kaj konsulti statistikojn el la datumbazo de elasticsearch, sed multaj belaj grafikaĵoj kaj paneloj estas konstruitaj surbaze de la respondoj. La sistemo ankaŭ havas elastikan datumbazan administradon; en postaj artikoloj ni rigardos ĉi tiun servon pli detale. Nun ni montru ekzemplon de paneloj por la fajroŝirmilo Check Point kaj la skanilo de vundebleco OpenVas, kiuj povas esti konstruitaj.

Ekzemplo de panelo por Check Point, la bildo estas klakebla:

1.Elasta stako: analizo de sekurecaj protokoloj. Enkonduko

Ekzemplo de panelo por OpenVas, la bildo estas klakebla:

1.Elasta stako: analizo de sekurecaj protokoloj. Enkonduko

konkludo

Ni rigardis el kio ĝi konsistas ELK stako, ni iom konatiĝis kun la ĉefaj produktoj, poste en la kurso ni aparte konsideros skribi agordan dosieron de Logstash, agordi panelojn sur Kibana, konatiĝi kun API-petoj, aŭtomatigo kaj multe pli!

Do restu agorditaTelegramo, Facebook, VK, TS Solva Blogo), Yandex.Zen.

fonto: www.habr.com

Aldoni komenton