3. Elastic stack: security žurnālu analīze. Datu paneļi

3. Elastic stack: security žurnālu analīze. Datu paneļi

IepriekŔējās rakstos mēs nedaudz iepazināmies ar ELK steku un Logstash konfigurācijas faila iestatīŔanu žurnāla analÄ«zei. Å ajā rakstā pāriesim pie svarÄ«gākā analÄ«zes viedokļa - uz grafikiem un tabulām, kas apvienoti darbvirsmās. Å odien mēs tuvāk iepazÄ«simies ar vizualizācijas sistēmu Kibana, apskatÄ«sim, kā izveidot grafikus un tabulas, un beigās izstrādāsim vienkārÅ”u darbvirsmu, pamatojoties uz Check Point ugunsmÅ«ra žurnāliem.

Pirmais solis darbam ar Kibana ir indeksa modelis, loÄ£iski, tas ir indeksu kopums, kas balstās uz noteiktiem principiem. Protams, tas ir nepiecieÅ”ams, lai Kibana ērtāk meklētu informāciju visos indeksos vienlaicÄ«gi. To nosaka ar virsrakstu, piemēram, ā€œcheckpoint-*ā€ un indeksa nosaukumu. Piemēram, Ā«checkpoint-2019.12.05Ā» atbilst modelim, bet ā€žcheckpointā€ jau nē. AtseviŔķi ir vērts pieminēt, ka meklēŔanā nevar vienlaicÄ«gi meklēt informāciju pēc dažādiem indeksu modeļiem. Nedaudz vēlāk sekojoÅ”ajos rakstos mēs redzēsim, ka API pieprasÄ«jumi tiek veidoti vai nu pēc indeksa nosaukuma, vai tieÅ”i pēc viena modeļa, attēls ir klikŔķināms:

3. Elastic stack: security žurnālu analīze. Datu paneļi

Pēc tam mēs pārbaudām Discover izvēlnē, vai visi žurnāli tiek indeksēti un vai ir iestatÄ«ts pareizs parsers. Ja tiek konstatētas kādas nepilnÄ«bas, piemēram, jāmaina datu tips no virknes uz veselu skaitli, ir jārediģē Logstash konfigurācijas fails, un rezultātā jaunie žurnāli tiks reÄ£istrēti pareizi. Lai vecie žurnāli pirms izmaiņām iegÅ«tu vajadzÄ«go formātu, noder tikai reindeksācijas process, kas tiks sÄ«kāk izskatÄ«ts turpmākajos rakstos. Pārliecināsimies, ka viss ir kārtÄ«bā, attēls ir klikŔķināms:

3. Elastic stack: security žurnālu analīze. Datu paneļi

Žurnāli izrādÄ«jās savā vietā, tādēļ varam sākt izstrādāt darbvirsmas. Pamatojoties uz analÄ«zi no droŔības produktiem, var saprast, kāda ir informācijas droŔība organizācijā, vizuāli redzēt trÅ«kumus esoÅ”ajā politikā un turpmāk izstrādāt veidus, kā tos novērst. Izstrādāsim nelielu darbvirsmu, izmantojot vairākus vizualizācijas rÄ«kus. Darbvirsma bÅ«s sastāv no 5 komponentiem:

  1. tabula, lai skaitītu kopējo žurnālu skaitu pēc plāksnēm
  2. tabulu ar kritiskajām IPS parakstiem
  3. apļa diagrammu par Threat Prevention notikumiem
  4. diagramma par visām populārākajām apmeklētajām vietnēm
  5. diagramma par visbiežāk lietotajām bīstamajām lietotnēm

Lai izveidotu vizualizācijas figÅ«ras, jāatver izvēlne Vizualizēt, un jāizvēlas nepiecieÅ”amā figÅ«ra, kuru vēlamies izveidot! Iesim secÄ«gi.

Tabula kopējā logu skaita aprēķināŔanai pa blade

Å im izvēlēsimies figÅ«ru Datu tabula, ieejam rÄ«kos grafiku izveidei, pa kreisi ir figÅ«ras iestatÄ«jumi, pa labi - kā tā izskatÄ«sies paÅ”reizējos iestatÄ«jumos. Vispirms parādīŔu, kā izskatÄ«sies gatavā tabula, pēc tam pāriesim pie iestatÄ«jumiem, attēls ir klikŔķināms:

3. Elastic stack: security žurnālu analīze. Datu paneļi

Detālākie figÅ«ras iestatÄ«jumi, attēls ir klikŔķināms:

3. Elastic stack: security žurnālu analīze. Datu paneļi

Apskatīsim iestatījumus.

Sākotnēji tiek iestatÄ«ts metrika, Å”o vērtÄ«bu izmanto, lai agregētu visus laukus. Metricas tiek aprēķinātas, pamatojoties uz vērtÄ«bām, kas iegÅ«tas Ŕādā vai citādā veidā no dokumentiem. VērtÄ«bas parasti tiek iegÅ«tas no laukiem dokumentā, bet tās var arÄ« tikt Ä£enerētas, izmantojot skriptus. Å ajā gadÄ«jumā uzstādam Agregācija: Skaits (kopējais logu skaits).

Pēc tam sadalām tabulu pa segmentiem (laukiem), pēc kuriem tiks aprēķināta metrika. Šo funkciju veic iestatījums Buckets, kas savukārt sastāv no 2 iestatījumu variantiem:

  1. sadalÄ«t rindas — kolonu pievienoÅ”ana un vēlāk tabulas sadalīŔana pa rindām
  2. sadalÄ«t tabulu — sadalīŔana vairākās tabulās pēc noteiktā lauka vērtÄ«bām.

No buckets var pievienot vairākus sadalÄ«jumus, lai izveidotu vairākas kolonnas vai tabulas, ierobežojumi Å”eit drÄ«zāk ir loÄ£iski. Agregācijā var izvēlēties, pēc kāda principa notiks sadalÄ«jums pa segmentiem: ipv4 range, date range, Terms utt. Visinteresantākais izvēle ir tieÅ”i Terms un Significant Terms, sadalÄ«jums pa segmentiem tiek veikts pēc noteiktā lauka indeksa vērtÄ«bām, atŔķirÄ«ba starp tiem ir attiecÄ«bā uz atgrieztajām vērtÄ«bām un to attēloÅ”anu. Tā kā mēs vēlamies sadalÄ«t tabulu pēc blade nosaukuma, izvēlamies lauku — product.keyword un norādām apjomu, cik 25 vērtÄ«bas tiks atgriezti.

Vietā rindām elasticsearch tiek izmantoti 2 datu tipi — text un keyword. Ja jÅ«s vēlaties veikt pilnteksta meklēŔanu, jums jādara izmantojiet datu tipu text, kas ir ļoti ērti, rakstot savu meklēŔanas pakalpojumu, piemēram, meklējot pieminējumus vārdam konkrētā lauka (teksta) nozÄ«mē. Ja jÅ«s vēlaties tikai precÄ«zu atbilstÄ«bu, jums jādara izmantojiet datu tipu keyword. Tāpat datu tips keyword jāizmanto laukiem, kas prasa kārtoÅ”anu vai agregāciju, t.i., mÅ«su gadÄ«jumā.

Rezultātā Elasticsearch saskaita žurnālu skaitu noteiktā laikā, veicot agregāciju pēc lauka product. Custom Label lauciņā nosakām kolonnas nosaukumu, kas tiks attēlots tabulā, nosakām laiku, kurā vācam žurnālus, uzsākam vizualizāciju — Kibana sÅ«ta pieprasÄ«jumu elastsearch, gaida atbildi un pēc tam vizualizē iegÅ«tos datus. Tabula gatava!

SagatavoÅ”ana pēc Threat Prevention notikumiem

Noteiktu interesi rada informācija par to, cik daudz ir Ä«paÅ”i procentuāli attiecÄ«bās uz reakcijām detect un prevent uz incidente BI esoÅ”ajā droŔības politikā. Šādā gadÄ«jumā labi derētu sagatavoÅ”ana. Izvēlamies Visualize — Pie chart. Tāpat metriku nosakām agregācijai pēc žurnālu skaita. Buckets lauciņā ievietojam Terms => action.

Izskatās, ka viss ir pareizi, bet rezultātā tiek rādÄ«tas vērtÄ«bas visiem blade, nepiecieÅ”ams filtrēt tikai tos, kas darbojas Threat Prevention. Tādēļ obligāti iestatām filtru lai meklētu informāciju tikai par blade, kas atbild par BI incidentiem — product: (Ā«Anti-BotĀ» OR Ā«New Anti-VirusĀ» OR Ā«DDoS ProtectorĀ» OR Ā«SmartDefenseĀ» OR Ā«Threat EmulationĀ»). Attēls ir klikŔķināms:

3. Elastic stack: security žurnālu analīze. Datu paneļi

Un vēl detalizētākas iestatīŔanas, attēls ir klikŔķināms:

3. Elastic stack: security žurnālu analīze. Datu paneļi

Tabula pēc IPS notikumiem

Tālāk ir ļoti svarÄ«gi no droŔības puses pārskatÄ«t un pārbaudÄ«t notikumus pēc blade IPS un Threat Emulation, kas netiek bloķēti esoÅ”ajā politikā, lai nākotnē vai nu pārvērstu parakstu prevent, vai, ja trafiks ir derÄ«gs, — neizmantotu parakstu. Tabulu veidojam tāpat kā pirmajā piemērā, tikai ar to atŔķirÄ«bu, ka izveidojam vairākas kolonnas: protections.keyword, severity.keyword, product.keyword, originsicname.keyword. Obligāti iestatām filtru, lai meklētu informāciju tikai par blade, kas atbild par BI incidentiem — product: ( Ā«SmartDefenseĀ» OR Ā«Threat EmulationĀ»). Attēls ir klikŔķināms:

3. Elastic stack: security žurnālu analīze. Datu paneļi

Detalizētāki iestatÄ«jumi, attēls ir klikŔķināms:

3. Elastic stack: security žurnālu analīze. Datu paneļi

Diagrammas par visbiežāk apmeklētajām vietnēm

Lai to izdarÄ«tu, izveidojam figÅ«ru — Vertical Bar. Metrikai izmantojam count (Y ass), bet X ass vērtÄ«bām izmantosim apmeklēto vietņu nosaukumus — ā€œappi_nameā€. Å eit ir neliela viltÄ«ba: ja palaidÄ«sim iestatÄ«jumus paÅ”reizējā variantā, tad visas vietnes tiks iezÄ«mētas uz grafika vienā krāsā; lai tās padarÄ«tu daudzkrāsainas, izmantojam papildu iestatÄ«jumu — ā€œsplit seriesā€, kas ļauj dalÄ«t jau gatavu kolonnu vairākās vērtÄ«bās atkarÄ«bā no izvēlētā lauka. Å o dalÄ«jumu var izmantot kā vienu daudzkrāsainu kolonnu vērtÄ«bām sakrautā režīmā, vai arÄ« normālā režīmā, lai izveidotu vairākas kolonnas pēc noteiktas X ass vērtÄ«bas. Å ajā gadÄ«jumā mēs izmantojam to paÅ”u vērtÄ«bu, kas uz X ass, kas ļauj visām kolonnām bÅ«t daudzkrāsainām, un augŔējā labajā stÅ«rÄ« tās tiks atzÄ«mētas ar krāsām. Filtrā iestatām — product:Ā«URL FilteringĀ», lai redzētu informāciju tikai par apmeklētām vietnēm, attēls ir klikŔķināms:

3. Elastic stack: security žurnālu analīze. Datu paneļi

Iestatījumi:

3. Elastic stack: security žurnālu analīze. Datu paneļi

Diagramma par visbīstamāko aplikāciju izmantoŔanu

Lai to izdarÄ«tu, izveidojam figÅ«ru — Vertical Bar. Metrikai izmantojam count (Y ass), bet X ass vērtÄ«bām izmantosim izmantoto aplikāciju nosaukumus - ā€œappi_nameā€. VisbÅ«tiskākais ir uzstādÄ«t filtru — product: Ā«Application ControlĀ» AND app_risk: (4 OR 5 OR 3 ) AND action:Ā«acceptĀ». Filtrējam žurnālus pa Application Control, ņemam tikai tās vietnes, kas ir kategorizētas kā vietnes ar kritisku, augstu un vidēju risku, un tikai tad, ja piekļuve Ŕīm vietnēm ir atļauta. Attēls ir klikŔķināms:

3. Elastic stack: security žurnālu analīze. Datu paneļi

Iestatījumi, klikŔķināmi:

3. Elastic stack: security žurnālu analīze. Datu paneļi

Domenas panelis

Domenas paneļa apskate un izveide notiek atseviŔķā izvēlnes punktā — VadÄ«bas panelis. Å eit viss ir vienkārÅ”i: tiek izveidots jauns paneļa, tajā pievienota vizualizācija, novietota pa vietām un viss!

Izveidojam paneli, ar kuru varēsim saprast pamatstāvokli organizācijas droŔībā, protams, tikai Check Point lÄ«menÄ«, attēls ir klikŔķināms:

3. Elastic stack: security žurnālu analīze. Datu paneļi

Balstoties uz Å”iem grafikiem, mēs varam saprast, kuras kritiskās signature netiek bloķētas uz ugunsmÅ«ra, kur iet lietotāji, kādas visbÄ«stamākās aplikācijas viņi izmanto.

Secinājums

Mēs apskatÄ«jām pamata vizualizācijas iespējas Kibana un izveidojām informācijas paneli, taču tas ir tikai neliela daļa. Turpinājumā kursā Ä«paÅ”i aplÅ«kosim kartes iestatīŔanu, darbu ar Elasticsearch sistēmu, iepazÄ«simies ar API pieprasÄ«jumiem, automatizāciju un vēl daudz ko citu!

Tātad sekojiet līdzi jaunumiem (Telegram, Facebook, VK, TS Solution Blog), Yandex.Dzen.

Avots: habr.com

Iegādājieties uzticamu tÄ«mekļa hostingu ar DDoS aizsardzÄ«bu, VPS VDS serveriem šŸ”„ Iegādājieties uzticamu tÄ«mekļa hostingu ar DDoS aizsardzÄ«bu, VPS VDS serveriem | ProHoster