KDE: Dolphin als Root per PolicyKit

Wer Plasma schon etwas länger nutzt, wird sich erinnern: seit Dolphin v17.04 war es nicht mehr möglich, den Dateimanager als Root zu starten. Wer dies versuchte, erhielt eine entsprechende Fehlermeldung:

Executing Dolphin as root is not possible

Als Sicherheitsrisiko eingestuft

Was war passiert? Der damalige KWin-Entwickler Martin Grässlin hatte ziemlich eigenmächtig beschlossen, dass es unter X11 ein ziemliches Sicherheitsrisiko sein könne, Kate, Kwrite oder Dolphin als Root oder per Sudo zu starten und dass es zudem völlig überflüssig sei, wobei ich ihm bei Letzterem recht geben muss. Das sahen einige seiner Kollegen und viele Anwender aber nicht so, was zu einer lautstarken Diskussion führte, in der die Gegner dieser Regelung darauf hinwiesen, dass sie nicht beschützt werden wollen, sondern selbst entscheiden möchten, was sie dürfen und was nicht, immerhin sind wir bei Linux.

PolicyKit-Support für KIO-Apps

Ein Standpunkt, der schwer zu kontern ist, Grässlin aber nicht zum Umdenken brachte. Sicherheitsforscher Bo Weaver sieht in einer Analyse Grässlins Sicherheitsbedenken nicht als Problem von KDE-Anwendungen, sondern eher auf Systemebene. Die Sperre wurde dann von anderen KDE-Entwicklern gekippt und seit v18.08 ließ sich Dolphin dann per pkexec als Root starten. Eine saubere Lösung per PolicyKit-Support für KIO wurde in Angriff genommen, brauchte aber fast fünf Jahre zur Umsetzung.

Jetzt meldet Nate Graham in seinem Blog in seiner wöchentlichen Kolumne Vollzug. Dies ermöglicht Dolphin und anderen KDE-Anwendungen, die die KIO-Bibliothek verwenden, das Erstellen, Verschieben, Kopieren und Löschen von Dateien an Orten, die nicht dem jeweiligen User gehören. Die Unterstützung für die Änderung setzt mit KDE Frameworks 5.91 am 12. Februar ein. Getestet werden kann schon vorher in KDE Neon Unstable oder openSUSE Krypton. Fehler können im KDE-Bugtracker für frameworks-kio gemeldet werden.

Teilt den Beitrag, falls ihr mögt

30 Kommentare

  1. Bei GNOME (Debian Bullseye + Wayland) und Nautilus musst du zweimal das root Passwort als Abfrage mit Hinweis eingeben. Möchtest du dann noch Dateien editieren, musst du erneut das root Psw. eingeben. Ich finde das als aufmerksam machen schon sehr gut.
    Wer dann noch nicht verstanden hat das es ab jetzt ohne doppelten Boden und Netz weiter geht, dem hilft auch nichts anderes mehr.
    Ich komme damit gut klar, erledige aber auch ein paar Dinge auf der Konsole und der MC ist auch nie weit entfernt.

    1
    1. Wenn der Nutzer zu oft nach dem root PW gefragt wird, dann führt das nur dazu, dass er den gesamten Desktop als Nutzer root starten wird um seine Aufgabe zu erledigen.

      Wenn man Dateien verschieben, kopieren oder deren Attribute ändern will, dann sollte man das alles unter einem Sessiontoken zusammenfassen, so dass man das root PW nur einmal eingeben muss, seine Arbeit erledigen kann und es dann damit getan ist.
      Aber ein PW Abfrage, für jeden einzelnen Ordner, den man erstellen muss und für den man root Rechte zum Erstellen braucht, ist dann doch zu viel.

      0
      1. Das hast du falsch verstanden. Du kannst dich für jede Sitzung wo du root Dateien bearbeiten möchtest, anmelden (zwei fach Abfrage). Möchtest du aus dieser Session mit Root Rechten heraus Dateien editieren (nicht kopieren oder dergleichen), dann musst du dich dafür erneut anmelden. Das geht vielleicht auch noch anders, aber so nutze ich das zu dem was ich auf der Konsole und mit dem MC unter root bearbeitet. Ich finde das einen guten Kompromiss.

        0
        1. …und mal ganz ehrlich: Wie oft musst du bei einem gesunden und funktionierenden system als root etwas machen? Unter Debian muss ich das nicht sehr häufig nutzen. Aktualisierungen, Installation neuer Pakete/Programme und das war es meist schon. Das geht finde ich.

          0
  2. Sowohl bei KDE als auch bei Gnome gibt es Betonkopfentwickler, die den Nutzern gerne ihre persönlichen Standpunkte aufzwingen und zu keinen Kompromissen bereit.

    Linux Mint: Bei Nemo erscheint eine Warnmeldung, wenn er mit root-Rechten ausgeführt wird.

    1
  3. Wenn ich mich recht erinnere, ging es dabei um die Entwicklung bzw. Erweiterung von kwin für wayland und die Eigenmacht von Martin war ohnehin sehr groß weil er einer der Hauptentwickler war. Man nennt das auch Verantwortung.
    Im Zentrum der Debatte stand vor allem der Gebrauch des Editors (Kate) und die Ansicht (die ich übrigens auch immer noch teile), dass nicht die halbe GUI unter Rootrechten laufen sollte, weil das eine unnötige Angriffsfläche in Richtung Rooteskalation schafft. Wayland bietet mehr Sicherheit als Xorg und die wäre damit zunichte gemacht worden. Ich denke, dass die jetzige Lösung dem auch Rechnung trägt und die mögliche Angriffsfläche gering hält.

    Was Dolphin betrifft, so musss ich gestehen, dass ich damals bei meinem Umstieg auf Linux noch keinen Konsolenbefehl kannte. Auch Dateirechte waren mir gänzlich unbekannt. Klar, das geht dann mit einem Dateimanager der als Root läuft einfacher. Inzwischen hab ich mir dann die paar Befehle notiert und in einer Umgebung mit vielen Gerätschaften, Benutzern und einem Network File System ist die Konsole zur Einrichtung ohnehin das Beste.

    1
    1. Schon seit ewigen Zeiten ist der Dateimanager Krusader, den nicht mehr viele kennen, mit Root-Rechten startbar. Wenn ich mich an meine Linux-Kindertage recht erinnere, hatte Krusader 2 Icons mit Starteinträgen für User und Root und in der Oberfläche nochmals einen entsprechenden Menüpunkt. Wie das umgesetzt war, weiß ich nicht mehr. So wie ich das sehe, geht das heute nur über den Menüpunkt Extras ==> Krusader im Systemverwaltungsmodus starten.

      0
  4. Prinzipiell wird also nun genau das realisiert, was unter Gnome schon seit langem praktiziert wird. Sprich, Nautilus wird regulär mit eingeschränkten Privilegien ausgeführt, kann jedoch auf Basis von Polkit “admin:///” an einzelne Module, zeitlich begrenzte höhere Privilegien für administrative Aktionen vergeben. Und auch wenn ich sehr intensiv mit dem Terminal arbeite, und auf die Kapazitäten von Nautilus nicht wirklich angewiesen bin, so ist es dennoch gut zu wissen das derartige Aufgaben auch damit sicher ausgeführt werden können. Muss aber auch sagen das mich das noch nie negativ tangiert hat, dass die Dateimanager unter KDE und Gnome seit Jahren nicht mehr als Root gestartet werden konnten.

    2
    1. Den Youtuber von Linus Tech Tips hat das letztens in einem seiner Linux Test Videos kritisiert, dass er keinen Dateimanger mit root Befähigung zur Verfügung hatte.

      Vielleicht hat es seine Reichweite und der darauf folgende Shitstorm ermöglicht, dass man das Problem jetzt endlich gelöst hat?

      0
  5. Hallo Linux Freunde,
    ich habe eine Frage. Zur Weihnachten schenkte mir mein Arbeitgeber ein MEDION Akoya E15803 Laptop mit folgender Hardware,

    AMD E3020e mit onboard GPU AMD Vega RX3
    4Gb DDR4 RAM
    15 Zoll LCD Display
    128Gb M2 SSD

    Würde gern auf Kde5 Plasma umsteigen bzw MX Linux 21 drauf installieren, aber habe ein wenig Sorgen wegen den nur 4GB RAM , welche fest verlötet sind und nicht erweiterbar sind.

    Über eine Antwort würde ich mich sehr freuen

    0
  6. Für spezielle Aufgaben insbesondere für ein- und Umsteigereine saubere Lösung (nicht jeder kann eine Konfiguration oder Logdatei die nur für root zugänglich ist z.B. zum lokalen Benutzer kopieren)

    2
    1. Was heist saudoof? – Für die 2 bis 3x, die ich im Jahr etwas per root im Dateimanager erledige(n muß), ist es für mich leichter, das mit “sudo Dateimnnager” zu machen, als mich erst stundenlang durch dumme Befehle zu wursteln…
      Vor 20 Jahren gabs dafür den MC, den nehme ich auch heute noch sehr gerne….
      Wers anders hält schön für ihn

      2
        1. Ist aber doch egal, ob Thunar, dolphin oder MC; wer als sudo arbeitet – bzw mit – ist eh in einer graphischen oberfläche und macht die root-Tätigkeit nur nebenbei…..

          Den Artikel habe ich verstanden; Deine Ironie kommt mir langsam zu Gesicht; wobei ich Ferdinand trotzdem nicht verstehe, wiese er meint, es wäre überflüssig, etwas als root unter X11 zu erledigen….

          1
            1. Aber wieso sollte man Dateioperationen mit einem Editor ausführen? Und wenn ich eine Datei mit Dolphin oä öffne, dann doch mit dem Programm, mit dem ich wunderbar gut klar komme, und also am Sichersten arbeite und (wahrscheinlich) die wenigsten Fehler mache…..
              Manchmal frage ich mich, wie ich DAU über 20 Jahre ohne EMACS, VI, VIM, nano etc ausgekommen bin, alle Probleme gelöst bekommen habe und nie an Linux verzweifelt bin
              Die Kommandozeile habe ich schon bei MS-Dos nicht gemocht…

              1
              1. Es kann ja jeder tun, was er will und auch gerne das beibehalten, was er gelernt / sich beigebracht hat. Wenn man mit den Risiken leben will, ist das OK. Es gibt/gab ja sogar Distributionen, die standardmäßig im Root-Mode starten… Für mich ist Nano seit jeher das Tool der Wahl, für andere ist es Emacs oder Krusader, um beim Dateimanager zu bleiben.

                0
      1. Das was eigentlich gemeint war ist, dass die Dummheit einer solchen Aktion darin liegt, dass bei einem mittels Rootrechten gestarteten Dateimanager, jedwede Bestandteile dessen mit Rootrechten ausgeführt werden. Wenn man nun bedenkt, dass der Nutzer Root heutzutage um die 40 Capabilities (inklusive CAP_SYS_ADMIN) in sich vereint, womit so ein grafischer Dateimanager weitaus mehr Privilegien inne hat, als für die zugrundeliegende Aufgabe überhaupt erforderlich sind, dann stellt das ein erhebliches Risiko dar angesichts dessen was hier an Datentypen verarbeitet wird. Nimmt man nun noch hinzu wie unsicher die grundlegende Architektur von Xorg ist, verschlimmert die Lage zusätzlich um ein Vielfaches. Genau darum startet man keine grafischen Programme mit Rootrechten, und schon gar nicht auf Basis von Xorg. Die prinzipiell sicherheitstechnisch problematische Situation grafischer Programme, ist auch einer der Gründe warum deren Ausführung als Root unter Wayland prinzipiell verboten ist. Daher sind administrative Aufgaben via Polkit oder gänzlich via Terminal grundsätzlich zu bevorzugen.

        1
        1. Da ist seit wie gesagt über 20 Jahren irgend etwas an mir vorüber gegangen….
          Es ist ja so; wenn ich als DAU mit root-rechten irgendetwas machen will/muss, dann weis ich meistens nicht so genau, wie ich dahin gelange, mit welchen Tools und Befehlen…Also ist es nur praktisch für mich, wenn das Werkzeug der Wahl ALLE Tools in sich vereint; so wie es der MC im Terminal macht, oder ein graphischer Dateimanager unter X.
          Über die Unsicherheit von X kann man viel schreiben; aber den letzten vollabsturz unter X hatte ich vor bestimmt schon 15 Jahren

          Jetzt frage ich aber mal direkt; was macht den Unterwschied, ob ich Dolphin im Terminal (xterm oä ) mit root-Rechten starte, oder über ein schnellstartmenue?
          Aber ich sitze ja auch nur zu Hause am Rechner, der ist ziemlich unwichtig; die Daten liegen in der (einer) Cloud und ich habe keine Druck, das Alles laufen muss!
          Und gerade durch das Abschiessen kann zumindest ich am Besten lernen 🙂

          0
          1. Es ist bedauerlich das Dich solch elementare Dinge nicht wirklich interessieren, zumal diese einen erheblichen Anteil an der Sicherheit des Systems haben. Bezüglich deiner Frage gibt es zumindest keinen nennenswerten Unterschied, weil beides nach wie vor unter Xorg ausgeführt wird. Und das Problem vom in den 80ern entwickelten Xorg ist nunmal, dass diese Software keinerlei Sicherheitskonzept kennt, und schon gar nichts was an irgendwelche modernen Verfahrensweisen erinnern würde. Sprich, ein Angreifer benötigt lediglich eingeschränkte Privilegien und ist damit auf Basis von Xorg bereits in der Lage, die Daten aller aktiven Fenster abzugreifen, kann beliebige Eingaben verfälschen oder auch eigene Kommandos absetzen. Es gibt unter Xorg keinerlei Isolation, womit ein Angreifer selbst das eingegebene Passwort des Nutzers mühelos im Terminal abgreifen und unmittelbar für weitere Angriffe missbrauchen kann. Und das ist nur eines von vielen Szenarien die möglich sind. Mit einem modernen auf Wayland basierten Desktop, ist all das nicht länger möglich, noch wissen offene Fenster bzw. Programme gegenseitig von deren Existenz, noch sind diese in der Lage beliebige Daten untereinander auszulesen oder einzufügen, wenn der Nutzer dies nicht autorisiert hat. Sprich, offene Fenster sehen nur ihre eigenen individuellen Ressourcen anstatt wie zuvor einfach alles. Ein immenser Unterschied verglichen mit Xorg. Sicher es mag zutreffen das Xorg oberflächlich betrachtet, scheinbar zuverlässig seinen Dienst verrichtet, doch das täuscht wenn das Konzept mit heutigen sicherheitstechnischen Anforderungen beleuchtet und erkannt wird, dass alles an Xorg praktisch hoffnungslos veraltet ist, sodass nicht mal mehr eine Modernisierung des Code noch einen Sinn hat. Klar muss aber auch sein, dass mit mehr Sicherheit automatisch auch ein gewisser Verlust an Komfort einhergeht. Wobei man diesen Preis gerne zahlen sollte, wenn einem die Integrität von Daten und Systemen etwas bedeutet.

            1
            1. Hallo Nick, ich bin ja nur und ausschliesslich privat mit Linux unterwegs; mein Arbeitgeber hat einen exclusiven Vertrag mit der Firma aus Redmond, so dass es dort so gut wie keine anderen Systeme gibt.
              Sicher ist mir bewusst, das X veraltet ist; darum wird ja auch seit Jahren an Wayland programmiert.
              Es stellt sich mir nur die Frage, wer warum hier an diesem einzelnen PC gerade dann, wenn ich ausnahmsweise mal mit root-Rechten arbeite, in mein System eindringen will. Wie gesagt, rain privat und ohne obscure Software aus werkwürdigen Quellen….

              Das mehr Sicherheit oftmals weniger Komfort bedeutet, ist mir auch klar; ich glaube aber, dass ziemlich schnell nach flächiger Einführung von Wayland die ersten Tips kommen werden, wie man dauerhaft graphische Tools mit root-Rechten starten kann etc….

              0
              1. Inzwischen sind es 14 Jahre, seit dem Wayland und das Desktop Environment Ökosystem drumherum in Entwicklung ist und mein KDE unter Debian stable muss immer noch unter X Window laufen.

                Ich hoffe sehr, dass ich bei der nächsten Debian stable dann KDE endlich unter Wayland nutzen kann und es da dann genauso reibungslos funktioniert, wie unter X.

                Zu deiner Frage.
                Stell dir vor, dein Nutzeraccount wurde kompromittiert, weil du bspw. eine präparierte Datei geöffnet hast und die hat eine Sicherheitslücke ausgenutzt und Code ausgeführt, der deinen Nutzeraccount nun zum Bot macht, der sich remote steuern lässt.
                Im Prinzip ist somit eigentlich schon der für dich geltende größte Schaden entstanden, dein Nutzeraccount liegt in der Gewalt eines Dritten und deine Daten liegen ihm auch alle offen zur Verfügung.
                ABER, es könnte ja sein, dass noch deine Frau den Rechner unter ihrem Nutzeraccount nutzt. Ihre Daten sind noch nicht kompromittiert.
                Dieser letzte Schritt wäre aber über eine Kompromittierung von root möglich, wenn du das unter deinem bereits kompromittierten Nutzeraccount möglich machst.
                Außerdem könnte dieser Dritte seinen Bot dann nicht nur dann nutzen, wenn du eingeloggt bist bzw. eine Session von dir aktiv ist, sondern auch dann, wenn nur der Loginscreen zu sehen ist oder deine Frau eingeloggt ist.

                0
        2. Du meinst jetzt aber sicher, dass das Terminal in einer richtigen Konsole, also nicht unter X, gestartet werden soll.
          Denn sonst kann man da ja auch immer noch einfach das root Passwort abgreifen, sobald es in einem X Terminal eingegeben wurde.

          0

Kommentar hinterlassen