Eine Sicherheitsanfälligkeit in Vim ermöglichte die Codeausführung beim Öffnen eines TXT

Vim

In den vorinstallierten Texteditoren auf verschiedenen Distributionen wurde eine neue Sicherheitsanfälligkeit behoben Linux wurde gefunden in den Texteditoren Vim und Neovim (CVE-2019-12735).

Der Fehler in diesen Editoren gefunden Ermöglicht Hackern die Steuerung von Computern, wenn Benutzer eine schädliche Textdatei öffnen. Das Problem tritt mit der standardmäßig aktivierten Modeline-Aktivität (": set modeline") auf, mit der Sie die Bearbeitungsoptionen in der zu verarbeitenden Datei definieren können.

Vim und seine NeoVim-Gabel enthielten einen Fehler, der in den Modellreihen lag. Mit dieser Funktion können Benutzer Fensterabmessungen und andere benutzerdefinierte Optionen am Anfang oder Ende einer Textdatei angeben.

Diese Funktion ist in Versionen vor Vim 8.1.1365 Neovim 0.3.6 standardmäßig aktiviert und gilt für alle Dateitypen, einschließlich TXT-Dateien.

Über die Sicherheitslücke in Vim

Durch Modeline, Es ist nur eine begrenzte Anzahl von Optionen zulässig. S.Wenn ein Ausdruck als Optionswert angegeben wird, wird er im Sandbox-Modus ausgeführt, sodass nur die einfachsten sicheren Vorgänge verwendet werden können.

Zur gleichen Zeit Der Befehl ": source" ist einer der zulässigen Befehle, in denen Sie den Modifikator "!" verwenden können. um beliebige Befehle aus der angegebenen Datei auszuführen.

Um den Code auszuführen, reicht es daher aus, in der Modellzeile eine Konstruktion der Form "set foldexpr = execute ('\: source! Some_file'):" anzugeben. In Neovim ist der Ausführungsaufruf verboten, aber stattdessen kann assert_fails verwendet werden.

Auf der anderen Seite soll es im Sandkasten Nebenwirkungen verhindern:

Die Optionen 'foldexpr', 'formatexpr', 'includeexpr', 'indentexpr', 'statusline' und 'foldtext' können alle in einer Sandbox ausgewertet werden. Dies bedeutet, dass Sie gegen diese Ausdrücke mit unangenehmen Nebenwirkungen geschützt sind. Dies bietet eine gewisse Sicherheit, wenn diese Optionen aus einem Modell definiert werden.

Während die Modelle die verfügbaren Befehle einschränken und in einer vom Betriebssystem isolierten Umgebung ausführen, Der Forscher Armin Razmjou bemerkte, dass der Befehl: font! diesen Schutz umgangen:

"Sie liest und führt die Befehle in einer bestimmten Datei aus, als ob sie manuell eingegeben worden wären, und führt sie aus, sobald die Sandbox verlassen wurde", schrieb der Forscher in einer Nachricht, die Anfang dieses Monats veröffentlicht wurde. -ci.

Somit kann man trivial eine Modelllinie erstellen, die den Code außerhalb der Sandbox ausführt.

Die Post enthält zwei Textdateien zum Nachweis des Prinzips, von denen eine die Bedrohung grafisch darstellt.

Einer von ihnen öffnet eine Reverse Shell auf dem Computer, auf dem Vim oder NeoVim ausgeführt wird. Von dort aus konnten die Angreifer die Befehle ihrer Wahl auf dem angeforderten Computer starten.

"Dieser PoC beschreibt einen echten Angriffsansatz, bei dem eine Reverse Shell gestartet wird, wenn der Benutzer die Datei öffnet", schrieb Razmjou. «Um den Angriff zu verbergen, wird die Datei beim Öffnen sofort neu geschrieben. Außerdem verwendet PoC Terminal-Escape-Sequenzen, um die Modellzeile auszublenden, wenn Inhalte mit cat gedruckt werden. (cat -v zeigt den tatsächlichen Inhalt). «

Die Sicherheitsanfälligkeit bezüglich der Befehlsausführung erfordert die Aktivierung der Standardmodellierungsfunktionalität, wie in einigen Linux-Distributionen standardmäßig. Der Fehler wurde in Vim vor Version 8.1.1365 und in Neovim vor Version 0.3.6 gefunden.

Diese Empfehlung aus der National Vulnerabilities Database des National Institute of Standards and Technology zeigt, dass Debian- und Fedora Linux-Distributionen mit der Veröffentlichung fester Versionen begonnen haben.

In Distributionen ist das Problem in gelöst RHEL, SUSE / openSUSE, Fedora, FreeBSD, Ubuntu, Arch Linux und ALT.

Die Sicherheitsanfälligkeit bleibt in Debian unkorrigiert (In Debian Modeline ist es standardmäßig deaktiviert, sodass sich die Sicherheitsanfälligkeit nicht im Standardzustand manifestiert.)

Die neueste Version von MacOS verwendet weiterhin eine anfällige Version, obwohl die Angriffe nur funktionieren, wenn Benutzer eine Standardeinstellung geändert haben, für die die Modellfunktionen aktiviert sind.


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: AB Internet Networks 2008 SL
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.