HIGHCVE-2024-4068CVSS 7.5

Ongecontroleerd bronnenverbruik in braces

Platform

nodejs

Component

braces

Opgelost in

3.0.3

3.0.3

AI Confidence: highNVDEPSS 0.2%Beoordeeld: mei 2026

CVE-2024-4068 is een kwetsbaarheid in de braces NPM package die kan leiden tot geheugenuitputting. Een kwaadwillende gebruiker kan "onevenwichtige accolades" als input sturen, waardoor de parsing in een loop terechtkomt en het programma heap geheugen blijft toewijzen zonder het vrij te geven. Dit resulteert in het bereiken van de JavaScript heap limiet en het crashen van het programma, wat een Denial of Service (DoS) veroorzaakt. De kwetsbaarheid treft versies vóór 3.0.3 van de braces package. De kwetsbaarheid is verholpen in versie 3.0.3.

Impact en Aanvalsscenarios

De kwetsbaarheid CVE-2024-4068 in het npm-pakket braces kan leiden tot geheugenuitputting. Dit komt door het ontbreken van limieten op het aantal tekens dat het pakket kan verwerken. Een kwaadwillende actor kan deze kwetsbaarheid uitbuiten door input te verzenden met 'onevenwichtige accolades'. Dit triggert een oneindige lus in de parsercode (lib/parse.js), wat resulteert in continue geheugenallocatie zonder vrijgave. Uiteindelijk wordt de JavaScript heap limiet bereikt, waardoor de applicatie crasht. Deze kwetsbaarheid is vooral zorgwekkend voor applicaties die gebruikersinvoer verwerken, aangezien een aanvaller gemakkelijk een kwaadaardige invoer kan creëren om een denial-of-service te veroorzaken of zelfs de systeembeveiliging te compromitteren.

Uitbuitingscontext

Het exploiteren van deze kwetsbaarheid vereist dat een aanvaller in staat is om de invoer te controleren die aan het braces-pakket wordt verstrekt. Dit kan gebeuren in webapplicaties die gebruikersinvoer verwerken, of in elk ander scenario waarin het braces-pakket wordt gebruikt om bestandsmodellen of strings te parsen. Een aanvaller kan onevenwichtige accolades injecteren in een zoekstring, bestandsnaam of andere gegevens die aan het pakket worden doorgegeven. De eenvoud van exploitatie maakt deze kwetsbaarheid een belangrijk probleem, vooral voor veelgebruikte applicaties.

Wie Loopt Risicowordt vertaald…

Applications built with Node.js that directly or indirectly depend on the braces package, particularly those handling user-supplied input without proper validation, are at risk. This includes web applications, command-line tools, and any other Node.js-based software utilizing the braces package for string manipulation or pattern matching.

Detectiestappenwordt vertaald…

• nodejs / server:

  npm list braces

• nodejs / server:

  npm audit

• nodejs / server: Check application logs for errors related to memory allocation or heap exhaustion. • nodejs / server: Monitor process resource usage (CPU, memory) for sudden spikes indicative of memory exhaustion.

Aanvalstijdlijn

  1. Disclosure

    disclosure

Dreigingsinformatie

Exploit Status

Proof of ConceptOnbekend
CISA KEVNO
InternetblootstellingHoog
Rapporten1 dreigingsrapport
NextGuard98% nog kwetsbaar

EPSS

0.22% (45% percentiel)

CISA SSVC

Exploitatienone
Automatiseerbaaryes
Technische Impactpartial

CVSS-vector

DREIGINGSINFORMATIE· CVSS 3.1CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H7.5HIGHAttack VectorNetworkHoe de aanvaller het doel bereiktAttack ComplexityLowVereiste omstandigheden om te exploiterenPrivileges RequiredNoneVereist authenticatieniveau voor aanvalUser InteractionNoneOf het slachtoffer actie moet ondernemenScopeUnchangedImpact buiten het getroffen onderdeelConfidentialityNoneRisico op blootstelling van gevoelige dataIntegrityNoneRisico op ongeautoriseerde gegevenswijzigingAvailabilityHighRisico op verstoring van dienstennextguardhq.com · CVSS v3.1 Basisscore
Wat betekenen deze metrics?
Attack Vector
Netwerk — op afstand uitbuitbaar via internet. Geen fysieke of lokale toegang vereist.
Attack Complexity
Laag — geen speciale voorwaarden vereist. Betrouwbaar uitbuitbaar.
Privileges Required
Geen — geen authenticatie vereist om te exploiteren.
User Interaction
Geen — automatische en stille aanval. Slachtoffer doet niets.
Scope
Ongewijzigd — impact beperkt tot het kwetsbare component.
Confidentiality
Geen — geen vertrouwelijkheidsimpact.
Integrity
Geen — geen integriteitsimpact.
Availability
Hoog — volledige crash of uitputting van resources. Totale denial of service.

Getroffen Software

Componentbraces
Leverancierosv
Getroffen bereikOpgelost in
0.0.1 – 3.0.23.0.3
3.0.3

Pakketinformatie

Laatste update
3.0.324 maanden geleden

Zwakheidsclassificatie (CWE)

Tijdlijn

  1. Gereserveerd
  2. Gepubliceerd
  3. Gewijzigd
  4. EPSS bijgewerkt
7 dagen na openbaarmaking gepatcht

Mitigatie en Workarounds

De aanbevolen oplossing is om het braces-pakket bij te werken naar versie 3.0.3 of hoger. Deze versie bevat een fix die de hoeveelheid geheugen beperkt die de parser kan toewijzen, waardoor de oneindige lus en geheugenuitputting worden voorkomen. Als een onmiddellijke update niet mogelijk is, kan een tijdelijke mitigatie worden geïmplementeerd door de maximale lengte van de invoer die aan het braces-pakket wordt doorgegeven te beperken. Er moet een risicobeoordeling worden uitgevoerd om de waarschijnlijkheid van uitbuiting en de potentiële impact op het systeem te bepalen. Bovendien kan het monitoren van het geheugengebruik van de applicatie helpen om potentiële aanvallen te detecteren en te verzachten.

Hoe te verhelpenwordt vertaald…

Actualice el paquete `braces` a la versión 3.0.3 o superior. Esto se puede hacer ejecutando `npm install braces@latest` o `yarn upgrade braces@latest` en su proyecto. Asegúrese de verificar que la actualización no cause conflictos con otras dependencias.

CVE Beveiligingsnieuwsbrief

Kwetsbaarheidsanalyses en kritieke waarschuwingen direct in uw inbox.

Veelgestelde vragen

Wat is CVE-2024-4068 in braces?

Dit verwijst naar een string die meer open dan sluitende accolades bevat, of omgekeerd. Bijvoorbeeld '{[()]' of '()[]}'. De braces-pakket parser behandelt deze gevallen niet correct, wat leidt tot de oneindige lus.

Ben ik getroffen door CVE-2024-4068 in braces?

Als uw applicatie het braces-pakket in een versie lager dan 3.0.3 gebruikt, is deze kwetsbaar. U kunt de pakketversie controleren met de opdracht npm list braces in uw terminal.

Hoe los ik CVE-2024-4068 in braces op?

Als tijdelijke mitigatie, beperk de maximale lengte van de invoer die aan het braces-pakket wordt doorgegeven. Dit kan helpen om geheugenuitputting te voorkomen, maar het is geen volledige oplossing.

Wordt CVE-2024-4068 actief misbruikt?

Ja, er zijn Software Composition Analysis (SAST) en vulnerability management tools die deze kwetsbaarheid in uw code kunnen detecteren.

Waar vind ik het officiële braces-beveiligingsadvies voor CVE-2024-4068?

De kwetsbaarheid kan leiden tot een denial-of-service (DoS) door het geheugen van de applicatie uit te putten. In ernstigere gevallen kan het een aanvaller toestaan om kwaadaardige code op het systeem uit te voeren.

Is jouw project getroffen?

Upload je dependency-bestand en kom direct te weten of deze en andere CVEs jou raken.