Gemiddeld · 6.0 Node.js & npm GHSA-ch52-4w7c-c8xp CVE-2026-93748
http-cache-semantics: cache-lekkage tussen gebruikers via max-stale-richtlijn (CVE-2026-93748)
Een kwetsbaarheid in http-cache-semantics (tot en met versie 4.2.0) maakt het mogelijk voor niet-geauthenticeerde aanvallers om gecachte responses van andere gebruikers op te vragen, inclusief sessiecookies, door een aangepaste max-stale-aanvraag te sturen. Er is momenteel geen fix beschikbaar.
AI-samenvatting
In http-cache-semantics, een veelgebruikte npm-bibliotheek voor het implementeren van HTTP-cacheregels, is een kwetsbaarheid aan het licht gekomen. Onder de noemer CVE-2026-93748 kan een niet-geauthenticeerde aanvaller gecachte responses van andere gebruikers opvragen door de max-stale-richtlijn van de client te manipuleren. Omdat hierdoor sessiecookies uit gedeelde caches kunnen uitlekken, vormt dit probleem een reëel risico voor applicaties die op deze bibliotheek vertrouwen voor cachevalidatie. Er is op dit moment nog geen gepatchte versie beschikbaar.
Wat is er gebeurd
Vastgesteld is dat http-cache-semantics cache-items die om veiligheidsredenen bewust zijn 'genuld', niet correct valideert bij het verwerken van de max-stale-richtlijn van een client. Door dezelfde URL aan te vragen met een grote max-stale-waarde kan een aanvaller de bibliotheek ertoe brengen een gecachte response te leveren die bedoeld was voor een andere gebruiker — inclusief gevoelige gegevens zoals Set-Cookie-sessiegegevens — afkomstig uit gedeelde cache-items.
Technische oorzaak
De kwetsbaarheid is geclassificeerd als CWE-524, Gebruik van een cache met gevoelige informatie. De oorzaak ligt in de manier waarop http-cache-semantics de max-stale-richtlijn verwerkt in combinatie met cache-items die om veiligheidsredenen zijn genuld. Door deze validatiefout kunnen verouderde, genulde cache-items alsnog worden teruggegeven aan een aanvrager die niet de oorspronkelijke eigenaar van de response is, waarmee de beveiligingsmaatregel die hergebruik had moeten voorkomen, wordt omzeild.
Waarom dit belangrijk is
Door deze kwetsbaarheid kunnen gecachte gegevens van een andere gebruiker worden opgevraagd, waaronder specifiek sessiecookies, zonder dat authenticatie of enige vorm van gebruikersinteractie vereist is. In omgevingen met gedeelde cachelagen kan een aanvaller zo de sessie van een andere gebruiker overnemen door simpelweg aanvragen met een gemanipuleerde max-stale-waarde naar dezelfde URL te sturen.
Wie wordt getroffen
Elke applicatie of dienst die gebruikmaakt van het npm-pakket http-cache-semantics in een versie tot en met 4.2.0 is potentieel kwetsbaar, met name wanneer deze draait achter of naast gedeelde cache-infrastructuur waarbij cache-items van meerdere gebruikers kunnen samenkomen.
Getroffen versies
Volgens het gepubliceerde advies zijn alle versies van http-cache-semantics vanaf de eerste release (versie 0) tot en met versie 4.2.0 kwetsbaar.
Oplossingen en mitigatie
Op het moment van publicatie is er geen gepatchte versie van http-cache-semantics vermeld in de beschikbare adviesgegevens. Organisaties doen er goed aan de GitHub Advisory Database (GHSA-ch52-4w7c-c8xp) en de NVD-registratie voor CVE-2026-93748 in de gaten te houden voor updates over een patch van de leverancier. Overweeg, totdat er een fix beschikbaar is, gedeelde cache-implementaties die op deze bibliotheek steunen te controleren en te bepalen of de verwerking van max-stale op de cachelaag kan worden beperkt of uitgeschakeld als tijdelijke maatregel.
Aanbevolen actie
Controleer uw dependency-boom op het gebruik van http-cache-semantics en ga na of uw implementatie gebruikmaakt van gedeelde caching waarbij responses tussen gebruikers kunnen worden blootgesteld. Omdat er momenteel geen officiële fix beschikbaar is, raden we aan compenserende maatregelen te treffen, zoals het beperken of valideren van max-stale-waarden op uw cacheproxy, en het advies te blijven volgen totdat een gepatchte release beschikbaar komt, voordat u blijft vertrouwen op de standaard max-stale-verwerking in scenario's met gedeelde caching.
PatchBriefing-score
6.0 / 10 · Gemiddeld
Officiële CVSS: 8.7
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Waarom deze score
Dit probleem heeft een PatchBriefing-score van 6 op 10 gekregen. De CVSS 4.0-basisscore van 8,7 weerspiegelt een hoge impact op vertrouwelijkheid, gecombineerd met exploitatieomstandigheden die netwerkgebaseerd zijn, een lage complexiteit kennen en geen privileges of gebruikersinteractie vereisen — dit vormde het grootste deel van de score. Aanvullende bijdragen kwamen van de niet-geauthenticeerde, op afstand uitvoerbare aanvalsvector, het ontbreken van vereiste gebruikersinteractie en het ontbreken van een beschikbare fix, die elk een beperkte extra bijdrage leverden. Er is geen bewijs van actieve exploitatie, publiek beschikbare exploitcode of EPSS-gebaseerde waarschijnlijkheidsgegevens gevonden, wat de totale score beperkte ondanks de hoge CVSS-basisscore.
Getroffen versies
- http-cache-semantics <= 4.2.0
- kwetsbaar
Gemelde oplossingen
Op het moment van publicatie is er geen gepatchte versie van http-cache-semantics vermeld in de beschikbare adviesgegevens. Organisaties doen er goed aan de GitHub Advisory Database (GHSA-ch52-4w7c-c8xp) en de NVD-registratie voor CVE-2026-93748 in de gaten te houden voor updates over een patch van de leverancier. Overweeg, totdat er een fix beschikbaar is, gedeelde cache-implementaties die op deze bibliotheek steunen te controleren en te bepalen of de verwerking van max-stale op de cachelaag kan worden beperkt of uitgeschakeld als tijdelijke maatregel.
Hoe dit rapport is gemaakt
2 bronrecords zijn opgehaald, gekoppeld en gebruikt om het rapport hierboven op te stellen.
-
GitHub Advisory Database database
-
NVD (NIST) database
Revisiegeschiedenis
- Gepubliceerd
- Gegenereerd
Gerelateerd
Relevante veranderingen voor de stacks die je volgt.
Kies je stacks, onderwerpen en eventueel WordPress-plugins. Om 07:00 CEST worden passende meldingen en releases uit de rapportageperiode in één e-mail gegroepeerd.
✓ Kies stacks en onderwerpen✓ Pas voorkeuren altijd aan✓ Eén gebundelde e-mail