CVE-2026-42945: waarom deze NGINX-kwetsbaarheid SOC-aandacht verdient
Security & InfrastructuurCVE-2026-42945 is een heap-based buffer overflow in ngx_http_rewrite_module, de NGINX-module die URL rewriting afhandelt. De kwetsbaarheid werd op 13 mei 2026 gepubliceerd door F5 Networks en kreeg een CVSS 3.1-score van 8.1 (HIGH). Het NCSC gaf het beveiligingsadvies NCSC-2026-0164 uit.
De bug is 18 jaar oud, treft NGINX Open Source versies 0.6.27 tot en met 1.30.0, en is pas onlangs ontdekt door het security-onderzoeksplatform DepthFirst.
Dit artikel is een SOC-ready analyse — geen hype, geen fearmongering, wel de feiten die er toe doen voor platformteams, SOC-analisten en CISO's.
Waarom deze CVE meer aandacht verdient dan de CVSS alleen suggereert
Een CVSS van 8.1 is al HIGH, maar de operationele context maakt deze kwetsbaarheid in veel omgevingen ernstiger dan het label doet vermoeden:
-
NGINX staat aan de rand van het netwerk. Voor webapplicaties, API's, reverse proxies en ingress controllers is NGINX het eerste contactpunt voor externe requests — vóór authenticatie, businesslogica of WAF.
-
De kwetsbaarheid zit in een veelgebruikt configuratiepatroon. URL rewriting met regex captures (
$1,$2) is standaard in vrijwel elke niet-triviale NGINX-configuratie. -
RCE is mogelijk bij uitgeschakelde ASLR. NVD en F5 bevestigen dat code execution haalbaar is op systemen zonder Address Space Layout Randomization, of waar ASLR omzeild kan worden. Dit raakt embedded deployments, containers met afwijkende hardening, en oudere Linux-images.
-
Authentication is niet vereist. Een aanvaller heeft geen credentials, sessie of voorafgaande toegang nodig.
Technische duiding
CVE-2026-42945 bevindt zich in ngx_http_rewrite_module. Het probleem treedt op bij een specifiek rewrite-patroon:
- Een
rewritedirective met een unnamed PCRE capture ($1,$2) - Een replacement string die een vraagteken (
?) bevat - Gevolgd door een
rewrite,ifofsetdirective in hetzelfde scope
De bug: NGINX berekent de buffergrootte met één set escaping-aannames, maar schrijft met een andere. De write loopt voorbij de gealloceerde buffer — deterministische heap corruption.
Dit is een data plane issue. Er is geen blootstelling via de control plane.
Drie lagen voor zinvolle prioritering
| Laag | Vraag | SOC-relevantie | |------|-------|----------------| | Versie | Draait NGINX 0.6.27 t/m 1.30.0? | Bepaalt technische kwetsbaarheid | | Configuratie | Zijn kwetsbare rewrite-patronen aanwezig? | Bepaalt praktische blootstelling | | Runtime hardening | Staat ASLR aan? Is NGINX correct geïsoleerd? | Bepaalt DoS vs. RCE-risico |
Alleen versie-informatie is onvoldoende. Configuratieanalyse is verplicht om exploitability correct te bepalen.
Wat platformteams vandaag moeten doen
Primaire actie: upgraden.
| Product | Fixed in | |---------|----------| | NGINX Open Source | 1.30.1 of 1.31.0 | | NGINX Plus R32 | R32 P6 | | NGINX Plus R36 | R36 P4 |
Herstart NGINX na de upgrade zodat workers de gepatchte binary laden.
Als patchen niet direct mogelijk is: vervang unnamed captures ($1, $2) door named captures in alle rewrite directives. Dit is een configuratie-mitigatie, geen structurele vervanging voor patching — gebruik het alleen om tijd te kopen.
Daarnaast:
- Inventariseer alle NGINX-assets — inclusief reverse proxies, ingress controllers, appliances, containers en Plesk/hostingpanelen
- Controleer ASLR-status op alle Linux-hosts die NGINX draaien
- Scan configuraties op het kwetsbare rewrite-patroon
- Prioriteer internet-facing systemen
Wat SOC-teams vandaag moeten doen
Behandel deze CVE als een combinatie van vulnerability management en runtime detection.
Relevante telemetry:
| Bron | Waarop letten |
|------|---------------|
| NGINX access logs | Afwijkende URI-lengtes, ongebruikelijke querystringpatronen, plotselinge 400/500/502-pieken |
| NGINX error logs | worker process exited, segmentation fault, malloc/free fouten |
| Systemd/journald | Herhaalde NGINX restarts, crash loops, core dumps |
| EDR/XDR | NGINX worker die afwijkende child processes start, shell execution, onverwachte file writes |
| Container runtime | Pod restarts, liveness probe failures zonder duidelijke load-verklaring |
Detectiehypothese:
WHEN NGINX version ≤ 1.30.0
AND asset is internet-facing
AND error logs tonen worker crashes of abnormal exits
AND access logs tonen afwijkende URI/query patronen
THEN raise CVE-2026-42945 investigation alert
ASLR-waarschuwing: Alpine, embedded en Raspberry Pi
Systemen zonder ASLR lopen een verhoogd risico op RCE. Dit raakt in het bijzonder:
- Alpine Linux containers (minimalistische userland, soms zonder volledige ASLR)
- Raspberry Pi en ARM-gebaseerde edge deployments
- Minimalistische Linux-images in appliances
- Handmatig gebouwde NGINX-distributies zonder kernel-hardening
- Oudere embedded systemen met gelimiteerde memory protection
Valideer ASLR op elk systeem: cat /proc/sys/kernel/randomize_va_space moet 2 retourneren.
24/48/72-uurs actieplan
Binnen 24 uur:
- Alle NGINX-assets identificeren (Platform/Infra)
- Internet-facing assets prioriteren (SOC)
- Versies vergelijken met kwetsbare range (Vulnerability Management)
- NGINX error logs controleren op worker crashes (SOC)
- ASLR-status controleren op kritieke hosts (Platform/SecOps)
Binnen 48 uur:
- Internet-facing kwetsbare instanties patchen (Platform)
- Rewrite-configuraties reviewen (Platform/App teams)
- SIEM-detectie op crash+afwijkende requestpatronen activeren (SOC)
Binnen 72 uur:
- Resterende interne NGINX-assets patchen of mitigeren (Platform)
- Validatie uitvoeren dat gepatchte workers actief zijn (Platform)
- CMDB/SBOM bijwerken (Enterprise Architecture)
Wat we niet zeker weten
Drie punten die organisaties zelf moeten valideren:
1. Actieve exploitatie. Per 22 mei 2026 is er geen primaire bron (CISA KEV, NVD, F5) die actieve exploitatie in het wild bevestigt. Diverse secundaire bronnen claimen dit wel. Valideer tegen uw eigen threat intelligence feeds en incident data voordat u de prioriteit verhoogt.
2. NCSC-2026-0164. Het NCSC heeft een advisory uitgegeven, maar de exacte publicatiedatum en inhoud konden niet onafhankelijk geverifieerd worden via de NCSC-website.
3. RCE-praktijkrisico. NVD en F5 noemen code execution bij uitgeschakelde of omzeilde ASLR. Dat betekent niet dat elk kwetsbaar systeem RCE-exploitabel is. Het betekent dat systemen zonder moderne memory protections hoog risico zijn.
Conclusie
CVE-2026-42945 is precies het type kwetsbaarheid dat in enterprise-omgevingen verkeerd geprioriteerd kan worden. Het is 18 jaar oud, het treft een van de meest gebruikte webservers ter wereld, en de exploitvoorwaarde is een veelvoorkomend configuratiepatroon.
De juiste aanpak is niet paniek, maar discipline: inventariseren, patchen, configuraties reviewen, ASLR valideren, en uitzonderingen bestuurlijk vastleggen.
Bronnen:
- NVD, CVE-2026-42945 — CVSS 8.1 HIGH, CWE-122 Heap-based Buffer Overflow
- F5 Networks, K000161019 — NGINX ngx_http_rewrite_module vulnerability, fixed versions
- DepthFirst, NGINX Rift — technische writeup en discovery
- NCSC-NL, NCSC-2026-0164
DjimIT adviseert organisaties over vulnerability management, SOC-processen, en BIO2/NIS2 compliance. Heeft uw organisatie hulp nodig bij de prioritering en afhandeling van CVE-2026-42945? Neem contact op.
AI & Security Intelligence
Wekelijkse nieuwsbrief met AI updates, security alerts en compliance inzichten — direct in uw inbox.
Doorlopend Advies
Wilt u structurele begeleiding op AI, security & compliance?
Met een Advisory Subscription heeft u een externe sparringpartner die meedenkt op strategisch en technisch niveau — zonder de overhead van een fulltime dienstverband. Vanaf €1.500 per maand, maandelijks opzegbaar.
Ontdek Advisory Subscription →