Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
Prijevodi ove stranice:

Pisanje SIGMA pravila

Sažetak

SIGMA pravila su pravila za detekcije prijetnji u kibernetičkoj sigurnosti napisana u čitljivom YAML format koji omogućuje fleksibilnost i prilagodbu specifičnim platformama. Njihova integracija u SIEM sustave omogućuje praćenje logova u stvarnom vremenu, brzo prepoznavanje sumnjivih aktivnosti i smanjenje rizika od sigurnosnih incidenata.

Uvod

SIGMA pravila su standardizirani framework za pisanje pravila koja detektiraju prijetnje u području kibernetičke sigurnosti. Primarno se koriste u SIEM sustavima radi učinkovitijeg otkrivanja sumnjivih aktivnosti i mogućeg zlonamjernog ponašanja.

Ona su zamišljena kao jednostavan, ljudima čitljiv jezik kojim se definiraju obrasci sumnjivog ponašanja unutar različitih vrsta zapisa događaja(logova).

Jedna od najvećih prednosti je što su lako prilagodljiva za pravila specifičnih platformi kao što su npr. Splunk, Elasticsearch, Microsoft Sentinel itd. Upravo ta prilagodljivost omogućuje brzu razmjenu znanja o novim prijetnjama i širenje dobrih praksi među sigurnosnim timovima diljem svijeta.

U ovom seminaru bit će objašnjena osnovna struktura Sigma pravila, način njihovog funkcioniranja te praktični primjeri primjene.

SIEM sustavi

SIEM(engl. Security Information and Event Management), rješenje je koje tvrtkama i ustanovama pomaže u otkrivanju i analizi sigurnosnih prijetnji i odgovaranju na njih prije nego što počnu negativno utjecati na poslovanje.

Tehnologija SIEM prikuplja podatke iz zapisnika događaja iz mnogih izvora, prepoznaje aktivnosti koje odstupaju od norme uz analizu u stvarnom vremenu i poduzima odgovarajuće radnje.

Ukratko, SIEM tvrtkama i ustanovama daje uvid u aktivnosti unutar mreže tako da mogu brzo odgovoriti na potencijalne računalne napade.

Definicija i struktura SIGMA pravila

SIGMA pravila su pisana u vrlo razumljivom YAML formatu, a u nastavku su navedena i opisana najčešća i ključna polja koje većina pravila ima.

title (naslov): Kratki, jasni opis detekcije koju pravilo provodi.

id (jedinstveni identifikator): Jedinstvena oznaka koja olakšava praćenje i verzioniranje pravila.

description (opis): Kratko objašnjenje svrhe i načina rada pravila. Može sadržavati i npr. kontekst napada.

status: Ukazuje na stupanj razvijenosti pravila (npr. experimental, stable, deprecated). Pomaže timovima da znaju je li pravilo pouzdano ili se još testira.

logsource (izvor logova): Definira za koje sustave ili usluge se pravilo primjenjuje te tako olakšava odabir logova unutar SIEM-a.

detection (detekcija): Ključni dio svakog SIGMA pravila, ovdje se definiraju uvjeti koji se traže u logovima, npr. CommandLine|contains: “powershell.exe”

level (razina ozbiljnosti): Označava kritičnost detekcije (npr. low, medium, high, critical).

tags (oznake): Pomažu za grupiranje i kategorizaciju pravila.

false_positives (mogući lažno pozitivni slučajevi): Informacije o poznatim situacijama koje bi mogle lažno aktivirati pravilo.

references (reference): Sadrži reference na izvore i dokumentaciju koji objašnjavaju zašto je neko pravilo napisano.

date (datum): Pomaže u praćenju i verzioniranju.

Polja title, id, description, logsource i detection su prisutni u gotovo svim SIGMA pravilima dok ostala polja mogu biti prisutna ovisno o potrebama i standardima sigurnosnih timovima koji pišu ta pravila.

Primjer SIGMA pravila

Slika 1. SIGMA pravilo

Na slici 1 prikazan je primjer jednog SIGMA pravila napisanog u YAML formatu. Njegov naslov govori nam da će se pravilo koristiti za detekciju webshell aktivnosti na temelju specifičnih ključnih riječi u naredbenoj liniji. U opisu pravila detaljnije je pojašnjeno da je pravilo usmjereno na to da otkriva naredbe koje napadači često koriste kad “ispituju” sustav nakon što ostvare pristup putem webshella. Logsource definira izvor logova na koji se pravilo primjenjuje. U ovom slučaju riječ je o Sysmon zapisnicima (Microsoft-Windows-Sysmon), koji bilježe detaljne informacije o procesima, datotekama i sl.

Nakon toga dolazimo do najvažnijeg dijela pravila(detection) u kojem navodimo što točno tražimo u logovima.

“Selection” označava skup uvjeta koje treba pronaći u logovima:

 EventLog: "Microsoft-Windows-Sysmon/Operational" nam govori da tražimo događaje iz Sysmon kanala “Operational”.
 EventID: 1 je ID događaj u Sysmonu koji označava kreiranje novog procesa, zapravo tražimo logove o pokretanju procesa.
 ParentImage: “\apache” “\tomcat” gleda polje ParentImage, tj. ime procesa koji je pokrenuo novi proces. Webshell se obično izvodi kroz takve servise jer se napadač “ubaci” u web poslužitelj.
 CommandLine: U ovom polju se provjeravaju naredbe koje se nalaze na komandnoj liniji novopokrenutog procesa. Naredbe "whoami", "net user" i "ping -n" vrlo su česte prilikom ovakvih napada.

condition: “selection” govori da je uvjet za pokretanje detekcije ispunjen ako su svi navedeni kriteriji iz selection dijela zadovoljeni.

Ukratko, događaj mora imati EventID = 1, ParentImage koji sadrži “apache” ili “tomcat” i CommandLine koja sadrži bar jednu od navedenih naredbi (whoami, net user, ping -n).

falsepositives: “unknown” nam govori da autor nije naveo niti jedan poznati slučaj u kojem bi ovo pravilo detektiralo lažno pozitivan slučaj.

level: “high” označava visoku razinu upozorenja.

SIGMA pravila u Splunk platformi

Splunk je softverska platforma za pretraživanje, analizu i vizualizaciju strojno generiranih podataka prikupljenih s web stranica, aplikacija, senzora, uređaja itd. koji čine IT infrastrukturu. Najčešće se koristi u području kibernetičke sigurnosti, IT nadzora i poslovne analitike za obradu velikih količina podataka (logova).

Search Processing Language (SPL) je za jezik pretraživanja Splunka, koji omogućuje korisnicima da filtriraju, analiziraju i izvode statistiku iz podataka.

Na primjeru sljedećeg SIGMA pravila objasnit ćemo kako se ono prevodi te kako izgleda u SPL-u:

title: Suspicious PowerShell Usage
description: Detects PowerShell commands often used in attacks
logsource:
  product: windows
  service: sysmon
detection:
  selection:
    EventID: 1
    CommandLine|contains:
      - "Invoke-WebRequest"
      - "IEX"
      - "Set-MpPreference"
  condition: selection
level: high

Koristimo alat sigmac i python s idućom naredbom:

python sigmac -t spl -c splunk-windows sigma_file.yml

-t spl: Specificira da je cilj Splunk.

-c splunk-windows: Koristi predložak za Splunk s Windows zapisima.

sigma_file.yml: Datoteka SIGMA pravila koje želimo prevesti.

Nakon pokretanja alata generirani SPL izgleda ovako:

index="windows" EventID=1 CommandLine="*Invoke-WebRequest*" OR CommandLine="*IEX*" OR CommandLine="*Set-MpPreference*"

Ako zalijepimo generirani SPL upit u pretraživač, Splunk će prikazati sve logove koji odgovaraju definiranim uvjetima SIGMA pravila.

Ukratko, ovo pravilo prepoznaje sumnjive Powershell naredbe koje se koriste za preuzimanje i izvođenje zlonamjernih skripti te izmjenu sigurnosnih postavki sustava.

Zaključak

SIGMA pravila su vrlo bitan alat u modernoj kibernetičkoj sigurnosti. Njihova jednostavnost, razumljivost i fleksibilnost omogućuju brzu detekciju prijetnji i prilagodbu pravilima specifičnih platformi poput Splunka, Elasticsearcha i Microsoft Sentinela. Standardizirana forma koju SIGMA uvodi olakšava razvoj te razmjenu znanja i pravila među sigurnosnim timovima.

Integracija SIGMA pravila u SIEM sustave omogućuje organizacijama da prate logove u stvarnom vremenu i otkriju potencijalne napade, često i prije nego što se šteta dogodi. Primjeri poput detekcije sumnjivih PowerShell aktivnosti ili webshell napada pokazuju koliko SIGMA pravila mogu biti praktična i učinkovita u stvarnim scenarijima.

Literatura

racfor_wiki/seminari2024/pisanje_sigma_pravila.txt · Zadnja izmjena: 2025/01/26 23:00 od Karamatić Roko
Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0