Im Linux-Kernel eine Schwachstelle (), die es ermöglicht, remote einen Denial-of-Service-Angriff durch das Senden von speziell gestalteten UDP-Paketen (packet-of-death) auszulösen. Das Problem wird durch einen Fehler im Handler udp_gro_receive_segment (net/ipv4/udp_offload.c) verursacht, der die Technologie GRO (Generic Receive Offload) implementiert, und kann zu Beschädigungen des Inhalts von Speicherbereichen des Kernels führen, wenn UDP-Pakete mit Nullfüllung (lemsg payload) verarbeitet werden.
Das Problem betrifft nur den Kernel , da die Unterstützung für GRO bei UDP-Sockets im November letzten Jahres hinzugefügt wurde und nur in den letzten stabilen Kernel-Versionen enthalten ist. Die Technologie GRO ermöglicht eine schnellere Verarbeitung einer großen Anzahl eingehender Pakete, indem mehrere Pakete zu größeren Blöcken aggregiert werden, die keine separate Verarbeitung jedes Pakets erfordern.
Für TCP tritt das Problem nicht auf, da bei diesem Protokoll keine Aggregation von Paketen ohne payload unterstützt wird.
Die Schwachstelle wurde bisher nur in Form von , ein patchendes Update wurde noch nicht veröffentlicht (das gestrige Update 5.0.11 enthielt den Fix ). Aus den Distributionen ist der Kernel 5.0 bereits enthalten in , , , und anderer kontinuierlich aktualisierter Distributionen. , , und das Problem nicht betroffen ist.
Das Problem wurde durch eines von Google entwickelten automatisierten Fuzzing-Testsystems und des (KernelAddressSanitizer) festgestellt, das darauf abzielt, Fehler im Umgang mit Speicher sowie fehlerhafte Speicherzugriffe zu identifizieren, wie Zugriffe auf freigegebene Speicherbereiche und das Einfügen von Code in Speicherbereiche, die für solche Manipulationen nicht vorgesehen sind.
Quelle: opennet.ru
