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

Liebe Kolleginnen und Kollegen,

bitte beachten Sie die folgende Sicherheitsmeldung.

Betroffene Software:

Linux-Kernel

Betroffene Plattformen:

Debian Linux 8.9 Jessie
Debian Linux 9.1 Stretch

Mehrere Schwachstellen im Linux-Kernel ermöglichen einem lokalen,
authentisierten Angreifer die Durchführung von Denial-of-Service-Angriffen,
das Ausspähen von Informationen, die Manipulation von Dateien, die
Eskalation von Privilegien und das Ausführen beliebigen Programmcodes, was
zu einer vollständigen Übernahme des Systems durch den Angreifer führen
kann. Ein lokaler, nicht authentisierter Angreifer kann weitere
Schwachstellen ausnutzen, um Sicherheitsvorkehrungen zu umgehen,
Informationen auszuspähen, Denial-of-Service-Zustände zu verursachen und
Privilegien zu erweitern. Einige Schwachstellen erlauben auch einem
authentisierten Angreifer im benachbarten Netzwerk die Eskalation von
Privilegien und Denial-of-Service-Angriffe. Eine Schwachstelle ermöglicht
einem Angreifer, der sich in einer Reichweite befindet, um eine
Bluetooth-Übertragung aufbauen zu können, einen Denial-of-Service
(DoS)-Angriff durchzuführen oder beliebigen Programmcode mit
Root-Privilegien zur Ausführung zu bringen und damit das betroffene System
ggf. vollständig zu übernehmen.

Debian stellt für die stabile Distribution Stretch sowie die vormals stabile
Distribution Jessie Sicherheitsupdates zur Behebung der Schwachstellen
bereit.

Patch:

Debian Security Advisory DSA-3981-1

https://www.debian.org/security/2017/dsa-3981

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

In der Funktion ‘iscsi_if_rx’ in ‘drivers/scsi/scsi_transport_iscsi.c’ im
Linux-Kernel besteht aufgrund einer fehlerhaften Längenprüfung eine
Schwachstelle, die ein lokaler, nicht authentisierter Angreifer ausnutzen
kann, um eine Kernelpanik auszulösen (Denial-of-Service).

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

Das Makro ‘XFS_IS_REALTIME_INODE’ in ‘ fs/xfs/xfs_linux.h’ im
XFS-Dateisystem im Linux-Kernel geht mit einem durch Benutzer erstellten
Inode-Statusindikator (Flag) fehlerhaft um, wodurch nicht geprüft wird, ob
ein Echtzeitgerät im Dateisystem eingebunden ist. Ein lokaler, einfach
authentisierter Angreifer kann dies ausnutzen und die Dereferenzierung eines
NULL-Zeigers provozieren, in dessen Folge eine Kernelpanik ausgelöst wird
(Denial-of-Service).

CVE-2017-14156: Schwachstelle in Linux-Kernel ermöglicht Ausspähen von
Informationen

Die Funktion ‘atyfb_ioctl’ in ‘drivers/video/fbdev/aty/atyfb_base.c’ im
Linux-Kernel initialisiert eine bestimmte Datenstruktur nicht. Ein lokaler,
nicht authentisierter Angreifer kann dies durch das Lesen bestimmter mit
Auffüll-Bytes (Padding Bytes) assoziierter Speicherbereiche ausnutzen und
sensitive Informationen aus dem Stack-basierten Kernelspeicher ausspähen.

CVE-2017-14140: Schwachstelle in Linux-Kernel ermöglicht Ausspähen von
Informationen

Der Systemaufruf ‘move_pages’ in ‘mm/migrate.c’ im Linux-Kernel vor Version
4.12.9 prüft nicht die wirksame UID des Ziel-Prozesses, wodurch ein
Angreifer trotz Adress Space Layout Randomization (ASLR) das Speicherlayout
einer Setuid für ausführbare Programme ausspähen kann. Ein lokaler, nicht
authentisierter Angreifer kann Informationen ausspähen.

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

In ‘net/xfrm/xfrm_policy.c’ im Linux-Kernel besteht eine Schwachstelle, wenn
dieser mit ‘CONFIG_XFRM_MIGRATE’ konfiguriert wurde, weil die Funktion
‘xfrm_migrate’ nicht prüft, ob der Parameter ‘dir’ kleiner ‘XFRM_POLICY_MAX’
ist. Ein lokaler, nicht authentisierter Angreifer kann die Schwachstelle
durch die Versendung eine präparierten ‘XFRM_MSG_MIGRATE’-Netlink-Nachricht
ausnutzen und auf Speicherbereiche außerhalb der zulässigen Speichergrenzen
zugreifen (Out-of-Bounds Access), wodurch ein Denial-of-Service
(DoS)-Zustand herbeigeführt oder weiterer Einfluss auf ein System ausgeübt
werden kann.

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 virtuelle 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-14497: Schwachstelle in Linux-Kernel ermöglicht u.a. Manipulation
von Dateien

Die Funktion ‘tpacket_rcv()’ in ‘net/packet/af_packet.c’ im Linux-Kernel vor
Version 4.13 behandelt ‘vnet’-Kopfdaten nicht korrekt, wodurch es zu einem
Pufferüberlauf und Dateisystem- und Speicherkorruptionen oder möglicherweise
weiteren unbekannten Schäden am System kommen kann. Ein lokaler, einfach
authentisierter Angreifer mit administrativen Rechten kann Dateien
manipulieren und einen Denial-of-Service (DoS)-Angriff durchführen.

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

Eine nicht näher beschriebene Schwachstelle in der Dateisystem-Komponente im
Linux-Kernel, der u.a. von Google Android verwendet wird, ermöglicht es
einem entfernten, nicht authentisierten Angreifer mit Hilfe einer bösartig
präparierten Applikation Privilegien zu eskalieren und darüber die
Ausführung beliebigen Programmcodes im Kontext eines privilegierten
Prozesses. Diese Schwachstelle wird mit ‘high’ bewertet. Wird der
Linux-Kernel nicht im Kontext von Google Android genutzt, so kann die
Schwachstelle von einem lokalen Angreifer ausgenutzt werden, um einen
Denial-of-Service-Zustand zu bewirken oder beliebigen Programmcode zur
Ausführung zu bringen.

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-12153: Schwachstelle in Linux-Kernel ermöglicht
Denial-of-Service-Angriff

In der Funktion ‘nl80211_set_rekey_data()’ der 802.11 NetLink-Schnittstelle
des Linux-Kernels existiert eine Schwachstelle, da die Funktion nicht
überprüft, ob alle notwendigen Attribute in einer NetLink-Anfrage enthalten
sind. Diese Anfrage kann nur von einem Benutzer mit den Rechten
‘CAP_NET_ADMIN’ gestellt werden und hat eine NULL-Zeiger-Dereferenzierung
und den Systemabsturz zur Folge. Ein lokaler, einfach authentisierter
Angreifer 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-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-12146: Schwachstelle in Linux-Kernel ermöglicht
Privilegieneskalation

Die ‘driver_override’ Implementierung in ‘drivers/base/platform.c’ im
Linux-Kernel vor Version 4.12.1 ermöglicht einem lokalen, nicht
authentisierten Angreifer mittels des Ausnutzens einer Wettlaufsituation
(Race Condition) die Eskalation seiner Privilegien. Die Schwachstelle lässt
sich im Kontext von Google Android wahrscheinlich auch mit Hilfe einer
speziell präparierten Anwendung aus der Ferne ausnutzen.

CVE-2017-7558: Schwachstelle in Linux-Kernel ermöglicht Ausspähen von
Informationen

In den Funktionen ‘inet_diag_msg_sctp{,l}addr_fill’ und ‘sctp_get_sctp_info’
im SCTP-Stack des Linux-Kernels existiert ein Datenleck aufgrund der
Möglichkeit, über Speichergrenzen hinaus zu lesen (Out-of-Bounds Read). Das
Leck tritt auf, wenn diese Funktionen ‘sockaddr’-Datenstrukturen ausfüllen,
welche für den Export von Socket-Diagnostikinformationen verwendet werden.
Infolgedessen können bis zu 100 Bytes der ‘slab’-Daten in den Benutzerraum
(Userspace) übertragen werden.

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-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-1000380: Schwachstelle in Linux-Kernel ermöglicht Ausspähen von
Informationen

In ‘sound/core/timer.c’ im Linux-Kernel vor Version 4.11.5 existiert eine
Schwachstelle aufgrund eines Datenwettlaufs im ‘ALSA
/dev/snd/timer’-Treiber. So können Inhalte nicht initialisierten Speichers
offengelegt werden, wenn ein Lesen und ein ‘ioctl’ zur selben Zeit
stattfinden. Ein lokaler, einfach authentisierter Angreifer kann
Informationen ausspähen, die anderen Benutzern gehören.

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

Durch die Funktionalität zur Behebung der Schwachstelle ‘Offset2lib’ (außer
Kraft setzen der Address-Space Layout Randomization (ASLR) auf
Linux-Systemen, ohne CVE-Bezeichner) kann die ‘Stack Guard Page’
übersprungen werden, indem RLIMIT_STACK auf RLIM_INFINITY gesetzt wird und
fast 1 GB an Speicher alloziert werden. In diesem Fall ist die Distanz
zwischen dem Ende des Read-Write-Segments der dafür verwendeten PIE-Binary
und dem Anfang des Stacks kleiner als die ‘Stack Guard Page’ und ein
lokaler, nicht authentisierter Angreifer kann diese Sicherheitsvorkehrung
umgehen.

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

Die Funktionalität zur Behebung der Schwachstelle ‘Offset2lib’ (außer Kraft
setzen der Address-Space Layout Randomization (ASLR) auf Linux-Systemen,
ohne CVE-Bezeichner) kann ihrerseits umgangen werden, indem eine PIE-Binary
(Position Independent Executable) mit Argumenten oder Umgebungsvariablen der
Größe 1 GB über ‘execve’ ausgeführt wird. Ein lokaler, nicht authentisierter
Angreifer kann dadurch Sicherheitsvorkehrungen umgehen, wodurch weitere
Angriffe möglich sind.

Referenzen:

Dieses Advisory finden Sie auch im DFN-CERT Portal unter:
https://portal.cert.dfn.de/adv/DFN-CERT-2017-1678/

Schwachstelle CVE-2017-1000380 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-1000380

Schwachstelle CVE-2017-1000370 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-1000370

Schwachstelle CVE-2017-1000371 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-1000371

Schwachstelle CVE-2017-7518 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-7518

Schwachstelle CVE-2017-11600 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-11600

Schwachstelle CVE-2017-10661 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-10661

Schwachstelle CVE-2017-1000111 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-1000111

Schwachstelle CVE-2017-1000112 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-1000112

Schwachstelle CVE-2017-12134 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-12134

Schwachstelle CVE-2017-7558 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-7558

Schwachstelle CVE-2017-14106 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-14106

Schwachstelle CVE-2017-14140 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-14140

Schwachstelle CVE-2017-12146 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-12146

Schwachstelle CVE-2017-14156 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-14156

Schwachstelle CVE-2017-1000251 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-1000251

Schwachstelle CVE-2017-12153 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-12153

Schwachstelle CVE-2017-12154 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-12154

Schwachstelle CVE-2017-14340 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-14340

Schwachstelle CVE-2017-14489 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-14489

Schwachstelle CVE-2017-1000252 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-1000252

Schwachstelle CVE-2017-14497 (NVD):
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-14497

Debian Security Advisory DSA-3981-1:
https://www.debian.org/security/2017/dsa-3981

(c) 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.

Nach oben