DFN-CERT-2015-1969 Xen: Mehrere Schwachstellen ermöglichen u.a. das Ausführen beliebigen Programmcodes mit den Rechten des Dienstes [Linux][SuSE]

Liebe Kolleginnen und Kollegen,

bitte beachten Sie die folgende Sicherheitsmeldung.

Betroffene Software:

Xen

Betroffene Plattformen:

SUSE Linux Enterprise Software Development Kit 11 SP3
SUSE Linux Enterprise Software Development Kit 12
SUSE Linux Enterprise Software Development Kit 12 SP1
SUSE Linux Enterprise Desktop 11 SP3
SUSE Linux Enterprise Desktop 12
SUSE Linux Enterprise Desktop 12 SP1
SUSE Linux Enterprise Server 11 SP2 LTSS
SUSE Linux Enterprise Server 11 SP3
SUSE Linux Enterprise Server 12
SUSE Linux Enterprise Server 12 SP1

Mehrere Schwachstellen in Xen ermöglichen zumeist einem einfach
authentifizierten Angreifer im benachbarten Netzwerk das Durchführen von
Denial-of-Service-Angriffen, das Ausführen beliebigen Programmcodes mit den
Rechten des Dienstes und das Manipulieren von Dateien.

Für die SUSE Linux Enterprise Produkte Software Development Kit 11 SP3,12
und 12 SP1, Server 11 SP2 LTSS, 11 SP3, 12 und 12 SP1 sowie Desktop 11 SP3,
12 und 12 SP1 stehen Sicherheitsupdates bereit, die jeweils eine
unterschiedliche Kombination der hier aufgeführten Schwachstellen
adressieren.

Die Sicherheitsupdates für die 12er Produkte mit SP1 umfassen zusätzlich
Schwachstellen, die einem authentifizierten Angreifer im benachbarten
Netzwerk die Eskalation seiner Privilegien erlauben, so dass in einem Fall
auch eine vollständige Systemübernahme möglich ist.

Patch:

SUSE Security Update SUSE-SU-2015:2328-1

https://www.suse.com/support/update/announcement/2015/suse-su-20152328-1.html

Patch:

SUSE Security Update SUSE-SU-2015:2306-1

https://www.suse.com/support/update/announcement/2015/suse-su-20152306-1.html

Patch:

SUSE Security Update SUSE-SU-2015:2324-1

https://www.suse.com/support/update/announcement/2015/suse-su-20152324-1.html

Patch:

SUSE Security Update SUSE-SU-2015:2326-1

https://www.suse.com/support/update/announcement/2015/suse-su-20152326-1.html

CVE-2015-8341: Schwachstelle in Xen ermöglicht Denial-of-Service

In ‘libxl’ in Xen existiert eine Schwachstelle aufgrund einer fehlerhaften
Speicherverwaltung. Wenn ein Gast konstruiert wird, der für die Verwendung
eines PV-Bootloaders konfiguriert ist, welcher als Benutzerraumprozess in
der Toolstack Domain (z.B. pygrub) läuft, erzeugt ‘libxl’ beim Aufbau der
Gast-Domain ein Mapping der zu verwendenden Dateien als Kernel und initiale
Ramdisk. Wenn der Aufbau der Domain daraufhin fehlschlägt, wird dieses
Mapping nicht freigegeben, wodurch es zu einem Leck (‘leak’) von virtuellem
Adressraum in dem aufrufenden Prozess kommt und außerdem die
Wiederherstellung der temporären Plattendateien verhindert wird, welche den
Kernel und die initiale Ramdisk beinhalten.

Dadurch kann ein Angreifer, der in der Lage ist wiederholt eine geeignete
Domain (oder viele solcher Domains) zu starten, für Toolstacks, die mehrere
Domains mit demselben Prozess verwalten, den vollständigen Verbrauch des
Speichers (‘out-of-memory condition’) verursachen. Unter den gleichen
Umständen kann der Angreifer das Ansammeln von Dateien auf dem Dateisystem
des Toolstacks herbeiführen, das verwendet wird, um temporär den Kernel und
die initiale Ramdisk zu speichern. Ein entfernter, einfach authentisierter
Angreifer kann somit einen Denial-of-Service (DoS)-Zustand herbeiführen, der
möglicherweise auch beliebige andere Dienste betreffen kann, die das
Dateisystem verwenden.

Von dieser Schwachstelle betroffen sind sowohl ARM als auch x86 Systeme mit
Xen Versionen 4.1.x und später, die einen PV-Bootloader und einen auf
‘libxl’-basierenden Toolstack verwenden, allerdings nur wenn letzterer für
mehrere Domains in demselben Prozess verwendet wird.

CVE-2015-8340: Schwachstelle in Xen ermöglicht Denial-of-Service

In ‘XENMEM_exchange’ in Xen existiert eine Schwachstelle aufgrund einer
fehleranfälligen Fehlerbehandlung. Bei der Fehlerbehandlung wird
fälschlicherweise ein ‘lock’ freigegeben, welches entweder nicht erworben
oder bereits anderweitig freigegeben wurde. Ein böswilliger
Gastadministrator kann diese Schwachstelle ausnutzen und den Host zum
Absturz bringen oder eine Endlosschleife verursachen. Ein entfernter,
einfach authentisierter Angreifer kann somit einen Denial-of-Service
(DoS)-Angriff durchführen. Von dieser Schwachstelle betroffen sind alle Xen
Versionen, mindestens beginnend mit Version 3.2.

CVE-2015-8339: Schwachstelle in Xen ermöglicht Denial-of-Service

In ‘XENMEM_exchange’ in Xen existiert eine Schwachstelle aufgrund einer
fehleranfälligen Fehlerbehandlung. Die Fehlerbehandlung in der Operation
kann die Rückübergabe von Seiten an die Domain beinhalten. Diese Operation
kann fehlschlagen, wenn parallel dazu die Domain abbricht, wodurch der Host
abstürzt, weil ein interner Fehler angenommen wird. Ein böswilliger
Gastadministrator kann diese Schwachstelle ausnutzen und den Host zum
Absturz bringen oder eine Endlosschleife verursachen. Ein entfernter,
einfach authentisierter Angreifer kann somit einen Denial-of-Service
(DoS)-Angriff durchführen. Von dieser Schwachstelle betroffen sind alle Xen
Versionen, mindestens beginnend mit Version 3.2.

CVE-2015-8345: Schwachstelle in QEMU ermöglicht Denial-of-Service-Angriff

In der QEMU eepro100-Emulation besteht eine Schwachstelle, die auf einem
Fehler in der Command-Block-List (CBL) der Schnittstelle beruht und die zu
einer Endlosschleife führen kann. Ein einfach authentifizierter Angreifer im
benachbarten Netzwerk kann die Schwachstelle für einen
Denial-of-Service-Angriff ausnutzen.

CVE-2015-7504: Schwachstelle in AMD PC-Net II Emulator von QEMU ermöglicht
Ausführung beliebigen Programmcodes mit den Rechten des Dienstes

In der “pcnet_receive()” Funktion der AMD PC-Net II Network Interface
Controller (NIC) Emulation (hw/net/pcnet.c) von QEMU besteht eine
Schwachstelle. Während des Empfangens von Paketen im Loopback-Modus werden
CRC-Prüfsummen an den Empfangspuffer angehängt. Sollten die Daten die genau
gleiche Größe wie der Empfangspuffer (4096 Bytes) haben, dann werden die 4
Bytes der Prüfsumme außerhalb, d.h. hinter den Puffer geschrieben, wodurch
das benachbarte ‘s->irq’ Objekt auf eine neue Position zeigt. Ein
privilegierter Gastnutzer kann durch Ausnutzen der Schwachstelle einen
Heap-Pufferspeicherüberlauf (“heap buffer overflow”) bewirken. Ein einfach
authentifizierter Angreifer im benachbarten Netzwerk kann dadurch beliebigen
Programmcode mit den Rechten des QEMU-Prozesses ausführen oder einen
Denial-of-Service (DoS)-Angriff durchführen.

CVE-2015-8104: Denial-of-Service-Schwachstelle in Xen Hypervisor und
Microsoft Hyper-V

Die KVM Hypervisor Implementierung und Microsoft Hyper-V fangen
Debugging-Fehler nicht korrekt ab. Wenn ein Gastsystem einen Abbruchpunkt
für eine Datenstruktur aufsetzt, woraus ggf. ein Debugging-Fehler
resultieren soll, so wird nach Auftreten des ersten Fehlers das Werfen eines
weiteren Fehlers erforderlich, wodurch es zu einer Endlosschleife in dem
betreffenden Microcode kommt und in der Folge die CPU voll ausgelastet wird.
Ein einfach authentisierter Benutzer eines virtuellen Gastsystems, als
Angreifer, kann die Schwachstelle ausnutzen, um einen
Denial-of-Service-Zustand auf dem Host zu bewirken. x86 CPUs aller
Hersteller auf HVM Gastsystemen sind betroffen.

CVE-2015-5307: Denial-of-Service-Schwachstelle im Linux-Kernel und Microsoft
Hyper-V

Die KVM Hypervisor Implementierung im Linux-Kernel und Microsoft Hyper-V
fangen Alignment Check (‘Anordnungsprüfung’) Fehler nicht korrekt ab. Wenn
ein 32-bit Gastsystem den IDT-Eintrag korrespondierend zu einem solchen
Fehler setzt, um auf einen sogenannten ‘ring-3 handler’ zu referenzieren,
und wenn durch diesen die Fehlerbehandlung angestoßen wird, während der
Stack Pointer noch nicht justiert ist, führt dies zu einem erneuten
Alignment Check, wodurch es zu einer Endlosschleife kommt. Ein einfach
authentisierter Benutzer eines virtuellen Gastsystems, als Angreifer, kann
die Schwachstelle ausnutzen, um einen Denial-of-Service-Zustand auf dem Host
zu bewirken.

CVE-2015-7972: Schwachstelle in Xen ermöglicht Denial-of-Service-Angriff

Das Design von Memory Populate-on-Demand (PoD) Systemen erfordert, dass bei
der Speicherfreigabe durch den Memory Ballooning Driver eines Gastes das
jeweilige Ziel der Speicherreduktion korrekt erreicht wird. Anderenfalls
ergibt sich ein undefinierter Zustand der Speicherbelegung, was umso
leichter erreicht werden kann, wenn der Hypervisor eine größere Last zu
bewältigen hat. Ein lokaler, einfach authentifizierter Gastbenutzer, als
Angreifer, kann diese Schwachstelle ausnutzen, etwa durch das Hinzufügen von
Last an den Hypervisor, um diesen zum Absturz zu bringen und somit einen
Denial-of-Service-Angriff durchführen. Die Schwachstelle beschränkt sich auf
HVM Gastsysteme, die den Populate-on-Demand Modus verwenden. Alle Xen
Versionen bis zurück zu 3.4.x sind von dieser Schwachstelle betroffen.

CVE-2015-7971: Schwachstelle in Xen ermöglicht Denial-of-Service-Angriff

Die Hypercalls HYPERCALL_xenoprof_op und HYPERVISOR_xenpmu_op von Xen
erzeugen Log-Nachrichten für einige Fehler und Versuche ungültiger
Operationen auf der Hypervisor-Konsole. Hierfür existiert keine
Ratenbeschränkung, obwohl diese Log-Nachrichten auch von Gästen angestoßen
werden können. Einem entfernten, einfach authentifizierten Angreifer ist es
durch das Ausnutzen dieser Schwachstelle möglich, einen
Denial-of-Service-Angriff durchzuführen. Betroffen sind Xen 3.2.x und
spätere Versionen. ARM Systeme sind nicht betroffen.

CVE-2015-7970: Schwachstelle in Xen ermöglicht Denial-of-Service-Angriff

Wenn eine HVM Domain im “Populate-on-Demand” Modus betrieben wird, sucht Xen
bei größeren Nutzeraufkommen auf einer anderen Seite derselben Domain
manchmal nach Speicher, der zurückgefordert werden kann. Da diese Suche ohne
Bevorrechtigung läuft, ist es einem HVM Gast Administrator möglich, eine
Situation aufkommen zu lassen, in der die Suche einen zeitaufwändigen
linearen Scan des Gast Adressraums darstellt. Ein einfach authentifizierter,
sich im benachbarten Netzwerk befindlicher Angreifer kann durch Ausnutzen
der Schwachstelle einen partiellen Denial-of-Service (DoS)-Zustand auslösen.
Von dieser Schwachstelle betroffen sind alle Version von Xen 3.4 an
aufwärts, jedoch ausschließlich x86 HVM Gastsysteme.

CVE-2015-7969: Zwei Schwachstellen in Xen ermöglichen
Denial-of-Service-Angriffe

Es bestehen zwei Schwachstellen in Xen bei der Speichervergabe:

1) Das primäre Array von ‘vcpu’-Pointern einer Domain kann genau einmal zur
Lebenszeit derselben durch einen XEN_DOMCTL_max_vcpus Hypercall zugewiesen
werden.

2) Der Xenoprofil-Status einer Domain beinhaltet ein Array von
‘per-vcpu’-Information, das genau einmal zur Lebenszeit der Domain
zugewiesen wird, in Beantwortung eines XENOPROF_get_buffer Hypercalls auf
sich selbst oder durch eine Domain mit dem Recht das Profil einer
Ziel-Domain anzulegen mittels eines XENOPROF_set_passive Hypercalls.

Bei einem Abbau (‘teardown’) der Domain bleiben diese Arrays jeweils
bestehen, d.h. es kommt zu einem Speicherleck, was dazu führt, dass der
Speicher mit der Zeit vollständig verbraucht und so das gesamte System
beeinträchtigt wird.

Ein im benachbarten Netz befindlicher, einfach authentisierter Angreifer,
mit Rechten, die es ihm ermöglichen Domains zu erzeugen oder neu zu starten,
kann einen Denial-of-Service (DoS)-Angriff durchführen.

CVE-2015-7835: Schwachstelle in Xen ermöglicht Übernahme des Systems

In der Validierung von Level 2 Seiten-Tabellen-Einträgen besteht eine
Schwachstelle. PV Gastnutzer können unkontrolliert schreibbare Mappings
mittels des Super Page Mappings erstellen. Solche schreibbaren Mappings
können die von Xen beabsichtigte Invarianz für Seiten aushebeln, für die
eigentlich erwartet wird, das Xen sie als ‘read-only’ hält. Ein entfernter,
einfach authentifizierter PV Gast Administrator ist durch Ausnutzen der
Schwachstelle in der Lage seine Privilegien so zu erhöhen, dass er das
gesamte System übernehmen kann. Von dieser Schwachstelle betroffen sind alle
Version von Xen 3.4 aufwärts auf x86 Systemen. ARM Systeme sind dagegen
nicht verwundbar.

CVE-2015-5239: Denial-of-Service-Schwachstelle in QEMU-KVM

In QEMU-KVM existiert im VNC Display Treiber in den Methoden
vnc_client_read() und protocol_client_msg() ein Integer-Überlauf. Ein
entfernter, einfach authentifizierter Gastbenutzer, als Angreifer, kann
durch Ausnutzen der Schwachstelle den QEMU-Prozess zum Hängen bringen und
damit einen partiellen Denial-of-Service (DoS)-Zustand verursachen.

CVE-2015-7311: Schwachstelle in Xen ermöglicht Manipulation von Dateien

Über libxl in Xen ist es möglich eine Festplatte als ‘Read-only’ für
Gast-Benutzer zu markieren. Es existiert allerdings kein Code in libxl, der
diese Informationen an QEMU-Xen weiterreicht und ebenfalls kein Code in
QEMU, um diese Konfigurationsoption sicherzustellen. Ein einfach
authentifizierter Gast-Administrator im benachbarten Netzwerk, als
Angreifer, kann durch das Ausnutzen dieser Schwachstelle Dateien
manipulieren.

CVE-2015-6815: Schwachstelle in QEMU ermöglicht Denial-of-Service-Angriff

Im e1000 NIC (“virtual network interface card”) Treiber von QEMU besteht
eine Schwachstelle in der Weise wie Transmit Message Descriptors (TMD)
verarbeitet werden, wenn Netzwerk-Pakete gesendet werden. Ein privilegierter
Gastbenutzer kann durch Ausnutzen der Schwachstelle eine Endlosschleife
(“infinite loop”) bewirken und dadurch den QEMU-Prozess zum Absturz bringen.
Ein einfach authentifizierter Angreifer im benachbarten Netzwerk kann somit
einen Denial-of-Service (DoS)-Angriff durchführen.

CVE-2015-5154: Schwachstelle in QEMU erlaubt das Ausführen beliebigen
Programmcodes mit den Rechten des Dienstes

Eine Schwachstelle in der IDE-Komponente von QEMU basiert auf einem
Speicherüberlauf des Heap bei der Behandlung von Zugriffen auf den
I/O-Puffer, der durch bestimmte ATAPI-Kommandos hervorgerufen werden kann.
Ein privilegierter Benutzer eines HVM-Gast-Systems, das ein emuliertes
CDROM-Laufwerk bereitstellt, kann den Fehler bei der Verarbeitung der
ATAPI-Kommandos ausnutzen, um beliebigen Programmcode mit den Rechten des
QEMU-Prozesses auf dem Host auszuführen und seine Privilegien auf die des
QEMU-Prozesses auszuweiten. Von der Schwachstelle sind nur x86-Systeme
betroffen. Ein einfach authentisierter Angreifer im benachbarten Netzwerk
kann beliebigen Programmcode mit den Rechten des QEMU-Prozesses auf dem Host
ausführen.

CVE-2015-3259: Stack-Speicherüberlauf-Schwachstelle in Xen XL ermöglicht
Privilegieneskalation

Eine Schwachstelle in der XL-Kommandozeile ermöglicht es Angreifern, mittels
langer Konfigurationsparameter, einen Stack-basierten Pufferüberlauf zu
verursachen. Dadurch kann ein bedingt vertrauenswürdiger Gast-Administrator,
der in der Lage ist einen Teil der Domäne zu verwalten, seine Privilegien
auf den gesamten Host erweitern. Diese Schwachstelle betrifft Systeme, deren
Kommandozeile ohne Längenprüfung der Eingabe arbeiten. Systeme, welche ohne
XL zu nutzen direkt die “libxl”-Bibliothek verwenden, sind nicht betroffen.
Ebenso sind Systeme nicht betroffen, die andere Toolstacks als XL verwenden.
Die Schwachstelle betrifft x86- und ARM-Systeme.

CVE-2015-4106: Schwachstelle in Xen ermöglicht Privilegieneskalation

QEMU behandelt PCI-Geräte, die nicht direkt in die Emulation eingebunden
sind, fehlerhaft und erlaubt Gastsystemen Schreibzugriff auf den nicht
erweiterten Konfigurationsbereich. Ein lokaler, nicht authentisierter
Angreifer kann die Schwachstelle zu einer Privilegieneskalation oder zu
einem Denial-of-Service-Angriff gegen das Host-System ausnutzen.

Referenzen:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

SUSE Security Update SUSE-SU-2015:2328-1:
https://www.suse.com/support/update/announcement/2015/suse-su-20152328-1.html

SUSE Security Update SUSE-SU-2015:2306-1:
https://www.suse.com/support/update/announcement/2015/suse-su-20152306-1.html

SUSE Security Update SUSE-SU-2015:2324-1:
https://www.suse.com/support/update/announcement/2015/suse-su-20152324-1.html

SUSE Security Update SUSE-SU-2015:2326-1:
https://www.suse.com/support/update/announcement/2015/suse-su-20152326-1.html

(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