Huis > Cyber ​​Nieuws > HTTP/2 Flaw Puts Web Servers at Risk of DoS Attacks [CVE-2024-27983]
CYBER NEWS

HTTP/2-fout zorgt ervoor dat webservers risico lopen op DoS-aanvallen [CVE-2024-27983]

Een nieuw onderzoek uitgevoerd door beveiligingsexpert Bartek Nowotarski heeft een potentiële kwetsbaarheid in het HTTP/2-protocol blootgelegd. Bekend als de CONTINUATION Flood, deze exploit stelt aanvallers in staat om uit te voeren denial-of-service (DoS) aanvallen door een server te overspoelen met CONTINUATION-frames.

HTTP2-fout zorgt ervoor dat webservers risico lopen op DoS-aanvallen [CVE-2024-27983]

De Kwetsbaarheid van de CONTINU-overstroming uitgelegd

Het probleem ligt in de manier waarop HTTP/2-implementaties CONTINUATION-frames binnen een enkele stream verwerken. Veel implementaties slagen er niet in om het aantal verzonden CONTINUATION-frames op de juiste manier te beperken of op te schonen, waardoor aanvallers een server kunnen overweldigen met een stroom frames die geheugenuitputting of crashes kunnen veroorzaken.

HTTP/2, net als zijn voorganger HTTP/1, gebruikt headervelden binnen verzoeken en antwoorden. Deze headers zijn geserialiseerd in headerblokken, die vervolgens worden verzonden als blokfragmenten binnen CONTINUATION-frames.

Hoe kan de kwetsbaarheid worden uitgebuit

Aanvallers kunnen dit beveiligingslek misbruiken door een continue stroom CONTINUATION-frames te verzenden zonder dat de vlag END_HEADERS is ingesteld, waardoor de server een overmatige hoeveelheid headergegevens in het geheugen parseert en opslaat.

Deze kwetsbaarheid vormt een ernstige bedreiging, omdat een enkele machine of TCP-verbinding de beschikbaarheid van de server kan verstoren, wat kan leiden tot crashes of prestatieverlies. De aanval is mogelijk niet zichtbaar in HTTP-toegangslogboeken, waardoor detectie een uitdaging wordt.

Betrokken implementaties

Verschillende HTTP/2-implementaties worden beïnvloed, inclusief projecten zoals Apache HTTP Server, Node.js, en Golang. Gebruikers wordt geadviseerd de getroffen software te upgraden om de risico's te beperken. Als er geen oplossing beschikbaar is, het tijdelijk uitschakelen van HTTP/2 kan bescherming bieden tegen deze exploit.

Hier zijn meerdere CVE-lijsten die de kwetsbaarheid in verschillende implementaties benadrukken, volgens het CERT Coördinatiecentrum adviserend.

CVE-2024-27983

Een aanvaller kan de Node.js HTTP/2-server onbeschikbaar maken door een beperkt aantal HTTP/2-framepakketten te verzenden die enkele HTTP/2-frames bevatten. Door de fout kunnen gegevens achterblijven nghttp2 geheugen na een reset. Dit kan gebeuren wanneer headers met HTTP/2 CONTINUATION-frames naar de server worden verzonden en de TCP-verbinding abrupt wordt verbroken door de client, het activeren van de Http2Session-destructor terwijl headerframes nog steeds worden verwerkt, waardoor een raceconditie ontstaat.

CVE-2024-27919

Van de gezant enhttp codec slaagt er niet in een verzoek opnieuw in te stellen wanneer de headerkaartlimieten worden overschreden. Hierdoor kan een aanvaller een reeks CONTINUATION-frames verzenden zonder dat de END_HEADERS-bit is ingesteld, wat leidt tot onbeperkt geheugengebruik.

CVE-2024-2758

Tempesta FW-snelheidslimieten zijn standaard niet ingeschakeld. Ze zijn ofwel te groot ingesteld om aanvallen met lege CONTINUATION-frames op te vangen, ofwel te klein om normale HTTP-verzoeken op de juiste manier af te handelen.

CVE-2024-2653

amphp/http verzamelt HTTP/2 CONTINUATION-frames in een onbegrensde buffer en controleert de headergroottelimiet pas nadat de vlag END_HEADERS is ontvangen, resulterend in een geheugentekort (OOM) neerstorten. amphp/http-client en amphp/http-server worden indirect beïnvloed als ze worden gebruikt met een niet-gepatchte versie van amphp/http. Eerdere versies van amphp/http-client met HTTP/2-ondersteuning (v4.0.0-rc10 naar 4.0.0) worden ook rechtstreeks getroffen.




CVE-2023-45288

De Go-pakketten net/http en net/http2 beperk niet het aantal CONTINUATION-frames dat wordt gelezen voor een HTTP/2-verzoek, waardoor een aanvaller een buitensporig grote set headers kan leveren voor één enkel verzoek, wat leidt tot overmatig CPU-verbruik.

CVE-2024-28182

Een implementatie met behulp van de nghttp2 bibliotheek blijft CONTINUATION-frames ontvangen en zal niet terugbellen naar de applicatie om inzicht in deze informatie mogelijk te maken voordat de stream wordt gereset, resulterend in een Denial of Service (DoS) kwetsbaarheid.

CVE-2024-27316

HTTP/2 CONTINUATION-frames zonder de vlag END_HEADERS kunnen continu door een aanvaller naar een Apache Httpd-implementatie worden gestuurd, die er niet in slaagt het verzoek vroegtijdig te beëindigen.

CVE-2024-31309

Een HTTP/2-VERVOLG DoS-aanval kan ervoor zorgen dat Apache Traffic Server meer bronnen op de server verbruikt. Versies vanaf 8.0.0 door 8.1.9 en van 9.0.0 door 9.2.3 zijn aangetast.

CVE-2024-30255

De HTTP/2-protocolstack in Envoy-versies 1.29.2 of eerder is kwetsbaar voor CPU-uitputting als gevolg van een overvloed aan CONTINUATION-frames. Met de HTTP/2-codec van Envoy kan de client een onbeperkt aantal CONTINUATION-frames verzenden, zelfs nadat de headerkaartlimieten van Envoy zijn overschreden. Hierdoor kan een aanvaller een reeks CONTINUATION-frames verzenden zonder dat de END_HEADERS-bit is ingesteld, waardoor het CPU-gebruik ongeveer verbruikt 1 core per 300 Mbit/s verkeer.

Milena Dimitrova

Een bevlogen schrijver en contentmanager die sinds de start van het project bij SensorsTechForum werkt. Een professional met 10+ jarenlange ervaring in het creëren van boeiende inhoud. Gericht op de privacy van gebruikers en malware ontwikkeling, ze gelooft sterk in een wereld waar cybersecurity speelt een centrale rol. Als het gezond verstand heeft geen zin, ze zullen er zijn om aantekeningen te maken. Deze toelichtingen kunnen later om te zetten in artikelen! Volg Milena @Milenyim

Meer berichten

Volg mij:
Tjilpen

Laat een bericht achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd *

This website uses cookies to improve user experience. By using our website you consent to all cookies in accordance with our Privacybeleid.
Daar ben ik het mee eens