Apache HTTP Server: Sicherheitslücke CVE-2023-25690 nach PoC geschlossen
von Tina Siering
Sicherheitslücke CVE-2023-25690 nach PoC behoben
Die Apache Foundation gab Anfang März 2023 bekannt, dass die Sicherheitslücke CVE-2023-25690 in Apache HTTP Server 2.4.56 behoben ist. Die implementierte Korrektur verhindert, dass Steuerzeichen in eine Proxy-Anfrage aufgenommen werden. Diese Schwachstelle wies einen CVSS-Wert von 9,8 auf, da sie das Potenzial hatte, Zugriffskontrollen zu umgehen. Bevor ein Sicherheitsforscher am 21. Mai 2023 einen Proof of Concept (PoC) veröffentlichte, schien das Problem weitgehend unbemerkt zu bleiben.
Problem:
Bestimmte Konfigurationen von mod_proxy in den Apache HTTP Server Versionen 2.4.0 bis 2.4.55 können für einen "HTTP Request Smuggling"-Angriff ausgenutzt werden.
Wie ein “HTTP Request Smuggling”-Angriff funktioniert
HTTP Request Smuggling ist eine ausgeklügelte Angriffsmethode, die Inkonsistenzen bei der Verarbeitung von HTTP-Anfragen durch verschiedene Web-Infrastrukturkomponenten ausnutzt. Angreifer nutzen diese Technik, um die Interpretation von Anfragen zu manipulieren, Sicherheitsmaßnahmen zu umgehen, Payloads unbemerkt einzuschleusen und zum potenziellen Zugriff auf sensible Daten oder sogar zur Remote-Befehlsausführung.
Diese Schwachstelle tritt auf, wenn mod_proxy zusammen mit RewriteRule oder ProxyPassMatch aktiviert ist, wobei ein unspezifisches Muster mit einem Teil der vom Benutzer angegebenen Request-Zieldaten (URL) übereinstimmt und dann mittels Variablensubstitution in das Proxy-Request-Ziel eingefügt wird.
Der “Proof of Concept” zeigte, wie diese Schwachstelle im Apache HTTP Server für Header-Injection- und Request-Smuggling-Angriffe gegen eine anfällige Anwendung ausgenutzt werden kann. Um von dieser Sicherheitslücke betroffen zu sein, müssen jedoch mehrere Bedingungen erfüllt sein:
- Die Konfiguration des Apache-Servers muss eine RewriteRule enthalten, die Daten in den Query-String einer Proxy-URL kopiert.
(Mögliches Szenario: RewriteEngine ein RewriteRule "^/here/(.*)" "http://example.com:8080/elsewhere?param=$1"; [P]. Als Folge davon kann es zu Request-Splitting oder Smuggling kommen, was zur Umgehung von Zugriffskontrollen auf dem Proxy-Server, zur unbeabsichtigten Weiterleitung von URLs an bestehende Quellserver und zu Cache Poisoning führen kann.) - Die Anwendung muss den Proxy als signifikante Sicherheitsgrenze betrachten.
- Die Anwendung muss eine anfällige Version des Apache HTTP Servers (2.4.55 oder früher) verwenden.
Datenfluss bei PoC Attacke / Quelle: GitHub
Handlungsempfehlung
Nutzern wird empfohlen, auf Version 2.4.56 (oder höher) von Apache HTTP Server zu aktualisieren.
Weiterführende Informationen: https://nvd.nist.gov/vuln/detail/CVE-2023-25690