3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

Sa mga nakaraang artikulo, medyo naging pamilyar kami sa elk stack at nagse-set up ng Logstash configuration file para sa log parser. Sa artikulong ito, lilipat kami sa pinakamahalagang bagay mula sa analytical na punto ng view, kung ano ang gusto mong tingnan mula sa system at kung para saan nilikha ang lahat - ito ay mga graph at talahanayan na pinagsama-sama mga dashboard. Ngayon ay titingnan natin ang sistema ng visualization Kibana, titingnan natin kung paano gumawa ng mga graph at talahanayan, at bilang resulta ay bubuo tayo ng isang simpleng dashboard batay sa mga log mula sa Check Point firewall.

Ang unang hakbang sa pagtatrabaho sa kibana ay ang paglikha pattern ng index, lohikal na, ito ay isang base ng mga index na nagkakaisa ayon sa isang tiyak na prinsipyo. Siyempre, ito ay purong setting para gawing mas maginhawang maghanap ng impormasyon si Kibana sa lahat ng index nang sabay-sabay. Ito ay itinakda sa pamamagitan ng pagtutugma ng isang string, sabihin ang "checkpoint-*" at ang pangalan ng index. Halimbawa, ang "checkpoint-2019.12.05" ay akma sa pattern, ngunit ang simpleng "checkpoint" ay wala na. Ito ay nagkakahalaga ng pagbanggit nang hiwalay na sa paghahanap imposibleng maghanap ng impormasyon sa iba't ibang mga pattern ng index nang sabay-sabay; ilang sandali sa mga susunod na artikulo ay makikita natin na ang mga kahilingan sa API ay ginawa alinman sa pangalan ng index, o sa pamamagitan lamang ng isa. linya ng pattern, naki-click ang larawan:

3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

Pagkatapos nito, tinitingnan namin sa Discover menu na ang lahat ng mga log ay na-index at ang tamang parser ay na-configure. Kung may nakitang anumang hindi pagkakapare-pareho, halimbawa, ang pagpapalit ng uri ng data mula sa isang string patungo sa isang integer, kailangan mong i-edit ang Logstash configuration file, bilang resulta, ang mga bagong log ay isusulat nang tama. Upang makuha ng mga lumang log ang nais na anyo bago ang pagbabago, tanging ang proseso ng muling pag-index ang tumutulong; sa mga susunod na artikulo ang operasyong ito ay tatalakayin nang mas detalyado. Siguraduhin nating maayos ang lahat, naki-click ang larawan:

3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

Ang mga log ay nasa lugar, na nangangahulugan na maaari naming simulan ang pagbuo ng mga dashboard. Batay sa analytics ng mga dashboard mula sa mga produktong panseguridad, mauunawaan mo ang estado ng seguridad ng impormasyon sa isang organisasyon, malinaw na makikita ang mga kahinaan sa kasalukuyang patakaran, at pagkatapos ay bumuo ng mga paraan upang maalis ang mga ito. Bumuo tayo ng maliit na dashboard gamit ang ilang visualization tool. Ang dashboard ay bubuo ng 5 bahagi:

  1. talahanayan para sa pagkalkula ng kabuuang bilang ng mga log sa pamamagitan ng mga blades
  2. talahanayan sa mga kritikal na lagda ng IPS
  3. pie chart para sa mga kaganapan sa Pag-iwas sa Banta
  4. tsart ng pinakasikat na binisita na mga site
  5. tsart sa paggamit ng mga pinaka-mapanganib na application

Upang lumikha ng mga visualization figure, kailangan mong pumunta sa menu Visualize, at piliin ang gustong figure na gusto naming buuin! Umayos na tayo.

Talahanayan para sa pagkalkula ng kabuuang bilang ng mga log ayon sa talim

Upang gawin ito, pumili ng figure Table Data, nahulog kami sa kagamitan para sa paglikha ng mga graph, sa kaliwa ay ang mga setting ng figure, sa kanan ay kung ano ang magiging hitsura nito sa kasalukuyang mga setting. Una, ipapakita ko kung ano ang magiging hitsura ng tapos na talahanayan, pagkatapos nito ay dadaan tayo sa mga setting, ang larawan ay naki-click:

3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

Mas detalyadong mga setting ng figure, ang larawan ay naki-click:

3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

Tingnan natin ang mga setting.

Sa simula ay na-configure mga sukatan, ito ang halaga kung saan pagsasama-samahin ang lahat ng field. Ang mga sukatan ay kinakalkula batay sa mga halaga na nakuha sa isang paraan o iba pa mula sa mga dokumento. Ang mga halaga ay karaniwang kinukuha mula sa mga patlang dokumento, ngunit maaari ding mabuo gamit ang mga script. Sa kasong ito inilagay namin Pagsasama-sama: Bilang (kabuuang bilang ng mga log).

Pagkatapos nito, hinahati namin ang talahanayan sa mga segment (mga field) kung saan kakalkulahin ang sukatan. Ginagawa ang function na ito ng setting ng Bucket, na binubuo naman ng 2 mga pagpipilian sa setting:

  1. split row - pagdaragdag ng mga column at kasunod na paghahati ng talahanayan sa mga row
  2. split table - paghahati sa ilang mga talahanayan batay sa mga halaga ng isang partikular na field.

В Mga timba maaari kang magdagdag ng ilang mga dibisyon upang lumikha ng ilang mga haligi o talahanayan, ang mga paghihigpit dito ay medyo lohikal. Sa pagsasama-sama, maaari mong piliin kung aling paraan ang gagamitin upang hatiin sa mga segment: hanay ng ipv4, hanay ng petsa, Mga Tuntunin, atbp. Ang pinaka-kagiliw-giliw na pagpipilian ay tiyak Mga Tuntunin и Mahahalagang Tuntunin, ang paghahati sa mga segment ay isinasagawa ayon sa mga halaga ng isang tiyak na field ng index, ang pagkakaiba sa pagitan ng mga ito ay nakasalalay sa bilang ng mga ibinalik na halaga, at ang kanilang pagpapakita. Dahil gusto naming hatiin ang talahanayan sa pamamagitan ng pangalan ng mga blades, pipiliin namin ang field - produkto.keyword at itakda ang laki sa 25 ibinalik na halaga.

Sa halip na mga string, ang elasticsearch ay gumagamit ng 2 uri ng data - teksto и keyword. Kung gusto mong magsagawa ng full-text na paghahanap, dapat mong gamitin ang uri ng teksto, isang napaka-maginhawang bagay kapag nagsusulat ng iyong serbisyo sa paghahanap, halimbawa, naghahanap ng pagbanggit ng isang salita sa isang partikular na halaga ng field (teksto). Kung gusto mo lang ng eksaktong tugma, dapat mong gamitin ang uri ng keyword. Gayundin, ang uri ng data ng keyword ay dapat gamitin para sa mga patlang na nangangailangan ng pag-uuri o pagsasama-sama, iyon ay, sa aming kaso.

Bilang resulta, binibilang ng Elasticsearch ang bilang ng mga log para sa isang partikular na oras, na pinagsama-sama ng halaga sa field ng produkto. Sa Custom na Label, itinakda namin ang pangalan ng column na ipapakita sa talahanayan, itinakda ang oras kung kailan kami nangongolekta ng mga log, magsisimulang mag-render - Nagpapadala si Kibana ng kahilingan sa elasticsearch, naghihintay ng tugon at pagkatapos ay nakikita ang natanggap na data. Handa na ang mesa!

Pie chart para sa mga kaganapan sa Pag-iwas sa Banta

Ang partikular na interes ay ang impormasyon tungkol sa kung gaano karaming mga reaksyon ang mayroon bilang isang porsyento tuklasin и pigilan sa mga insidente ng seguridad ng impormasyon sa kasalukuyang patakaran sa seguridad. Ang isang pie chart ay gumagana nang maayos para sa sitwasyong ito. Pumili sa Visualize - Pie chart. Gayundin sa sukatan, itinakda namin ang pagsasama-sama ayon sa bilang ng mga log. Sa mga bucket inilalagay namin ang Mga Tuntunin => aksyon.

Mukhang tama ang lahat, ngunit ang resulta ay nagpapakita ng mga halaga para sa lahat ng mga blades; kailangan mong i-filter lamang sa pamamagitan ng mga blades na gumagana sa loob ng balangkas ng Pag-iwas sa Banta. Samakatuwid, tiyak na itinakda namin ito salain upang maghanap ng impormasyon lamang sa mga blades na responsable para sa mga insidente ng seguridad ng impormasyon - produkto: (“Anti-Bot” O “Bagong Anti-Virus” O “DDoS Protector” O “SmartDefense” O “Threat Emulation”). Ang larawan ay maaaring i-click:

3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

At mas detalyadong mga setting, naki-click ang larawan:

3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

Talahanayan ng Kaganapan ng IPS

Susunod, napakahalaga mula sa punto ng view ng seguridad ng impormasyon ay ang pagtingin at pagsuri ng mga kaganapan sa talim. IP и Pagtulad sa BantaNa ay hindi naka-block kasalukuyang patakaran, upang kasunod na baguhin ang lagda upang maiwasan, o kung ang trapiko ay wasto, huwag suriin ang lagda. Ginagawa namin ang talahanayan sa parehong paraan tulad ng sa unang halimbawa, na may pagkakaiba lang na gumagawa kami ng ilang column: protections.keyword, severity.keyword, product.keyword, originsicname.keyword. Tiyaking mag-set up ng filter upang maghanap ng impormasyon lamang sa mga blade na responsable para sa mga insidente sa seguridad ng impormasyon - produkto: (“SmartDefense” O “Threat Emulation”). Ang larawan ay maaaring i-click:

3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

Mas detalyadong mga setting, naki-click ang larawan:

3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

Mga tsart para sa pinakasikat na binisita na mga site

Upang gawin ito, lumikha ng isang figure - patayong bar. Ginagamit din namin ang bilang (Y axis) bilang isang sukatan, at sa X axis gagamitin namin ang pangalan ng mga binisita na site bilang mga halaga – “appi_name”. Mayroong isang maliit na trick dito: kung patakbuhin mo ang mga setting sa kasalukuyang bersyon, kung gayon ang lahat ng mga site ay mamarkahan sa tsart na may parehong kulay, upang gawing multi-kulay ang mga ito, gumagamit kami ng karagdagang setting - "split series", na nagpapahintulot sa iyo na hatiin ang isang handa na haligi sa ilang higit pang mga halaga, depende sa napiling field siyempre! Ang mismong dibisyong ito ay maaaring gamitin bilang isang multi-colored na column ayon sa mga value sa stacked mode, o sa normal na mode para makalikha ng ilang column ayon sa isang tiyak na value sa X axis. Sa kasong ito, ginagamit namin ang parehong halaga tulad ng sa X axis, ginagawa nitong posible na gawing multi-kulay ang lahat ng column; ipapahiwatig ang mga ito ng mga kulay sa kanang tuktok. Sa filter na itinakda namin - produkto: "Pag-filter ng URL" upang makakita lamang ng impormasyon sa mga binisita na site, naki-click ang larawan:

3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

Mga setting:

3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

Diagram sa paggamit ng mga pinaka-mapanganib na application

Upang gawin ito, lumikha ng isang figure - Vertical Bar. Ginagamit din namin ang bilang (Y axis) bilang isang sukatan, at sa X axis gagamitin namin ang pangalan ng mga application na ginamit - "appi_name" bilang mga halaga. Ang pinakamahalaga ay ang setting ng filter - produkto: “Pagkontrol sa Application” AT app_risk: (4 O 5 O 3 ) AT pagkilos: “tanggapin”. Sinasala namin ang mga log sa pamamagitan ng Application control blade, na kumukuha lamang ng mga site na nakategorya bilang Kritikal, Mataas, Katamtamang panganib na mga site at kung pinapayagan lamang ang pag-access sa mga site na ito. Ang larawan ay maaaring i-click:

3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

Mga setting, naki-click:

3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

Dashboard

Ang pagtingin at paggawa ng mga dashboard ay nasa isang hiwalay na item sa menu - Tapalodo. Ang lahat ay simple dito, isang bagong dashboard ang nilikha, ang visualization ay idinagdag dito, inilagay sa lugar nito at iyon na!

Lumilikha kami ng isang dashboard kung saan maaari mong maunawaan ang pangunahing sitwasyon ng estado ng seguridad ng impormasyon sa isang organisasyon, siyempre, sa antas ng Check Point lamang, ang larawan ay naki-click:

3. Elastic stack: pagsusuri ng mga security log. Mga dashboard

Batay sa mga graph na ito, mauunawaan natin kung aling mga kritikal na lagda ang hindi naka-block sa firewall, kung saan pupunta ang mga user, at kung ano ang mga pinaka-mapanganib na application na ginagamit nila.

Konklusyon

Tiningnan namin ang mga kakayahan ng pangunahing visualization sa Kibana at gumawa ng dashboard, ngunit ito ay maliit na bahagi lamang. Higit pa sa kurso ay hiwalay nating titingnan ang pagse-set up ng mga mapa, pagtatrabaho sa elasticsearch system, pagkilala sa mga kahilingan sa API, automation at marami pang iba!

Kaya manatiling nakatutokTelegrama, Facebook, VK, TS Solution Blog), Yandex Zen.

Pinagmulan: www.habr.com

Magdagdag ng komento