Eine SicherheitsanfÀlligkeit in Fluent Bit betrifft viele Cloud-Anbieter.

Im offenen Projekt Fluent Bit wurde eine SicherheitsanfĂ€lligkeit (CVE-2024-4323) entdeckt, die es Angreifern ermöglicht, remote SpeicherbeschĂ€digung zu verursachen, was zu einem Dienstausfall, Datenlecks und potenziell zur AusfĂŒhrung eigenen Codes auf dem Server fĂŒhren kann. Das Problem, dessen Codename "Linguistic Lumberjack" lautet, hat eine kritische GefĂ€hrdungsstufe von 9,8 auf einer Skala von 10. Die SicherheitsanfĂ€lligkeit tritt ab Version 2.0.7 auf und wurde in den Korrekturupdates 2.2.3 und 3.0.4 behoben.

Fluent Bit verzeichnet ĂŒber 10 Milliarden Implementierungen und wird zur Verarbeitung und Sammlung von Log- und Metrikdaten in vielen Unternehmen und Cloud-Plattformen eingesetzt, zu den Nutzern gehören unter anderem Google Cloud, AWS, DigitalOcean, vMware, Cisco, Microsoft, Lyft, LinkedIn, Walmart, Couchbase, Swift und Dell. Im MĂ€rz wurden 13 Millionen Docker-Images mit Fluent Bit heruntergeladen. Laut der Firma Tenable, die die SicherheitsanfĂ€lligkeiten entdeckt hat, blockieren viele Cloud-Dienste den Zugang zu Web-APIs nicht, um interne Metriken wie die Betriebszeit abzurufen, und Fluent Bit wird zur Verarbeitung solcher API-Anfragen verwendet.

Die Schwachstelle wird durch einen Fehler im integrierten HTTP-Server verursacht, der sich bei der Verarbeitung externer Anfragen ĂŒber die API-Aufrufe „/api/v1/traces“ und „/api/v1/trace“ zeigt und es Benutzern ermöglicht, Informationen ĂŒber konfigurierte Traces zu erhalten. UnabhĂ€ngig von der Aktivierung des Tracings können Benutzer auf die API-Daten zugreifen, wenn ihnen der entsprechende Zugang gewĂ€hrt wird. Bei der Analyse eingehender Anfragen wurden die Typen einiger Eingabefelder, die ĂŒber ein Array im JSON-Block ĂŒbermittelt wurden, falsch bestimmt und unabhĂ€ngig vom erwarteten Feldtyp als MSGPACK_OBJECT_STR interpretiert. Die Angabe nicht-stringbasierter Werte im Eingabearray, beispielsweise ganzzahliger Parameter, fĂŒhrte zu SpeicherbeschĂ€digungen, da die Funktion flb_sds_create_len() den ĂŒbermittelten ganzzahligen Wert als Feld mit der GrĂ¶ĂŸe eines Strings extrahierte.

Beispiel einer Anfrage, die einen Absturz verursacht: python3 -c ‘print(„{\"output\":\"stdout\", \"params\": {\"format\": \"json\"},\"inputs\":[\"" + „A“*8 + „\",“ + str(0xffffffff) + „, \"" + „B“*500 + „\"]}“)’ > test curl -v http://:2020/api/v1/traces/ -H „Content-Type: application/json“ -H „Expect: “ —data „@test“

WĂ€hrend der Experimente gelang es den Forschern, einen Notfallabbruch des Dienstes herbeizufĂŒhren und den verbleibenden Inhalt des Arbeitsspeichers zu bestimmen, der bei der Verarbeitung von HTTP-Anfragen verwendet wird und beispielsweise Fragmente sensibler Daten wie ZugriffsschlĂŒssel enthĂ€lt. Da das Problem zu einem von den ĂŒbermittelten Parametern abhĂ€ngigen PufferĂŒberlauf fĂŒhrt, könnte es theoretisch ausgenutzt werden, um eigenen Code im System auszufĂŒhren, jedoch wurde diese Möglichkeit von den Forschern, die das Problem entdeckt haben, aufgrund von Zeitmangel fĂŒr die Entwicklung eines Exploits nicht getestet.

Quelle: opennet.ru

Erwerben Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server đŸ”„ Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster