Node.js heeft updates uitgebracht met Node.js HTTP/2 fixes voor in totaal 16 kwetsbaarheden. In de berichtgeving gaat het met name om problemen in de ingebouwde HTTP/2-ondersteuning en aanvullende issues in HTTPS en TLS. Voor beheerders betekent dit vooral één ding: controleer snel of je runtime op een van de getroffen versielijnen draait en update naar de beveiligde releases.
Volgens de security advisory zijn meerdere fouten in staat om een server te laten crashen of om data uit andere verbindingen te laten uitlekken. Dat maakt dit geen “laag risico” onderwerp, maar iets waar je in je patchplanning prioriteit aan moet geven.
Wat is er precies opgelost met Node.js HTTP/2 fixes?
De release repareert kwetsbaarheden in Node.js zelf, waaronder zeven high-rated issues. De kern van de update ligt bij de server-side codepaden voor HTTP/2, plus relevante uitbreidingen voor HTTPS en TLS wanneer Node.js als netwerkserver fungeert.
Belangrijk: de advisory geeft aan dat er geen workaround is voor systemen die niet direct kunnen updaten. Daarom is “patchen of verouderen” in dit geval het realistische scenario.
Drie hoofdproblemen: crash, geheugenlek en aanvullende serverissues
Er worden meerdere mechanismen genoemd die aanvallers zonder authenticatie kunnen triggeren, afhankelijk van hoe je server en routes zijn ingericht.
1) Servercrash via HTTP/2 gedrag
Een van de opvallende bugs, CVE-2026-123863, laat een server crashen. Het scenario vereist alleen een standaard HTTP/2-server die reageert voordat de server de volledige request body heeft ontvangen. Dit gedrag wordt in de beschrijving gezien als “typisch” binnen de Node.js/HTTP/2-verwachtingen.
De crash is gemeld voor de 24.x- en 26.x release lijnen. Het werkt zowel met TLS als met cleartext HTTP/2.
2) Geheugen lekken naar de client
Daarnaast is er een ernstiger dataprobleem: CVE-2026-123866. Bij deze kwetsbaarheid kan een client delen van het servergeheugen terugkrijgen, met daarin ook materiaal dat bedoeld was voor andere verbindingen. In het bericht staat expliciet dat het om “respons stukken” kan gaan die eigenlijk horen bij andere sessies.
De voorwaarden verschillen per versie:
- Vanaf 24.22.0 en 26.9.0 kan een client de situatie zelf triggeren.
- Bij oudere builds binnen 22.x en oudere 24.x/26.x wordt het risico nog steeds beschreven, maar dan via een scenario waarin de server zelf een stream voortijdig sluit (bijvoorbeeld na een idle timeout).
3) Geheugen lezen in HTTPS: inclusief gevoelige TLS-data
Een aparte kwetsbaarheid in HTTPS servers, CVE-2026-123864, kan een niet-geauthenticeerde client laten lezen uit geheugen dat hoort bij andere verbindingen. Volgens de beschrijving gaat het daarbij onder meer om TLS private keys en verzoeken van andere gebruikers.
Deze issue raakt alle drie ondersteunde versielijnen. Ook hier draait het om specifieke handler-gedragingen: de kwetsbaarheid wordt gekoppeld aan het aanroepen van res.flushHeaders() voordat de request body volledig is aangekomen, gevolgd door later res.end() met data.
Voor het uitlezen is bovendien een route nodig die een request body verwerkt en die terugstuurt of opslaat. Let op: plain HTTP servers gebouwd met node:http zouden niet getroffen zijn volgens de bron.
Welke Node.js versies moet je bijwerken?
De updates zijn uitgebracht voor alle drie ondersteunde release lijnen, met specifieke beveiligde versies. Werk je omgeving bij naar één van de volgende releases:
- 22.23.5
- 24.22.3
- 26.13.1
Voor end-of-life lijnen, waaronder 20.x en 25.x, komen geen fixes meer. De projectinformatie geeft aan dat die versies “altijd getroffen” zijn.
Andere high-rated issues die je aandacht vragen
Naast de drie eerder genoemde categorieën noemt de advisory ook aanvullende kwetsbaarheden met een hoge beoordeling. Voor je impactanalyse zijn deze punten relevant:
- CVE-2026-123865: een client kan een default HTTP/2-server geheugen en file descriptors laten vasthouden, wat kan leiden tot blijvende resource-problemen.
- CVE-2026-123874: client kan servergeheugen beschadigen bij bepaalde file-streaming functies (stream.respondWithFile() en stream.respondWithFD()) op 24.x en 26.x. Het annuleren van downloads kan daarnaast een crash veroorzaken (CVE-2026-123875, met medium rating).
- CVE-2026-126051: een client kan een TLS-server laten crashen op 24.x en 26.x wanneer je server specifieke TLS-hooks gebruikt zoals SNICallback, OCSPRequest, newSession of resumeSession, of wanneer je server.addContext() toepast.
- CVE-2026-123872: bij strengere client-certificate regels per hostname kan een client die goedgekeurd is voor een hostnaam tijdens TLS 1.2 renegotiation overschakelen naar een strengere hostnaam zonder aan alle regels te voldoen.
Waarom dit vooral serverbeheerders raakt
De kwetsbaarheden liggen in de servercodepaden van Node.js: situaties waarin een Node.js-proces zelf verbindingen accepteert. Daardoor is het niet alleen “library security”, maar direct relevant voor applicaties die HTTP/2 of HTTPS/TLS aanbieden aan het publiek.
De advisory vermeldt ook dat er geen aanvallen gerapporteerd zijn die op deze specifieke issues gebaseerd zijn. Dat neemt de urgentie niet weg: door de aard van de fouten (crash en mogelijke datalekken) wil je voorkomen dat je server in een kwetsbaar toestandsgebied komt.
Wat kun je nu doen? (praktische aanpak)
Hier is een korte, uitvoerbare checklist om de Node.js HTTP/2 fixes effectief te benutten:
- Inventariseer alle runtimes: welke Node.js versies draaien er in productie (incl. containers, functions en edge services)?
- Prioriteer servers met HTTP/2 en/of HTTPS die request handlers hebben die met headers en stream timing werken.
- Update naar 22.23.5, 24.22.3 of 26.13.1 en herstart services volgens je standaard change-proces.
- Herbeoordeel TLS-configuraties en streaming code: controleer of je relevante hooks of response/streaming helpers gebruikt.
- Voer regressietests uit rondom tijdige response-afhandeling, vooral waar je eerder flushHeaders of streaming gebruikt.
Heb je veel Node.js in een grotere supply-chain met meerdere componenten? Kijk dan ook naar bredere principes rond software transparency en het beperken van ketenrisico’s. Mogelijk past je aanpak bij de lijn zoals beschreven in Software transparency: SBOM, AI BOMs en VEX uitgelegd.
Vergelijkbaar met eerdere patch-urgentie: timing en netwerklogica
Veel van dit soort incidenten draait niet om “een willekeurige input die crasht”, maar om precies timing- en protocolgedrag in combinatie met serverlogica. Dat zie je ook terug in andere recente kwetsbaarheden rond netwerkdiensten en request handling, waarbij de exacte voorwaarden bepalen of data lekt of een proces instabiel wordt.
Als je parallel systemen beheert die ook HTTP(S)-laag kwetsbaar kunnen zijn, helpt het om patchinformatie te koppelen aan je webserver- en applicatiepatchcyclus. Voor context over hoe snel patchen bij netwerkcomponenten telt, kan dit artikel over een eerder HTTP/2-gerelateerd issue relevant zijn: Apache HTTP/2-mod_http2: RCE via mod_http2.
Conclusie
Node.js HTTP/2 fixes zijn een noodzakelijke update voor organisaties die Node.js inzetten als webserver met HTTP/2 en/of HTTPS/TLS. De combinatie van servercrashes en een mogelijk geheugenlek tussen verbindingen maakt dit een onderwerp dat je niet moet doorschuiven. Update naar de beveiligde versies (22.23.5, 24.22.3 of 26.13.1) en controleer daarnaast je specifieke handler- en TLS/streaming configuraties.
Bron: https://thehackernews.com/2026/11/nodejs-fixes-16-flaws-including-http2.html
