CVE-2017-1000367 ist eine schwere Wurzel Linux Schwachstelle entdeckt, von Qualys Sicherheit Forscher. Der Fehler liegt in Sudo “get_process_ttyname()” Funktion für Linux und könnte ein Benutzer mit sudo-Berechtigungen ermöglichen, Befehle als root oder erhöhen Privilegien root ausführen.
sudo, oder “Super-User tun!,” ist ein Programm für Linux und UNIX, die Benutzer ausführen Standardbenutzer spezifische Befehle als Superuser oder root lässt.
CVE-2017-1000367: Einzelheiten
Die Funktion öffnet diese Funktion öffnet “/proc /[pid]/stat” (Mann proc) und liest die Gerätenummer des TTY aus Feld 7 (tty_nr), die Forscher erklären. Das Schlimme ist, dass diese Felder durch Leerzeichen getrennte und Feld 2 (comm, der Dateiname des Befehls) Leerzeichen enthalten kann, die in der Tat ist die Frage.
Genauer:
Beispielsweise, wenn wir ausführen Sudo durch die Symlink “./ 1 “, get_process_ttyname() ruft sudo_ttyname_dev() für die nicht vorhandene tty Gerätenummer zu suchen “1” in dem eingebauten in search_devs[]. Nächster, sudo_ttyname_dev() ruft die Funktion sudo_ttyname_scan() für diese nicht vorhanden tty Gerätenummer zu suchen “1” in einer Breiten erste Traversierung “/dev”.
Die Sicherheitslücke beruht auf der Art und Weise Sudo „tty“ Informationen aus dem Prozess Statusdatei im proc-Dateisystem analysiert. Auf Linux-Rechnern, sudo analysiert das / proc /[pid]/Stat-Datei der Gerätenummer des Verfahrens der tty von Feld zu skizzieren 7 (tty_nr), wie in der erläuterten Sicherheitshinweis.
Ausnutzen CVE-2017-1000367
Für die Fehler ausgenutzt werden, der Benutzer muss bereits sudo-Berechtigungen haben.
SELinux muss auch auf dem System aktiviert werden und sudo mit SELinux-Unterstützung gebaut worden sein, Forscher hinzufügen.
Auszubeuten den Bug, der Benutzer kann eine Gerätenummer wählen, die derzeit nicht unter / dev vorhanden. Wenn sudo nicht das Terminal unter / dev finden / pts Verzeichnis, es führt eine Breitensuche von / dev. Es ist möglich, ein Pseudo-Terminal nach Sudo hat überprüft, / dev / pts zuzuteilen, aber bevor Sudo führt seine Breitensuche von / dev. Der Angreifer kann dann erstellen Sie eine symbolische Verknüpfung mit dem neu geschaffenen Gerät in einer Welt beschreibbaren Verzeichnis unter / dev, wie beispielsweise / dev / shm.
Diese Datei wird als Standard-Eingabe des Befehls verwendet werden, Ausgang und Fehler, wenn eine SELinux Rolle auf der Sudo Befehlszeile angegeben wird. Wenn die symbolische Verbindung unter / dev / shm mit einem Link auf eine andere Datei ersetzt wird, bevor es durch sudo geöffnet, es ist möglich, eine beliebige Datei, indem er an die Standardausgabe oder Standardfehler überschrieben. Dies könnte durch eine vertrauenswürdigen Dateien wie / etc / shadow oder sogar / etc / sudoers zu vollem Root-Zugriff zu eskalieren.
Wie Fix CVE-2017-1000367
Zum Glück, das Problem wird in sudo 1.8.20p1 angesprochen und geflickt.
Auch, das Update für das Parsen / proc /[pid]/eine Neue-Zeile-stat enthalten ist, ist in sudo 1.8.20p2 enthalten. Aufgrund von Änderungen in sudo 1.8.20p1, wie / dev durchlaufen wird, es ist nicht möglich, eine / proc / auszubeuten[pid]/Stat-Datei, die eine neue Zeile enthält, Forscher schließen.