Logging, Monitoring & SIEM
Detectie Die Echt Iemand Wakker Maakt
Aanvalspaden worden klein zodra rechten, segmenten en beheerkanalen consequent zijn ingericht.
In Logging, Monitoring & SIEM ontstaat waarde wanneer detectie direct bruikbaar is voor opvolging, niet alleen voor rapportage.
Zo beperk je niet alleen de kans op incidenten, maar vooral ook de omvang en duur als er iets misgaat.
Directe maatregelen (15 minuten)
Waarom dit telt
De kern van Logging, Monitoring & SIEM is risicoreductie in de praktijk. Technische context ondersteunt de maatregelkeuze, maar implementatie en borging staan centraal.
Logbronnen en Wat Je Moet Vastleggen
De eerste vraag is niet hoe je logt, maar wat. En het antwoord is niet “alles” — dat is onbetaalbaar en onbeheersbaar. Het antwoord is: alles wat je nodig hebt om een incident te reconstrueren, en niets meer.
| Logbron | Wat vastleggen | Retentie | Prioriteit |
|---|---|---|---|
| Windows Security Event Log | Logon/logoff (4624/4625/4634), privilege use (4672/4673), account management (4720-4738), process creation (4688) | 1 jaar | Kritiek |
| Windows Sysmon | Process create, network connect, file create, registry modify, DNS query, WMI events | 1 jaar | Kritiek |
| Linux Syslog (auth) | SSH logins, sudo, su, pam, cron | 1 jaar | Kritiek |
| Linux auditd | Execve, file access, network sockets, kernel module loading | 6 maanden | Hoog |
| Firewall | Allowed en denied connections, source/dest IP, poort, protocol | 6 maanden | Hoog |
| DNS | Alle queries en responses, met bron-IP | 6 maanden | Hoog |
| Web access logs | URL, methode, status code, user-agent, bron-IP, response size | 6 maanden | Hoog |
| Proxy logs | URL, categorie, actie (allow/deny), gebruiker | 6 maanden | Hoog |
| VPN | Verbinding start/stop, gebruiker, bron-IP, duur | 1 jaar | Hoog |
| Active Directory | Replicatie, GPO-wijzigingen, schema-wijzigingen, LDAP-queries | 1 jaar | Kritiek |
| E-mail gateway | Afzender, ontvanger, bijlagen, SPF/DKIM/DMARC-resultaten, spam score | 6 maanden | Gemiddeld |
De gouden regel: log authenticatie en autorisatie altijd. Wie heeft ingelogd, wanneer, vanwaar, en wat heeft hij gedaan. Al het andere is context.
Windows Event Log: de minimale set
Zet op z’n minst de volgende audit policies aan via Group Policy:
Computer Configuration > Policies > Windows Settings > Security Settings > Advanced Audit Policy
Account Logon:
Audit Credential Validation → Success, Failure
Audit Kerberos Authentication Service → Success, Failure
Audit Kerberos Service Ticket Ops → Success, Failure
Logon/Logoff:
Audit Logon → Success, Failure
Audit Logoff → Success
Audit Special Logon → Success
Object Access:
Audit File System → Failure
Audit Registry → Failure
Privilege Use:
Audit Sensitive Privilege Use → Success, Failure
Process Tracking:
Audit Process Creation → Success
(+ Enable command line in process creation events via GPO)
DS Access:
Audit Directory Service Changes → Success
Audit Directory Service Access → Success
Account Management:
Audit User Account Management → Success, Failure
Audit Security Group Management → Success, Failure
Audit Computer Account Management → Success, Failure
Zonder command line logging in process creation events ben je blind
voor wat er daadwerkelijk wordt uitgevoerd. powershell.exe
is niet verdacht. powershell.exe -enc SQBFAFgA... wel.
Centralisatie: Waarom Lokale Logs Niet Genoeg Zijn
Lokale logs hebben twee problemen. Ten eerste: als een aanvaller een
systeem compromitteert, is het wissen van de lokale logs een van de
eerste dingen die hij doet (zie evasion_eventlog in het
commandarsenaal). Ten tweede: correlatie. Een mislukte login op server
A, gevolgd door een succesvolle login op server B met dezelfde
credentials, drie seconden later — dat patroon zie je alleen als je de
logs van A en B naast elkaar kunt leggen.
Architectuur
+-------------+ +-------------+ +-------------------+
| Windows | | Linux | | Firewall / Proxy |
| Sysmon + | | rsyslog / | | Syslog output |
| WEF / agent | | auditd | | |
+------+------+ +------+------+ +--------+----------+
| | |
v v v
+------+------------------+---------------------+------+
| COLLECTOR |
| (Logstash / Fluentd / Wazuh manager / rsyslog) |
+---------------------------+--------------------------+
|
v
+------------+------------+
| SIEM |
| (Wazuh / Elastic / |
| Sentinel / Splunk) |
+-------------------------+
rsyslog: logs doorsturen naar centrale server
# Bronserver: /etc/rsyslog.d/50-remote.conf
auth,authpriv.* @@siem.internal.local:514 # TCP (@@) ipv UDP (@)
*.warn @@siem.internal.local:514
# Centrale server: /etc/rsyslog.d/10-receive.conf
module(load="imtcp")
input(type="imtcp" port="514")
template(name="RemoteLogs" type="string"
string="/var/log/remote/%HOSTNAME%/%PROGRAMNAME%-%$YEAR%-%$MONTH%-%$DAY%.log")
*.* ?RemoteLogsFilebeat: gestructureerde logs naar Elastic
# /etc/filebeat/filebeat.yml
filebeat.inputs:
- type: log
enabled: true
paths: [/var/log/auth.log, /var/log/syslog]
fields:
log_type: linux_system
- type: log
enabled: true
paths: [/var/log/audit/audit.log]
fields:
log_type: linux_audit
output.elasticsearch:
hosts: ["https://siem.internal.local:9200"]
username: "filebeat_writer"
password: "${FILEBEAT_ES_PASSWORD}"
ssl.certificate_authorities: ["/etc/filebeat/ca.pem"]Windows Event Forwarding (WEF)
Voor Windows-omgevingen is WEF de native oplossing — geen extra agents nodig:
SIEM Platformen
| Platform | Type | Kosten | Sterkte | Zwakte |
|---|---|---|---|---|
| Wazuh | Open source | Gratis (infra-kosten) | Intrusion detection, compliance, FIM, vulnerability detection | Steile leercurve, minder community dan Elastic |
| Elastic SIEM | Open source (basis) | Gratis + betaald | Krachtige zoekmachine, goede visualisatie, Detection Engine | Geheugenintensief, complexe configuratie |
| Microsoft Sentinel | Cloud (SaaS) | Per GB ingested | Integratie met M365/Azure, KQL, SOAR-ingebouwd | Kosten lopen snel op, vendor lock-in |
| Splunk | Commercieel | Per GB/dag | Mature, flexibel, enorm ecosysteem | Zeer duur, complexe licentiemodel |
| Graylog | Open source | Gratis (infra-kosten) | Eenvoudige interface, goede log management | Minder detectie-features dan Wazuh/Elastic |
Voor organisaties die beginnen: Wazuh. Het combineert SIEM, intrusion detection, file integrity monitoring en vulnerability scanning in een platform. Het is gratis. Het is goed gedocumenteerd. En het heeft agents voor Windows, Linux en macOS.
Wazuh agent configuratie
<!-- /var/ossec/etc/ossec.conf op de agent -->
<ossec_config>
<client>
<server>
<address>wazuh-manager.internal.local</address>
<port>1514</port>
<protocol>tcp</protocol>
</server>
</client>
<!-- File Integrity Monitoring -->
<syscheck>
<frequency>600</frequency>
<directories check_all="yes" realtime="yes">/etc,/usr/bin,/usr/sbin</directories>
<directories check_all="yes" realtime="yes">/var/ossec/etc</directories>
<ignore>/etc/mtab</ignore>
<ignore>/etc/resolv.conf</ignore>
</syscheck>
<!-- Log monitoring -->
<localfile>
<log_format>syslog</log_format>
<location>/var/log/auth.log</location>
</localfile>
<localfile>
<log_format>audit</log_format>
<location>/var/log/audit/audit.log</location>
</localfile>
</ossec_config>Detectieregels die Ertoe Doen
Detectieregels schrijven is een kunst. Te breed en je verdrinkt in false positives. Te smal en je mist de aanval. Sigma is de lingua franca van detectieregels — een open formaat dat vertaald kan worden naar Splunk SPL, Elastic KQL, Microsoft Sentinel KQL, en tientallen andere platformen.
Sigma regel: brute force detectie
title: Multiple Failed Logons Followed by Success
id: 7a3c2e5f-1b4d-4a8c-9e6f-2d3b5c7a8e1f
status: stable
description: Detecteert meerdere mislukte inlogpogingen gevolgd door een succesvolle login (password spraying / brute force)
author: securitymaatregelen.nl
logsource:
product: windows
service: security
detection:
failed:
EventID: 4625
successful:
EventID: 4624
LogonType:
- 3 # Network
- 10 # RemoteInteractive (RDP)
condition: failed | count(TargetUserName) by SourceAddress > 5
timeframe: 10m
falsepositives:
- Legitieme gebruikers die hun wachtwoord zijn vergeten
- Service accounts met verlopen credentials
level: medium
tags:
- attack.credential_access
- attack.t1110.003Sigma regel: DCSync detectie
title: DCSync Attack Detected
id: 5e8f2a1b-3c4d-6e7f-8a9b-0c1d2e3f4a5b
status: stable
description: Detecteert replicatie-aanvragen van niet-DC systemen (DCSync)
logsource:
product: windows
service: security
detection:
selection:
EventID: 4662
Properties|contains:
- '1131f6aa-9c07-11d1-f79f-00c04fc2dcd2' # DS-Replication-Get-Changes
- '1131f6ad-9c07-11d1-f79f-00c04fc2dcd2' # DS-Replication-Get-Changes-All
filter:
SubjectUserName|endswith: '$'
condition: selection and not filter
level: critical
tags:
- attack.credential_access
- attack.t1003.006Sigma vertalen naar Elastic KQL
pip install sigma-cli pySigma-backend-elasticsearch pySigma-pipeline-elasticsearch-windows
sigma convert -t elasticsearch -p elasticsearch-windows rules/brute_force.ymlAlerting zonder Alert Fatigue
Alert fatigue is de reden waarom Target veertig miljoen creditcards kwijtraakte. Het SOC kreeg zoveel alerts dat de kritieke alerts verdronken in de ruis. De oplossing is niet minder alerts — het is betere alerts.
Prioriteringsmodel
| Prioriteit | Criteria | Responstijd | Voorbeeld |
|---|---|---|---|
| P2 - Hoog | Waarschijnlijke aanval, privilege escalation | < 1 uur | Brute force gevolgd door success, nieuwe Domain Admin |
| P3 - Gemiddeld | Verdacht gedrag, policy violation | < 4 uur | Ongebruikelijke login-tijden, PowerShell -EncodedCommand |
| P4 - Laag | Informatief, tuning nodig | Volgende werkdag | Mislukte logins onder threshold, policy changes |
Tuning: de eerste 90 dagen
Week 1-2: alle regels op alert, niets onderdrukken — verzamel data. Week 3-4: identificeer top 10 false positive bronnen, maak whitelists. Week 5-8: verfijn thresholds per omgeving. Week 9-12: implementeer playbooks voor P1 en P2, automatiseer waar mogelijk. Doorlopend: elke false positive is een kans om de regel te verbeteren.
Eén concrete tip: maak een whitelist van bekende service
accounts en hun normale gedrag. svc_backup die elke nacht
om 02:00 inlogt op de fileserver is normaal. svc_backup die
om 14:30 inlogt op de domain controller is dat niet.
Log Integriteit en Forensische Waarde
Logs die gemanipuleerd kunnen worden, zijn forensisch waardeloos. Een
aanvaller die wevtutil cl Security draait op een
Windows-machine wist het hele Security Event Log in een seconde. Als dat
je enige kopie was, is je bewijsmateriaal verdwenen.
Tamper-proof logging
# Linux: append-only attribuut op logbestanden
chattr +a /var/log/auth.log
chattr +a /var/log/audit/audit.log
# Verificatie
lsattr /var/log/auth.log
# Output: -----a--------e--- /var/log/auth.logTijdsynchronisatie (NTP)
Logs zonder betrouwbare timestamps zijn waardeloos voor correlatie. Als server A denkt dat het 14:00 is en server B denkt dat het 14:07 is, kun je geen tijdlijn reconstrueren.
# /etc/chrony/chrony.conf
server ntp1.internal.local iburst prefer
server ntp2.internal.local iburst
driftfile /var/lib/chrony/chrony.drift
makestep 1.0 3
rtcsyncLog hashing voor bewijsketen
#!/bin/bash
# Dagelijkse hash van logbestanden voor forensische integriteit
LOG_DIR="/var/log/remote"
HASH_FILE="/var/log/integrity/hashes-$(date +%Y%m%d).sha256"
find "$LOG_DIR" -name "*.log" -mtime -1 -exec sha256sum {} \; > "$HASH_FILE"
# Stuur hash-bestand naar een apart systeem (write-once storage)
scp "$HASH_FILE" integrity@vault.internal.local:/hashes/Implementatie: Van Nul naar Bruikbaar
Een stappenplan voor organisaties die nog niets hebben — of die denken dat ze iets hebben maar eigenlijk een Splunk-licentie betalen waar niemand naar kijkt.
| Fase | Duur | Acties | Resultaat |
|---|---|---|---|
| 1. Fundament | Week 1-2 | NTP configureren, Sysmon uitrollen op alle Windows-systemen, auditd op Linux | Logs worden gegenereerd |
| 2. Centralisatie | Week 3-4 | rsyslog/Filebeat/WEF configureren, Wazuh manager installeren | Logs staan op een plek |
| 3. Basis detectie | Week 5-8 | Top 10 Sigma-regels implementeren (brute force, lateral movement, privilege escalation) | Eerste alerts |
| 4. Tuning | Week 9-12 | False positives whitelisten, thresholds aanpassen, playbooks schrijven | Bruikbare alerts |
| 5. Maturiteit | Doorlopend | Threat hunting, nieuwe detectieregels, purple team validatie | Proactieve detectie |
Sysmon: de belangrijkste agent die je kunt installeren
Sysmon is gratis, van Microsoft, en logt procesaanmaak, netwerkverbindingen, file creates, registry-wijzigingen, DNS-queries, en meer. Zonder Sysmon ben je blind voor het merendeel van de aanvalstechnieken in dit handboek.
# Download Sysmon
# Gebruik de SwiftOnSecurity configuratie als startpunt
Sysmon64.exe -accepteula -i sysmonconfig-export.xml
# Verificeer dat Sysmon draait
Get-Service Sysmon64
Get-WinEvent -LogName "Microsoft-Windows-Sysmon/Operational" -MaxEvents 5Samenvatting
Logging en monitoring zijn het verschil tussen “we zijn gehackt en we weten het” en “we zijn gehackt en we ontdekken het over zes maanden uit de krant.” De technologie is beschikbaar en grotendeels gratis: Sysmon voor endpoint-visibility, rsyslog of Filebeat voor centralisatie, Wazuh of Elastic als SIEM-platform, en Sigma als universeel formaat voor detectieregels. De implementatie begint bij het vastleggen van de juiste logs (authenticatie, procesaanmaak, netwerkverkeer), het centraliseren op een systeem dat de aanvaller niet kan wissen, en het schrijven van detectieregels die daadwerkelijk betekenisvolle alerts genereren. Alert fatigue is de vijand — los het op met prioritering, tuning, en playbooks, niet met het uitzetten van alerts. Log integriteit is niet optioneel: append-only opslag, NTP-synchronisatie, en hash-verificatie zorgen dat je logs forensisch bruikbaar blijven. En het belangrijkste: iemand moet naar de logs kijken. Een SIEM zonder analisten is een duur archiefsysteem. Clifford Stoll had een printer en een pieper, en hij vond de KGB. Het gereedschap is er. De vraag is of iemand het oppakt.
Verder lezen in de kennisbank
Deze artikelen in het portaal geven je meer achtergrond en praktische context:
- Firewalls — de uitsmijter die niet alles tegenhoudt
- Netwerksegmentatie — waarom je niet alles aan alles moet knopen
- DNS — het telefoonboek dat het internet bij elkaar houdt
- Logging en monitoring — de bewakingscamera's van je IT-omgeving
- Zero Trust — vertrouw niemand, ook jezelf niet
Je hebt een account nodig om de kennisbank te openen. Inloggen of registreren.
Gerelateerde securitymaatregelen
Deze artikelen bieden aanvullende context en verdieping: