DFN-CERT Portal

Schwachstellen

DFN-CERT-2017-1993: Linux-Kernel: Mehrere Schwachstellen ermöglichen u.a. die komplette Systemübernahme

Historie

Version 1 (2017-11-09 15:58)
Neues Advisory

Betroffene Software

Linux-Kernel < 4.4.88

Betroffene Plattformen

SUSE Linux Enterprise Real Time Extension 12 SP2

Lösung

Patch

SUSE Security Update SUSE-SU-2017:2956-1

Beschreibung

Mehrere Schwachstellen im Linux-Kernel ermöglichen einem im benachbarten Netzwerk befindlichen, nicht authentisierten Angreifer die Übernahme des Systems, einen Denial-of-Service-Angriff sowie eine Erweiterung seiner Privilegien. Zwei Schwachstellen können von einem im benachbarten Netzwerk befindlichen, einfach authentisierten Angreifer zu einem Denial-of-Service-Angriff und einer Privilegieneskalation ausgenutzt werden. Mehrere weitere Schwachstellen können von einem lokalen, nicht authentisierten Angreifer zu einem Denial-of-Service-Angriff mit einer daraus möglicherweise resultierenden Systemübernahme, zur Eskalation von Privilegien und der Umgehung von Sicherheitsvorkehrungen ausgenutzt werden. Weitere Schwachstellen können von einem lokalen, einfach authentisierten Angreifer zu Systemübernahmen und einem Denial-of-Service-Angriff ausgenutzt werden.

Für SUSE Linux Enterprise Real Time Extension 12 SP2 stehen Sicherheitsupdates für den Linux-Kernel auf Version 4.4.88 zur Verfügung, um diese Schwachstellen und zahlreiche weitere Programmfehler zu beheben.

Schwachstellen

CVE-2017-1000252: Schwachstelle in Linux-Kernel ermöglicht Denial-of-Service-Angriff

Im Linux-Kernel existiert eine Schwachstelle, wenn dieser mit der Unterstützung für die KVM-Virtualisierung (CONFIG_KVM) erstellt wurde und zusätzlich auch das 'Virtual Function I/O'-Feature (CONFIG_VFIO) aktiviert ist. Ein bösartiger Gastbenutzer kann dann eine Ausnahmebehandlung auslösen, indem dieser einen virtuellen Interrupt (Guest IRG) mit einem Index größer 1024 sendet. Ein einfach authentisierter Angreifer im benachbarten Netzwerk kann einen Denial-of-Service (DoS)-Angriff durchführen.

CVE-2017-12154: Schwachstelle in Linux-Kernel ermöglicht Denial-of-Service-Angriff

In der Virtualisierungslösung KVM (CONFIG_KVM) des Linux-Kernels existiert eine Schwachstelle bei mehrstufiger Virtualisierung in mehreren Ebenen ('nested=1'), da ein Gastsystem der Ebene 2 ('L2 Guest') auf das Hardware-Register CR8 des Host-Systems auf Ebene 0 ('L0 Host') lesend und schreibend zugreifen kann, wodurch das Host-System zum Absturz gebracht werden kann. Ein einfach authentisierter Angreifer im benachbarten Netzwerk kann einen Denial-of-Service (DoS)-Angriff durchführen.

CVE-2017-14106: Schwachstelle in Linux-Kernel ermöglicht Denial-of-Service-Angriff

Die Funktion 'tcp_disconnect' in 'net/ipv4/tcp.c' im Linux-Kernel vor Version 4.12 erlaubt über das Anstoßen (Triggern) eines Verbindungsabbaus (Disconnect) innerhalb eines bestimmten 'tcp_recvmsg'-Code-Pfades eine Division durch Null und damit einen Systemabsturz zu bewirken. Ein lokaler, nicht authentisierter Angreifer kann einen Denial-of-Service (DoS)-Angriff durchführen.

CVE-2017-11472: Schwachstelle in Linux-Kernel ermöglicht Umgehen von Sicherheitsvorkehrungen

Die Funktion 'acpi_ns_terminate()' in 'drivers/acpi/acpica/nsutils.c' im Linux-Kernel vor Version 4.12 bereinigt den 'Operand Cache' nicht und verursacht einen Dump des Kernel-Stack-Speichers. Ein lokaler, nicht authentisierter Angreifer kann diese Schwachstelle ausnutzen, um sensitive Informationen aus dem Kernel-Speicher auszuspähen und mittels einer manipulierten ACPI (Advanced Configuration and Power Interface)-Tabelle den KASLR (Kernel Address Space Layout Randomization)-Sicherheitsmechanismus zu umgehen.

CVE-2017-1000251: Schwachstelle in Linux-Kernel ermöglicht Übernahme eines Systems

Im Bluetooth-Subsystem des Linux-Kernels existiert eine Schwachstelle bei der Verarbeitung ausstehender L2CAP-Konfigurationsanfragen (Logical Link Control and Adaptation Protocol), wodurch der Stack-basierte Pufferspeicher zum Überlauf gebracht werden kann (Stack Buffer Overflow). Diese den Linux-Kernel betreffende Schwachstelle im Bluetooth-Protokoll ist zusammen mit einer weiteren Schwachstelle (CVE-2017-1000250), die es ermöglicht Informationen auszuspähen, welche die Ausnutzung dieser Schwachstelle begünstigen können, unter dem Namen 'BlueBorne-Angriff' für Linux veröffentlicht worden.

Ein Angreifer, der sich in einer Reichweite befindet, um eine Bluetooth-Übertragung aufbauen zu können, kann auf Systemen mit aktivierter 'Stack Protection' (CONFIG_CC_STACKPROTECTOR=y) einen Denial-of-Service-Angriff durchführen und auf Systemen ohne 'Stack Protection' beliebigen Programmcode mit Root-Privilegien zur Ausführung bringen. Aufgrund der Beschaffenheit der 'Stack Protection'-Schutzvorkehrung kann die Ausführung beliebigen Programmcodes auch bei aktivierter Schutzvorkehrung nicht vollständig ausgeschlossen werden, ein erfolgreicher, derartiger Angriff ist aber unwahrscheinlich.

CVE-2017-14051: Schwachstelle in Linux-Kernel ermöglicht Denial-of-Service-Angriff

In der Funktion 'qla2x00_sysfs_write_optrom_ctl' innerhalb von 'drivers/scsi/qla2xxx/qla_attr.c' im Linux-Kernel bis inklusive Version 4.12.10 kann es zu einem Ganzzahlüberlauf kommen. Ein lokaler, einfach authentisierter Angreifer mit 'root'-Privilegien kann diese Schwachstelle ausnutzen, um einen Denial-of-Service-Angriff durchzuführen.

CVE-2017-8831: Schwachstelle in Linux-Kernel ermöglicht Denial-of-Service-Angriff

In der Funktion 'saa7164_bus_get' in 'drivers/media/pci/saa7164/saa7164-bus.c' im Linux-Kernel existiert eine Schwachstelle, die es einem Angreifer ermöglicht, Speicherzugriffe außerhalb der gültigen Speichergrenzen eines Speicherarrays durchzuführen (Out-of-Bounds Array Access), wodurch ein Denial-of-Service (DoS)-Zustand herbeigeführt werden kann. Zudem sind weitere, nicht näher spezifizierte Einflüsse durch das Ändern von Sequenznummern möglich, die die Vertraulichkeit und Integrität des Systems beeinträchtigen können. Ein lokaler, nicht authentisierter Angreifer kann eine Denial-of-Service-Angriff durchführen.

CVE-2017-12134: Schwachstelle in Xen ermöglicht u.a. Privilegieneskalation

Die Blockschicht (Block Layer) in Linux kann angrenzende blockweise Input-/Output-Anfragen (Block I/O, BIO) zusammenführen. Wird Linux als Gastsystem auf Xen ausgeführt, wird der standardmäßige Algorithmus zum Zusammenführen der genannten Anfragen durch den Xen-eigenen Algorithmus ersetzt. Bei einem x86-basierten PV-Gastsystem kann dies dazu führen, dass einige BIOs fälschlicherweise zusammengeführt werden, wodurch der eingehende/ausgehende Datenstrom korrumpiert werden kann. Ein einfach authentisierter Angreifer im benachbarten Netzwerk kann durch das Ausnutzen der Schwachstelle unerlaubt lesend beziehungsweise schreibend auf Speicherbereiche außerhalb der zulässigen Speichergrenzen zugreifen, wodurch Informationen ausgespäht, ein Denial-of-Service (DoS)-Angriff durchgeführt oder Privilegien eskaliert werden können.

CVE-2017-1000112: Schwachstelle in Linux-Kernel ermöglicht Systemübernahme

Im Linux-Kernel existiert eine Speicherkorruptions-Schwachstelle beim Erstellen von UDP Fragmentation Offload (UFO)-Datenpaketen mit der Option 'MSG_MORE'. Die Funktion '__ip_append_data' ruft dabei die Funktion 'ip_ufo_append_data' auf, um Daten anzufügen. Dabei kann es zwischen zwei 'send'-Aufrufen dazu kommen, dass der Pfad zum Anfügen der Daten (Append Path) von 'UFO' auf 'non-UFO' wechselt. In der Folge tritt eine Speicherkorruption auf, weil UFO-Datenpakete die maximale Größe eines unfragmentierten Datenpakets (Maximum Transmission Unit, MTU) überschreiten und im Kontext eines 'non-UFO'-Pfades dadurch außerhalb der zulässigen Speichergrenzen in den Pufferspeicher geschrieben wird. Ein lokaler, einfach authentisierter Angreifer kann durch das Ausnutzen der Schwachstelle beliebigen Programmcode zur Ausführung bringen und die Kontrolle über ein System vollständig übernehmen.

CVE-2017-1000111: Schwachstelle in Linux-Kernel ermöglicht Systemübernahme

Aufgrund der Art und Weise, wie die Socket-Implementierung für Rohpakete mit Synchronisierungen umgeht, existiert eine ausnutzbare Wettlaufsituation (Race Condition) im Netzwerk-Subsystem des Linux-Kernels. Ein lokaler, einfach authentisierter Benutzer, der über die Möglichkeit verfügt, ein Rohpaket-Socket zu öffnen, wofür die Fähigkeit 'CAP_NET_RAW' nötig ist, kann durch das Ausnutzen der Schwachstelle auf bereits freigegebenen Speicher zugreifen (Use-after-Free), dadurch seine Privilegien eskalieren und das System möglicherweise komplett kompromittieren.

CVE-2017-7533: Schwachstelle in Linux-Kernel ermöglicht Systemübernahme

Im Linux-Kernel existiert eine ausnutzbare Wettlaufsituation (Race Condition) zwischen Threads der Funktionen 'inotify_handle_event' und 'vfs_rename', während diese eine Umbenennung bei ein und derselben Datei durchführen. In Folge der Wettlaufsituation ist es möglich die 'next free slab'-Daten beziehungsweise den 'next free slab'-Listenzeiger mit Daten zu korrumpieren, die unter der Kontrolle eines Angreifers stehen.

CVE-2017-7542: Schwachstelle in Linux-Kernel ermöglicht Denial-of-Service-Angriff

In der Funktion 'ip6_find_1stfragopt' in 'net/ipv6/output_core.c' im Linux-Kernel bis 4.12.3 existiert eine Schwachstelle, durch die es zu einem Ganzzahlüberlauf (Integer Overflow) und einer Endlosschleife (Infinite Loop) kommen kann. Ein lokaler Benutzer, als wahrscheinlich nicht authentisierter Angreifer, kann diese Schwachstelle durch Öffnen eines Raw-Sockets ausnutzen, um einen Denial-of-Service (DoS)-Zustand zu bewirken.

CVE-2017-7541: Schwachstelle in Linux-Kernel ermöglicht u.a. Denial-of-Service-Angriff

In der Funktion 'brcmf_cfg80211_mgmt_tx' im Linux-Kernel existiert eine Schwachstelle aufgrund eines möglichen Pufferüberlaufs auf dem Heap (Heap Buffer Overflow). Ein lokaler, nicht authentisierter Angreifer kann diese Schwachstelle mit Hilfe eines speziell präparierten NL80211_CMD_FRAME Netlink-Pakets für einen Denial-of-Service-Angriff ausnutzen und möglicherweise seine Privilegien eskalieren.

Im Kontext der WLAN-Komponente von Google Android ermöglicht die Schwachstelle einem entfernten, nicht authentisierten Angreifer, mit Hilfe einer lokalen, schädlichen Anwendung, beliebigen Programmcode im Kontext eines privilegierten Prozesses auszuführen und dadurch eine Privilegieneskalation zu erreichen.

CVE-2017-11473: Schwachstelle in Linux-Kernel ermöglicht Privilegieneskalation

In der Funktion 'mp_override_legacy_irq' in 'arch/x86/kernel/acpi/boot.c' im Linux-Kernel bis 4.12.2 existiert eine Schwachstelle aufgrund eines Pufferüberlaufs (Buffer Overflow). Ein lokaler Benutzer, als nicht authentisierter Angreifer, kann diese Schwachstelle mit Hilfe einer präparierten ACPI-Tabelle ausnutzen, um Privilegien zu erlangen.

CVE-2017-10810: Schwachstelle in Linux-Kernel ermöglicht Denial-of-Service-Angriff

In der Funktion 'virtio_gpu_object_create' in 'drivers/gpu/drm/virtio/virtgpu_object.c' im Linux-Kernel bis einschließlich Version 4.11.8, wenn dieser mit Unterstützung für den VirtIO GPU Treiber (CONFIG_DRM_VIRTIO_GPU) gebaut ist, existiert eine Schwachstelle aufgrund eines Speicherlecks (Memory Leak) bei der Erzeugung eines GPU-Objects. Ein nicht authentisierter Angreifer im benachbarten Netzwerk kann diese Schwachstelle ausnutzen, indem er Fehler bei der Objektinitialisierung triggert, um einen Denial-of-Service (DoS)-Zustand aufgrund des Speicherverbrauchs (Memory Consumption) zu bewirken.

CVE-2017-7518: Schwachstelle in Linux-Kernel ermöglicht Privilegieneskalation

Im Linux-Kernel, wenn dieser mit der Unterstützung für die Kernel-based Virtual Machine (CONFIG_KVM) erstellt wurde, existiert eine Schwachstelle, die verursacht, dass durch die fehlerhafte Verarbeitung des 'Trap Flag' (TF)-Bits in 'EFLAGS', während der Emulation von 'Syscall'-Instruktionen, eine falsche Debug-Ausnahmebehandlung (#DB Exception Error) im Gast-Stack ausgelöst wird. Ein nicht authentisierter Gast-Benutzer im benachbarten Netzwerk kann dies ausnutzen und seine Privilegien im Gast erhöhen. Linux-Gastbenutzer sind von der Schwachstelle nicht betroffen.

CVE-2017-1000365: Schwachstelle in Linux-Kernel ermöglicht Umgehen von Sicherheitsvorkehrungen

Kommandozeilen-Argumente und Umgebungsvariablen werden vom Linux-Kernel in der Größe auf ein Viertel des RLIMIT_STACK beschränkt. Die Beschränkung gilt jedoch nicht für die entsprechenden Zeiger 'argv[]' und 'envp[]', so dass diese Beschränkung umgangen werden kann, wenn RLIMIT_STACK auf RLIM_INFINITY gesetzt wird. Ein lokaler, nicht authentisierter Angreifer kann dadurch die genannte Sicherheitsvorkehrung umgehen und weitere Angriffe durchführen.

Referenzen

© DFN-CERT Services GmbH, all rights reserved!
Die Weiterverbreitung ist mit Hinweis auf den Copyrightinhaber innerhalb der eigenen Einrichtung erlaubt. Eine darüber hinausgehende Verbreitung bedarf des schriftlichen Einverständnisses des Rechteinhabers.