← Atpakaļ uz Izglītošanos
EDUCATION · LOGS · DFIR / SIEM

📊 Žurnālfailu (logu) analīze

Žurnālfailu (logu) analīze ir notikumu ierakstu sistemātiska vākšana, korelācija un izvērtēšana, lai savlaicīgi atklātu uzbrukumus, atbalstītu incidentu izmeklēšanu un izpildītu atbilstības prasības. Ceļvedis sešās sadaļās aptver visu procesu - no žurnālu avotiem un formātiem līdz centralizētai SIEM analīzei un uzbrukumu pazīmēm - balstoties uz atzītiem standartiem (NIST SP 800-92, ISO 27001, OWASP). Piemēri ir ilustratīvi un paredzēti mācībām.

Kas ir logu analīze

Log management dzīves cikls - NIST SP 800-92

Žurnālfails (log) ir hronoloģisks ieraksts par notikumiem sistēmā - kurš, kad, no kurienes un ko izdarīja. Logu analīze ir process, kurā šos ierakstus vāc, normalizē un izvērtē, lai atklātu drošības incidentus, atbalstītu izmeklēšanu un izpildītu atbilstības (compliance) prasības. NIST SP 800-92 to apraksta kā nepārtrauktu dzīves ciklu no notikuma ģenerēšanas līdz kontrolētai iznīcināšanai.

Log management dzīves cikls Sešas stadijas: ģenerēšana, vākšana, droša pārraide, glabāšana ar retention, analīze un kontrolēta iznīcināšana. Analīzes atklājumi precizē, ko žurnalēt. Log management dzīves cikls (NIST SP 800-92) 1 · Ģenerēšana OS · app · tīkls ko žurnalēt 2 · Vākšana agenti · forwarders centralizēti 3 · Pārraide syslog/TLS integritāte 4 · Glabāšana retention WORM · indeksi 5 · Analīze korelācija · alert SIEM · SOC 6 · Iznīc. rotācija termiņš atgriezeniskā saite

Pamatprincips: analizē centralizēti un ārpus pārbaudāmā hosta - kompromitētā sistēmā logiem vairs nevar uzticēties. Analīzes atklājumi atgriezeniski precizē, ko un kā žurnalēt.

atklāšana
Draudu atklāšana

Logi ir galvenais avots uzbrukumu agrīnai pamanīšanai - neizdevušās pieteikšanās, privilēģiju maiņa, anomāls tīkla trafiks.

DFIR
Izmeklēšana

Incidenta laikā logi rekonstruē notikumu hronoloģiju (timeline) - ko uzbrucējs darīja, kad un cik tālu tika.

compliance
Atbilstība

ISO 27001, PCI DSS, NIS2 un GDPR pieprasa logošanu, glabāšanu un regulāru pārskatīšanu kā obligātu kontroli.

audit
Atbildība

Nemainīgi audita ieraksti nodrošina nenoliedzamību (non-repudiation) - kurš subjekts veica kuru darbību.

baseline
Darbības pārskats

Kļūdu un veiktspējas logi palīdz noteikt normu (baseline) un pamanīt no tās novirzes.

A.8.15
Ko žurnalēt

Autentifikācija, piekļuves atteikumi, izmaiņas konfigurācijā un tiesībās, administratīvas darbības un kļūdas.

Nelogot jutīgo

Paroles, tokenus, pilnus karšu numurus un nevajadzīgus personas datus logos neraksta (GDPR datu minimizācija) - maskē vai izlaiž.

Signāls pret troksni

Vairāk logu nav labāk - bez normalizācijas un atlases analītiķi noslīkst trokšņa daudzumā. Definē, kas tiešām jāuzrauga.

Vienots laiks

Visiem avotiem - sinhronizēts laiks (NTP) un UTC. Bez tā notikumus no dažādām sistēmām nevar korekti salikt secībā (ISO 27001 A.8.17).

Kur rodas logi un kā tie izskatās

Avotu klasifikācija un izplatītākie formāti

Logi nāk no daudziem slāņiem - operētājsistēmas, tīkla iekārtām, aplikācijām un mākoņa. Lai tos salīdzinātu un korelētu, dažādie formāti tiek normalizēti vienotā shēmā. Strukturēti formāti (JSON) ir mašīnlasāmi un ievērojami atvieglo automātisku analīzi salīdzinājumā ar brīva teksta rindām.

OS
Operētājsistēma

Linux: syslog, journald, /var/log/auth.log, auditd. Windows: Security / System / Application Event Log (EVTX), Sysmon. macOS: Unified Logging (log show), OpenBSM auditd.

NET
Tīkls

Ugunsmūris, IDS/IPS (Suricata, Zeek), proxy, VPN, DNS pieprasījumi, NetFlow / flow logs.

APP
Aplikācijas

Tīmekļa serveris (access / error logs), datubāze, aplikācijas biznesa notikumi - vēlams strukturēti (JSON).

CLOUD
Mākonis un identitāte

AWS CloudTrail, Azure Activity, GCP Audit Logs, VPC flow logs; IdP (Entra ID, Okta) pieteikšanās notikumi.

Formāts Tips Kur sastopams Piezīmes
Syslog (RFC 5424)daļēji strukturētsLinux/Unix, tīkla iekārtasStandarta protokols pārraidei; satur facility, severity, timestamp, host.
JSONstrukturētsmodernās aplikācijas, mākonisMašīnlasāms (key-value); vienkārša parsēšana un meklēšana. Ieteicamais formāts.
Windows EVTXstrukturēts (binārs)Windows Event LogNotikumi ar Event ID; lasa ar wevtutil / Get-WinEvent vai SIEM aģentu.
CEF / LEEFstrukturētsdrošības iekārtas, SIEMRažotāju neatkarīgi formāti notikumu nodošanai SIEM.
W3C / Combineddaļēji strukturētsnginx, Apache, IISTīmekļa servera access log; lauki fiksētā secībā, parsē ar grok.

Viens notikums, trīs formāti (ilustratīvi)

# 1) syslog (RFC 5424) - daļēji strukturēts
<38>1 2026-06-03T14:22:01.003Z srv-01 sshd 2913 - - Failed password for root from 203.0.113.7 port 51022 ssh2

# 2) nginx combined - tīmekļa access log
203.0.113.7 - - [03/Jun/2026:14:22:01 +0000] "POST /admin/login HTTP/1.1" 401 564 "-" "curl/8.2"

# 3) JSON - strukturēts (mašīnlasāms, ieteicams)
{
  "ts": "2026-06-03T14:22:01Z", "host": "srv-01", "event": "auth.failure",
  "user": "root", "src_ip": "203.0.113.7", "service": "sshd", "outcome": "failure"
}

Normalizācija

Dažādu avotu lauki tiek pārveidoti vienotā shēmā (piem., ECS - Elastic Common Schema), lai dažādus logus varētu meklēt un korelēt kopā.

Parsēšana

Brīva teksta rindas sadala laukos ar paraugiem (grok, regex). Strukturēti JSON logi šo soli lielā mērā novērš.

Bagātināšana

Notikumus papildina ar kontekstu: GeoIP pēc IP, aktīva (asset) loma, threat intel reputācija - tas paātrina lēmumu pieņemšanu.

No avota līdz SIEM

Centralizēta vākšana, glabāšana un integritāte

Logu nedrīkst analizēt tikai uz iekārtas, kur tie radās: ja sistēma tiek kompromitēta, uzbrucējs var tos izdzēst vai mainīt. Tāpēc logus pēc iespējas ātrāk nogādā ārpus hosta uz centrālu, tikai-pievienojamu (append-only) glabātuvi, kur tos parsē, indeksē un analizē.

Centralizēta logošanas arhitektūra Avoti sūta logus caur aģentiem uz vākšanas un parsēšanas slāni, tālāk uz SIEM glabātuvi ar korelāciju, ko izmanto SOC analītiķis. Centralizēta logošanas arhitektūra AVOTI Serveri · endpoint Tīkls · ugunsmūris Aplikācijas Mākonis · IdP Aģenti Filebeat · rsyslog Winlogbeat · Fluentd buferē · sūta TLS Vākšana parsēšana · normalizācija Logstash · Vector bagātina (GeoIP, intel) SIEM indekss · glabātuve korelācija · alert retention · WORM SOC analītiķis dashboard izmeklē · IR

Integritāte: logus nogādā ārpus hosta ātri, glabā append-only / WORM un pārbauda ar jaucējsummām (hash). Glabāšanas termiņš (retention) atbilstoši normatīviem - NIS2 vismaz 12 mēneši, PCI DSS gads. Laiks sinhronizēts (NTP, UTC), citādi notikumus no dažādiem avotiem nevar korekti korelēt.

Centralizācija

Visi logi vienuviet ļauj korelēt notikumus starp sistēmām un pasargā pierādījumus, ja avota iekārta tiek kompromitēta.

Integritāte

Append-only / WORM glabāšana un jaucējsummas (hash) novērš nepamanītu rediģēšanu - būtiski tiesiskai vērtībai.

Retention

Glabāšanas termiņu nosaka normatīvi un izmeklēšanas vajadzības; pēc termiņa - kontrolēta iznīcināšana, ne stihiska dzēšana.

Droša pārraide

Logus sūta pa šifrētu kanālu (syslog over TLS, RFC 5425) ar buferēšanu, lai īslaicīga tīkla kļūme tos nezaudētu.

Kā no datiem iegūst atklājumus

Analīzes tehnikas un Pyramid of Pain

Logu analīze apvieno noteikumos balstītu (signature) atklāšanu ar uzvedības (anomaly) analīzi. David Bianco 'Pyramid of Pain' modelis sakārto indikatorus pēc tā, cik grūti uzbrucējam tos nomainīt: jo augstāk piramīdā balstās atklāšana, jo noturīgāka tā ir.

Pyramid of Pain Indikatoru piramīda: jo augstāk indikators, jo grūtāk uzbrucējam to nomainīt un noturīgāka atklāšana. Katram līmenim norādīts, cik viegli uzbrucējs to maina. Pyramid of Pain (David Bianco) ↑ Jo augstāk indikators - jo grūtāk uzbrucējam to nomainīt un noturīgāka tava atklāšana TTP Tough · ļoti grūti nomainīt Rīki (tools) Challenging · grūti Tīkla / hosta artefakti Annoying · kaitinoši Domēna vārdi Simple · vienkārši IP adreses Easy · viegli Jaucējsummas (hash) Trivial · triviāli

Pyramid of Pain: labajā pusē - cik viegli uzbrucējam nomainīt indikatoru. Atklāšana pēc uzvedības (TTP, augšā) ir daudz noturīgāka nekā pēc atsevišķas IP vai jaucējsummas (lejā), ko uzbrucējs nomaina viegli.

noteikumi
Signature / noteikumi

Zināmu uzbrukumu paraugi kā meklēšanas noteikumi (piem., Sigma, korelācija). Precīzi, bet pamana tikai zināmo.

baseline
Anomāliju atklāšana

Vispirms nosaka normu (baseline), tad meklē novirzes - neierasts laiks, apjoms, ģeogrāfija, retas darbības.

UEBA
Uzvedības analīze

User & Entity Behavior Analytics - veido katra lietotāja un sistēmas uzvedības profilu un signalizē par tā pārkāpumiem.

korelācija
Korelācija

Saista notikumus no dažādiem avotiem vienā ainā - piem., neizdevusies pieteikšanās + veiksme + privilēģiju maiņa.

threshold
Slieksnis / agregācija

Saskaita notikumus logā - piem., N neizdevušās pieteikšanās minūtē no vienas IP = brute force trauksme.

timeline
Hronoloģija (timeline)

Notikumus sakārto laika ass secībā (super-timeline) incidenta rekonstrukcijai - piem., ar Plaso / Timesketch.

Sigma

Ražotāju neatkarīgs atklāšanas noteikumu formāts (YAML). Vienu noteikumu pārveido dažādu SIEM vaicājumos (SPL, KQL, EQL).

MITRE ATT&CK

Uzbrucēju taktiku un tehniku zināšanu bāze. Logu atklājumus piesaista konkrētām tehnikām, lai novērtētu pārklājumu.

Viltus trauksmes

Noteikumi jāregulē (tuning) - pārāk plaši rada viltus pozitīvus un noguruma efektu, pārāk šauri palaiž uzbrukumus garām.

Bagātināšana

Threat intelligence, GeoIP un aktīvu konteksts paaugstina atklājumu precizitāti un paātrina prioritizāciju.

Ko meklēt logos

Tipiskas uzbrukumu pazīmes un atslēgas notikumi

Lielākā daļa uzbrukumu atstāj raksturīgas pēdas žurnālfailos. Tālāk parādīts, kā atpazīt biežākos uzbrukuma posmus operētājsistēmās - Windows (Event ID), Linux (auth.log) un macOS (Unified Logging) - un tīkla telemetrijā (tcpdump, tshark, Zeek), sasaistot tos ar uzbrukuma fāzēm pēc MITRE ATT&CK.

Uzbrukuma posmu hronoloģija logos No brute force līdz audita žurnāla notīrīšanai - katrs posms atstāj raksturīgu notikumu. Uzbrukuma posmi logos (ilustratīvi) 4625brute force 4624veiksme 4672privilēģijas 4688izpilde 7045persistence 1102notīra logu

Atsevišķs notikums var būt normāls - pazīme ir to secība un sablīvējums laikā, ko atklāj korelācija. Audita žurnāla notīrīšana (1102) ir anti-forensics signāls.

Event ID Avots Nozīme Ko pamanīt
4624SecurityVeiksmīga pieteikšanāsLogon Type: 2 interaktīvs, 3 tīkls, 10 RDP
4625SecurityNeizdevusies pieteikšanāsDaudz pēc kārtas no vienas IP = brute force; daudz kontu = password spray
4648SecurityPieteikšanās ar tiešiem akreditācijas datiemrunas, lateral movement pazīme
4672SecurityPiešķirtas īpašas privilēģijasAdministratīva sesija - sasaistīt ar 4624
4688SecurityIzveidots jauns processKomandrindas argumenti (ja iespējots); aizdomīgi vecāku-bērnu procesi
4720 / 4732SecurityKonts izveidots / pievienots grupaiPrivilēģiju eskalācija, persistence
4768 / 4769SecurityKerberos TGT / TGSKerberoasting, Golden / Silver ticket pazīmes
7045SystemInstalēts jauns servisspersistence; neparasts servisa nosaukums vai ceļš
1102SecurityAudita žurnāls notīrītsAnti-forensics - gandrīz vienmēr aizdomīgi
Sysmon 1/3/11SysmonProcess / tīkls / failsDetalizēta telemetrija; būtiska EDR-stila atklāšanai

Viena pazīme trīs operētājsistēmās - neizdevušos pieteikšanos avota meklēšana

─── LINUX · /var/log/auth.log (vai: journalctl -u ssh) ───
Jun  3 14:22:01 srv-01 sshd[2913]: Failed password for root from 203.0.113.7 port 51022 ssh2
Jun  3 14:23:11 srv-01 sshd[2960]: Accepted password for deploy from 203.0.113.7 port 51190 ssh2   # ← veiksme + sudo seko
$ grep "Failed password" auth.log | awk '{print $(NF-3)}' | sort | uniq -c | sort -rn

─── WINDOWS · Security Event Log (PowerShell) ───
PS> Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4625} -MaxEvents 200 |
       Group-Object { $_.Properties[19].Value } | Sort-Object Count -Descending   # avota IP pēc 4625

─── macOS · Unified Logging (log show) ───
$ log show --last 1h --predicate 'process == "sshd" AND eventMessage CONTAINS "Failed"'
2026-06-03 14:22:01.003+0000  sshd: Failed password for root from 203.0.113.7 port 51022 ssh2
$ log show --predicate 'process == "sudo"' --last 30m   # sudo / privilēģiju eskalācija

Tīkla telemetrija - C2 sakaru un datu izvešanas pazīmes (tcpdump · tshark · Zeek)

─── tcpdump · pakešu līmenis - savienojumi ar aizdomīgo IP ───
$ tcpdump -ni eth0 'host 203.0.113.7 and tcp port 22'
14:22:01.003 IP 203.0.113.7.51022 > 10.0.0.5.22: Flags [S], seq 0, length 0
14:22:01.004 IP 10.0.0.5.22 > 203.0.113.7.51022: Flags [R.], # atteikts

─── tshark · DNS pieprasījumi - tunelēšanas / exfil pazīme (gari, reti domēni) ───
$ tshark -r capture.pcap -Y "dns.flags.response == 0" -T fields -e dns.qry.name
a8f3c1d9e7b2...e9.exfil.example   # neparasti garš subdomēns = iespējama DNS tunelēšana

─── Zeek · conn.log - beaconing (regulāri, vienāda izmēra savienojumi uz vienu mērķi) ───
$ cat conn.log | zeek-cut id.orig_h id.resp_h id.resp_p duration orig_bytes |
       sort | uniq -c | sort -rn | head
   240  10.0.0.5  198.51.100.9  443  1.01  512   # ← 240 gandrīz identiski savienojumi = iespējams C2 beacon
piekļuve
Brute force / spray

Daudz neizdevušos pieteikšanās (4625 / Failed password). Brute force - viena IP; password spray - viena parole pret daudziem kontiem.

pārvietošanās
Lateral movement

4624 Type 3 + 4648 starp hostiem, neparastas administratīvas saiknes, attālinātu servisu izmantošana.

noturība
Persistence

Jauni servisi (7045), plānoti uzdevumi (4698), cron izmaiņas, jauni konti (4720) - lai saglabātu piekļuvi.

slēpšana
Pēdu slēpšana

Audita žurnāla notīrīšana (1102), iztrūkstoši intervāli, izslēgta logošana - skaidrs anti-forensics signāls.

izvešana
Datu izvešana

Neparasti liels izejošais apjoms, DNS tunelēšana, savienojumi ar nezināmiem galamērķiem nestandarta laikā.

web
Tīmekļa uzbrukumi

SQLi / XSS paraugi access logā, 4xx/5xx sablīvējumi, skeneru User-Agent virknes, piekļuve admin ceļiem.

Ekosistēma un atsauces

Rīki, labās prakses un starptautiskie standarti

SIEM

Centralizē, indeksē un korelē logus ar trauksmēm un dashboardiem: Splunk, Elastic Security, Microsoft Sentinel, QRadar, Wazuh, Graylog.

Aģenti / shippers

Vāc un sūta logus uz centru: Filebeat, Winlogbeat, Fluentd / Fluent Bit, rsyslog, syslog-ng, NXLog.

Atklāšanas valodas

Noteikumi un vaicājumi: Sigma (neatkarīgs), Splunk SPL, Microsoft KQL, Elastic EQL; CLI - grep, awk, jq.

Host / IR

Endpoint un izmeklēšana: auditd, Sysmon, osquery; timeline - Plaso / log2timeline, Timesketch.

1
Centralizē un dublē

Logus nogādā ārpus hosta tūlīt; glabā append-only / WORM ar jaucējsummu pārbaudi.

2
Sinhronizē laiku

NTP un UTC visiem avotiem - bez tā korelācija starp sistēmām nav uzticama (ISO 27001 A.8.17).

3
Strukturē (JSON)

Strukturēti logi atvieglo parsēšanu, meklēšanu un automatizāciju; definē vienotu shēmu.

4
Nelogo noslēpumus

Maskē paroles, tokenus un liekos personas datus (GDPR datu minimizācija).

5
Regulē trauksmes

Pārskati un piemēro noteikumus, lai mazinātu viltus pozitīvus un trauksmes nogurumu.

6
Sasaisti ar IR

Atklājumi iet uz incidentu reaģēšanas procesu (NIST SP 800-61) - logi ir tā kurināmais.

Saistība ar NIS2

NIS2 (ES 2022/2555) pieprasa notikumu logošanu, uzraudzību un incidentu atklāšanu; logu glabāšana atbalsta ziņošanas pienākumus.

GDPR

Logi bieži satur personas datus (IP, lietotājvārds) - tiem piemēro datu minimizāciju, glabāšanas termiņus un piekļuves kontroli.

Atruna

Materiāls ir izglītojošs pārskats, nevis standartu pilnais teksts. Konkrētai ieviešanai vienmēr jāskata oficiālais avots.