Open Source im professionellen Einsatz

DFN-CERT-2017-1801 Juniper Junos Space: Mehrere Schwachstellen ermöglichen u.a. das Erlangen von Administratorrechten [Netzwerk]

12.10.2017

Liebe Kolleginnen und Kollegen,

bitte beachten Sie die folgende Sicherheitsmeldung.

Betroffene Software:

Juniper Junos Space < 17.1R1


Betroffene Plattformen:

Juniper Junos Space



Es existieren mehrere Schwachstellen in Junos Space sowie den enthaltenen
Komponenten Exim, GNU Lib C, NTP, Samba, sudo und dem Linux-Kernel. Diese
ermöglichen auch einem entfernten, nicht authentisierten Angreifer das
Erlangen von Administratorrechten, d.h. die komplette Kompromittierung des
Systems, die Ausführung beliebigen Programmcodes, die Durchführung
verschiedener Denial-of-Service (DoS)-Angriffe, das Umgehen von
Sicherheitsvorkehrungen sowie das Ausspähen und Fälschen von Informationen.

Juniper stellt zur Behebung der meisten dieser Schwachstellen Junos Space in
der Version 17.1R1 bereit. Um auch gegen die Schwachstelle CVE-2017-10622
geschützt zu sein, muss zusätzlich Patch-v1 installiert werden. Diese
Schwachstelle betrifft auch alle 16.1 Releases von 16.1R3.


Patch:

Juniper Security Bulletin JSA10824: Junos Space: Authentication bypass
vulnerability (CVE-2017-10622)

<https://kb.juniper.net/InfoCenter/index?page=content&id=JSA10824&cat=SIRT_1&actp=LIST&showDraft=false>

Patch:

Juniper Security Bulletin JSA10826: Junos Space: Multiple vulnerabilities
resolved in 17.1R1 release

<https://kb.juniper.net/InfoCenter/index?page=content&id=JSA10826&cat=SIRT_1&actp=LIST&showDraft=false>


CVE-2017-10624: Schwachstelle in Junos Space ermöglicht Kompromittierung des
Systems

In Juniper Networks Junos Space vor Version 17.1R1 existiert eine
Schwachstelle aufgrund fehlender Authentisierung und Autorisierung von
Cluster-Nachrichten. Ein entfernter, nicht authentisierter Angreifer in
einer Man-in-the-Middle-Netzwerkposition kann diese Schwachstelle ausnutzen,
um in Junos Space in Cluster Operationen zwischen zwei Nodes einzugreifen,
Operationen einzuschleusen oder diese zu unterbrechen, wodurch das System
vollständig kompromittiert wird.


CVE-2017-10623: Schwachstelle in Junos Space ermöglicht Kompromittierung des
Systems

In Juniper Networks Junos Space vor Version 17.1R1 existiert eine
Schwachstelle aufgrund unzureichender Überprüfung von Node-Zertifikaten. Ein
entfernter, nicht authentisierter Angreifer in einer
Man-in-the-Middle-Netzwerkposition kann diese Schwachstelle ausnutzen, um
unautorisiert Änderungen an der Space-Datenbank vorzunehmen oder Nodes
hinzuzufügen, wodurch das System vollständig kompromittiert wird.


CVE-2017-10622: Schwachstelle in Junos Space ermöglicht Erlangen von
Administratorrechten

In Juniper Networks Junos Space Version 17.1R1 ohne Patch-v1 und 16.1
Releases vor Version 16.1R3 existiert eine Schwachstelle, durch welche die
Authentisierung gegenüber der Juniper Networks Junos Space Network
Management Platform umgangen werden kann. Ein entfernter, nicht
authentisierter Angreifer kann diese Schwachstelle ausnutzen und sich als
beliebiger privilegierter Benutzer anmelden.


CVE-2017-10612: Schwachstelle in Junos Space ermöglicht beliebige
Privilegieneskalation

In Juniper Networks Junos Space vor Version 17.1R1 existiert eine
persistente Site-Scripting-Schwachstelle. Ein niedrig privilegierter
Benutzer, als entfernter, einfach authentisierter Angreifer, kann die
Schwachstelle ausnutzen und bestimmte Konfigurationen derart verändern, dass
er schädliches Javascript oder HTML einschleusen kann, um dadurch
Informationen auszuspähen oder Aktionen als irgendein anderer Junos Space
Benutzer oder Administrator durchzuführen und somit seine Privilegien
beliebig zu erweitern.


CVE-2017-1000379: Schwachstelle in Linux-Kernel ermöglicht Ausführung
beliebigen Programmcodes

Die Inhalte einer PIE-Binary, des Heaps oder von 'ld.so' werden vom
Linux-Kernel gelegentlich in den Stack eingeblendet, wodurch ein lokaler,
nicht authentisierter Angreifer den Stack leichter manipulieren und
beliebigen Programmcode ausführen kann.


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-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.


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

Im Linux-Kernel bis einschließlich Version 4.11.5 existiert eine
Schwachstelle, durch die eine Speicherkorruption provoziert werden kann. Die
Speicherlücke, welche den Stack- vom Heap-Speicher trennt (Stack Guard Page
- ein Sicherheitsmechanismus, der 2010 eingeführt wurde), ist mit 4kB nicht
ausreichend dimensioniert und kann unter Umständen übersprungen werden,
wodurch eine Privilegieneskalation möglich ist. Die Schwachstelle hat für
den Linux-Kernel den Schwachstellenbezeichner CVE-2017-1000364 erhalten. Im
Kontext von glibc wird die Schwachstelle unter CVE-2017-1000366 geführt. Ein
lokaler, nicht authentisierter Angreifer kann eine Schwachstelle im
Linux-Kernel ausnutzen, um die Lücke zwischen benachbarten Speicherregionen
zu überbrücken und in der Folge Prozessspeicher oder benachbarten Speicher
kontrolliert zu kompromittieren. Dadurch kann der Angreifer seine
Privilegien eskalieren und die Kontrolle über ein betroffenes System
übernehmen.


CVE-2017-1000369: Schwachstelle in Exim ermöglicht Ausführung beliebigen
Programmcodes

Exim ermöglicht die wiederholte Verwendung von '-p' als
Befehlszeilenargument, wodurch Speicher wiederholt alloziert, aber nicht
wieder freigegeben wird (Memory Leak). Ein Angreifer, der dies in Verbindung
mit einer anderen Schwachstelle ausnutzt, kann beliebigen Programmcode zur
Ausführung bringen und möglicherweise auch Administratorrechte erlangen. Ein
lokaler, nicht authentisierter Angreifer kann beliebigen Programmcode zur
Ausführung bringen.


CVE-2017-1000366: Schwachstelle in GNU Lib C ermöglicht Erlangen von
Administratorrechten

Eine Schwachstelle bei der Allokation von Stack-basiertem Speicher für
User-Space-Binärdateien in GNU Lib C ermöglicht einem Angreifer, wenn die
Heap- und Stack-Speichergrenzen dicht beieinander liegen, die Lücke zwischen
Heap und Stack zu überspringen. In der Folge ist es dem Angreifer möglich,
eine kontrollierte Speicherkorruption auf dem Prozess-Stack beziehungsweise
Prozess-Heap durchzuführen, wodurch er möglicherweise beliebigen
Programmcode ausführen, seine Privilegien eskalieren und sogar
Administratorrechte erlangen kann. Die Schwachstelle wird durch eine
Eigenschaft von GNU Lib C abgemildert, wodurch die Verarbeitung von
'LD_LIBRARY_PATH' für Programme, die im 'Secure-Execution'-Modus ausgeführt
werden, blockiert wird und die Anzahl an Speicherallokationen von
'LD_AUDIT', 'LD_PRELOAD' und 'LD_HWCAP_MASK' reduziert wird. Die
Schwachstelle hat für den Linux-Kernel den Schwachstellenbezeichner
CVE-2017-1000364 erhalten. Im Kontext von glibc wird die Schwachstelle unter
CVE-2017-1000366 geführt.


CVE-2017-1000367: Schwachstelle in sudo ermöglicht Erlangen von
Administratorrechten

In Dateinamen für Kommandos in der Datei '/proc/[pid]/stat' (Feld 2) sind
Leerzeichen zugelassen, die einzelnen Datenfelder der Datei sind durch
Leerzeichen getrennt. Die Leerzeichen im Dateinamen werden von sudo bei der
Zuordnung der Felder fehlerhafterweise berücksichtigt. Ein Benutzer mit
sudo-Privilegien (festgelegt in /etc/sudoers) ist in der Lage, eine
symbolische Verknüpfung auf 'sudo' zu erstellen. Verwendet er eine bestimmte
Anzahl Leerzeichen und eine folgende Zahl für diese Verknüpfung, wird
aufgrund der fehlerhaften Berücksichtigung der Leerzeichen im Dateinamen
diese Zahl als Gerätenummer des TTY-Prozesses in '/dev' adressiert (Feld 7
in '/proc/[pid]/stat'). Falls diese Gerätenummer noch nicht vergeben ist,
legt sudo dort ein neues Gerät an. Diese Datei wird als Standard-Input,
-Output und -Error für das Terminal verwendet. Erstellt der Angreifer
daraufhin eine symbolische Verknüpfung auf dieses neu erstellte Gerät in
einem 'world-writeable'-Verzeichnis unterhalb von '/dev' und ersetzt den
Verweis erneut bevor sudo diesen öffnet, können über Standard-Output und
Standard-Error beliebige Dateien überschrieben werden. Dazu gehören auch
systemkritische Dateien wie '/etc/shadow' oder '/etc/sudoers'.


CVE-2017-7494: Schwachstelle in Samba ermöglicht Ausführung beliebigen
Programmcodes mit Root-Rechten

In Samba beginnend mit Version 3.5.0 bis einschließlich 4.4.13, 4.5.9 und
4.6.3 existiert eine Schwachstelle, durch die ein schädlicher Client eine
geteilte Bibliothek aus einem beliebigen Pfad des Systems in einen
beschreibbaren geteilten Bereich (Share) hochladen und in der Folge den
Server veranlassen kann, diese zu laden und auszuführen. Ein entfernter,
authentisierter Angreifer kann diese Schwachstelle ausnutzen, um beliebigen
Programmcode mit Root-Rechten zur Ausführung zu bringen.


CVE-2016-2519: Schwachstelle in NTP ermöglicht Denial-of-Service-Angriff

Mit den Programmen ntpq und ntpdc können Werte in ntpd gespeichert werden,
die größer sind als der Pufferspeicher, den die Funktion ctl_getitem() für
den Rückgabewert benutzt. Wenn die Länge des angefragten Wertes bei der
Rückgabe durch ctl_getitem() zu groß ist, wird stattdessen der Wert NULL
zurückgegeben. An zwei Stellen im Programmcode wird der Rückgabewert nicht
auf den Wert NULL überprüft, allerdings wird dieser Umstand durch
INSIST()-Anweisungen im weiteren Programmverlauf sichergestellt, woraufhin
ntpd bei dem Versuch, zu große Werte anzufragen, beendet wird
(Denial-of-Service). Ein entfernter, einfach authentisierter Angreifer kann
einen Denial-of-Service-Angriff durchführen.


CVE-2016-2518: Schwachstelle in NTP ermöglicht Denial-of-Service-Angriff

Ein entfernter, einfach authentifizierter Angreifer kann durch das Versenden
eines speziell präparierten Pakets zur Erstellung einer Peer-Association mit
hmode > 7 einen Zugriff auf Speicher außerhalb des zugewiesenen
Speicherbereichs in 'MATCH_ASSOC()' forcieren und dadurch einen
Denial-of-Service-Zustand auslösen.


CVE-2016-2517: Schwachstelle in NTP ermöglicht Denial-of-Service-Angriff

Falls ntpd so konfiguriert ist, dass der Dienst aus der Entfernung verwaltet
werden kann (Remote Configuration), kann ein bösartiger Benutzer, der den
'controlkey' für ntpd oder den 'requestkey' für ntpdc kennt eine eigene
Session mit ntpd erstellen und den Wert von 'trustedkey', 'controlkey' oder
'requestkey' auf einen Wert setzen, der jede weitere Authentifizierung mit
ntpd verhindert, bis ntpd neu gestartet wird. Ein entfernter, einfach
authentifizierter Angreifer kann einen Denial-of-Service-Angriff ausführen.


CVE-2016-2516: Schwachstelle in NTP ermöglicht Denial-of-Service-Angriff

Falls ntpd so konfiguriert ist, dass der Dienst aus der Entfernung verwaltet
werden kann (Remote Configuration), kann ein bösartiger Benutzer, der den
'controlkey' für ntpd oder den 'requestkey' für ntpdc kennt eine eigene
Session mit ntpd erstellen. Falls zusätzlich eine bestehende Verbindung
(Association) nicht konfiguriert ist, kann durch zweimalige Verwendung
derselben IP-Adresse in der 'unconfig'-Anweisung nptd zum Absturz gebracht
werden. Ein entfernter, einfach authentifizierter Angreifer kann einen
Denial-of-Service-Angriff ausführen.


CVE-2016-1551: Schwachstelle in NTP ermöglicht Fälschen von
Zeitinformationen

Der NTP-Dienst ntpd vertraut NTP-Datenverkehr von Referenzuhren aus dem
Netzwerkbereich 127.127.0.0/16 implizit. Da der Netzwerkbereich 127.0.0.0/8
privat ist, sollte dieser Datenverkehr von Betriebssystemen oder Routern
gefiltert werden. Ein entfernter, nicht authentifizierter Angreifer, der in
der Lage ist, NTP-Pakete mit einer Absenderadresse aus dem Vertrauensbereich
zu versenden, kann sich entsprechend konfigurierten Systemen gegenüber als
Referenzuhr ausgeben und die Uhrzeit auf dem betroffenen System ändern.


CVE-2016-1550: Schwachstelle in NTP ermöglicht Fälschen von
Zeitinformationen

NTP-Pakete beinhalten eine Schlüssel-ID (32 Bit), die verwendet wird, um
einen geheimen Schlüssel (128 Bit) zu bezeichnen, der von koordinierenden
Systemen geteilt wird. Pakete werden abgelehnt, wenn der Digest im Paket
nicht zu dem vom Klienten berechneten geheimen Schlüssel passt. In dem Fall
sendet der Empfänger ein bestimmtes Paket zurück, um den Absender über das
fehlerhafte Paket zu informieren. Dieser Sendevorgang ist anfällig für
Timing-Angriffe. Ein entfernter, nicht authentifizierter Angreifer kann den
geteilten Schlüssel erraten (Brute Force) und in der Folge gefälschte
NTP-Pakete verschicken.


CVE-2016-1549: Schwachstelle in NTP ermöglicht die Manipulation von Uhren

Wenn ein System so konfiguriert ist, dass ein vertrauenswürdiger Schlüssel
('trustedkey') benutzt und gleichzeitig die Funktion des optionalen vierten
Feldes in der 'ntp.keys'-Datei für die Angabe erlaubter Zeit-Server nicht
benutzt wird, kann ein anderes bösartiges System, das im Besitz des privaten
Schlüssels ist, beliebig viele Verbindungen erzeugen, um die Uhrenauswahl
durch ntpd zu gewinnen und die Uhr des Systems modifizieren. Ein entfernter,
einfach authentifizierter Angreifer kann die Schwachstelle ausnutzen, um
Systemuhren zu manipulieren.


CVE-2016-1548: Schwachstelle in NTP ermöglicht Fälschen von
Zeitinformationen

Die Spezifikationen von NTP erlauben einen verschachtelten (interleaved)
Betriebsmodus, in dem jedes Paket einen Zeitstempel enthält, der angibt,
wann das vorherige Paket versendet wurde. Ein entfernter, nicht
authentifizierter Angreifer kann ein spezielles Paket versenden, das diesen
Modus aktiviert, auch wenn der Klient nicht dafür konfiguriert ist. Nach der
Aktivierung verwirft der Klient weitere Pakete vorher assoziierter Server,
so dass der Angreifer durch das Versenden weiterer Pakete die Uhrzeit auf
dem Klientsystem ändern kann.


CVE-2016-1547: Schwachstelle in NTP ermöglicht Denial-of-Service-Angriff

Unter bestimmten Umständen kann die Verbindung (Association) von
Peer-NTPD-Systemen unterbrochen werden, indem gefälschte Pakete versendet
werden, die den Empfänger über einen fehlerhaften Authentifizierungsversuch
einer vorherigen Anfrage unterrichten. In dem Fall wird die Verbindung
unterbrochen und ein entfernter, nicht authentifizierter Angreifer kann mit
Hilfe gefälschter Pakete den Angriff wiederholen und einen dauerhaften
Denial-of-Service-Zustand des betroffenen NTPD-Systems erzeugen.


Referenzen:

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

Schwachstelle CVE-2016-1547 (NVD):
<http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-1547>

Schwachstelle CVE-2016-1548 (NVD):
<http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-1548>

Schwachstelle CVE-2016-1549 (NVD):
<http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-1549>

Schwachstelle CVE-2016-1550 (NVD):
<http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-1550>

Schwachstelle CVE-2016-1551 (NVD):
<http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-1551>

Schwachstelle CVE-2016-2516 (NVD):
<http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-2516>

Schwachstelle CVE-2016-2517 (NVD):
<http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-2517>

Schwachstelle CVE-2016-2518 (NVD):
<http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-2518>

Schwachstelle CVE-2016-2519 (NVD):
<http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-2519>

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

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

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

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

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

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

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

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

Juniper Security Bulletin JSA10824: Junos Space: Authentication bypass
vulnerability (CVE-2017-10622):
<https://kb.juniper.net/InfoCenter/index?page=content&id=JSA10824&cat=SIRT_1&actp=LIST&showDraft=false>

Juniper Security Bulletin JSA10826: Junos Space: Multiple vulnerabilities
resolved in 17.1R1 release:
<https://kb.juniper.net/InfoCenter/index?page=content&id=JSA10826&cat=SIRT_1&actp=LIST&showDraft=false>

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

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

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

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


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

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.