CVE-2021-41773: Path Traversal Zero-Day in Apache HTTP Server Exploited

06 oktober 2021

Op 5 oktober heeft het Apache HTTP Server Project een patch uitgebracht voor CVE-2021-41773, een kwetsbaarheid voor path traversal en file disclosure in Apache HTTP Server, een open-source webserver voor Unix en Windows die tot de meest gebruikte webservers behoort. Volgens het beveiligingsadvies is CVE-2021-41773 in het wild uitgebuit als een zero-day. De kwetsbaarheid werd op 29 september onthuld aan het Apache HTTP Server Project door Ash Daulton en het cPanel Security Team. De advisory geeft echter niet aan wanneer de uitbuiting van CVE-2021-41773 werd ontdekt, maar het is aannemelijk dat de exploit heeft geleid tot de versnelde release van een patch.

Wat is Path Traversal

Een path traversal aanval (ook bekend als directory traversal) heeft als doel toegang te krijgen tot bestanden en directories die buiten de web root folder zijn opgeslagen. Door variabelen te manipuleren die verwijzen naar bestanden met “dot-dot-slash (../)”-reeksen en variaties daarop of door absolute bestandspaden te gebruiken, kan toegang worden verkregen tot willekeurige bestanden en mappen die op het bestandssysteem zijn opgeslagen, waaronder broncode van toepassingen of configuratie- en kritieke systeembestanden. Er zij op gewezen dat de toegang tot bestanden wordt beperkt door de operationele toegangscontrole van het systeem (zoals in het geval van vergrendelde of in gebruik zijnde bestanden op het besturingssysteem Microsoft Windows).

De exploit

De kwetsbaarheid is een nieuw geïntroduceerde fout in Apache HTTP Server v2.4.49. De kwetsbaarheid stelt een ongeauthenticeerde kwaadwillende in staat om middels een path-traversal toegang te krijgen tot gevoelige gegevens buiten de scope van de Apache web server. Normaal gesproken heeft het webproces geen toegang tot bestanden buiten de eigen omgeving. Echter, wanneer “require all denied” niet in de configuratie voorkomt om toegang tot bestanden buiten de omgeving van Apache te voorkomen, kan een kwaadwillende door misbruik van de kwetsbaarheid toch dergelijke bestanden benaderen.

Succesvolle exploitatie zou een aanvaller op afstand toegang geven tot willekeurige bestanden buiten de root folder op de kwetsbare webserver. Volgens de Apache’s security advisory kan dit lek ook “de bron van geïnterpreteerde bestanden zoals CGI scripts” lekken, die gevoelige informatie kan bevatten die aanvallers kunnen gebruiken voor verdere aanvallen.

De eerder in 2.4.49 aangebrachte correctie voor path traversal controleerde op de aanwezigheid van path traversal karakters (“../”), maar was onvolledig. Het hield geen rekening met de mogelijkheid dat een aanvaller de procent-gecodeerde versies van deze tekens gebruikt. De nieuwe patch die in de “httpd” server versie 2.4.50 is opgenomen controleert nu op “%2E” en “%2e” wat de gecodeerde representatie is van de punt (“.”).

Proof of Concept

Inmiddels zijn er ook al diverse PoCs op het internet beschikbaar. Dit maakt het risico van de kwetsbaarheid groter. Een voorbeeld van een proof of concept is op Twitter geplaatst.

Hoe ben ik beschermd?

Bescherming tegen de CVE-2021-41773 is vrij eenvoudig. Echter maakt dit het niet onbelangrijk. Wanneer gebruik wordt gemaakt van de Apache HTTP Server 2.4.49 dient deze geüpdatet te worden naar versie 2.4.50.

Identificeren kwetsbare systemen

Een lijst met Tenable-plug-ins om deze kwetsbaarheid te identificeren, wordt hier weergegeven zodra ze worden vrijgegeven. Onze MSS klanten zijn inmiddels op de hoogte gebracht met een overzicht van kwetsbare systemen en maatregelen.

Meer informatie

APACHE-HTTP-SERVER