Def: Sicherheit: Linux/Unix

Hallo an alle!

Folgendes theoretisches Szenario:

Ich melde mich als normaler Benutzer "def" an einem grafischen Login an. Durch irgendeine Sicherheitslücke (z.B. in einem Webbrowser, in einem Office-Programm oder was auch immer) gelangt das bösartige Programm "EvilApp" im Hintergrund zur Ausführung, ohne dass ich es bemerke. Da es nur im Hintergrund auf eine Gelegenheit zum Zuschlagen wartet, sieht für mich alles völlig normal aus.
Nun öffne ich ein Fenster mit einer Shell und tippe "su root" ein, z.B. weil ich ein neues Programm installieren will. EvilApp fängt mein root-Passwort ab (Keylogger? Oder es simuliert eine Shell, in die ich voller Vertrauen mein Passwort eintippe?), reicht es danach aber an die Shell weiter, so dass ich nichts bemerke, weil für mich alles normal funktioniert. Ohne mein Wissen konnte sich EvilApp root-Rechte erschleichen.

Nun die eigentlichen Fragen:

  • Ist vorstehendes Szenario realistisch?
  • Wenn ja, wie kann man sich dagegen schützen?
  • Wenn nein, woran würde EvilApp scheitern?

Danke für Denkanstöße...
Def

  1. hallo Def,

    • Ist vorstehendes Szenario realistisch?

    Nicht wirklich.

    • Wenn nein, woran würde EvilApp scheitern?

    An der Startgenehmigung. Falls nicht zuvor schon an seinem Nichtvorhandensein.

    Grüße aus Berlin

    Christoph S.

    --
    Visitenkarte
    ss:| zu:) ls:& fo:) va:) sh:| rl:|
  2. EvilApp fängt mein root-Passwort ab (Keylogger? Oder es simuliert eine Shell, in die ich voller Vertrauen mein Passwort eintippe?), reicht es danach aber an die Shell weiter, so dass ich nichts bemerke, weil für mich alles normal funktioniert. Ohne mein Wissen konnte sich EvilApp root-Rechte erschleichen.

    Mag sein, dass ich total falsch liege, bin nicht so ein Linux-Profi, aber ich sehe da noch das Problem, mit dem Root-Passwort an eine Root-Shell zu kommen. Immerhin akzeptieren su u.ä. ja keine Passwörter als Parameter. Man müsste evtl. Tastendrücke simulieren und da weiß ich nicht wie das mit der Berechtigung aussieht.

  3. Tach,

    • Ist vorstehendes Szenario realistisch?

    Ja, mir wäre zwar bisher kein derartiger *nix-Trojaner in der Wildbahn bekannt, das ist aber durchaus ein Szenario bei einem gezielten Angriff.

    • Wenn ja, wie kann man sich dagegen schützen?

    Ein User der die Möglichkeit hat root-Rechte zu erlangen muß besonders darauf aufpassen, was er für Software installiert/ausführt. Zu verhindern wäre dieser komplette Kontrollverlust z.B. durch ein extrem auf die jeweiligen Aufgaben angepaßtes sudo.

    mfg
    Woodfighter

    1. Hallo,

      • Wenn ja, wie kann man sich dagegen schützen?

      Ein User der die Möglichkeit hat root-Rechte zu erlangen muß besonders darauf aufpassen, was er für Software installiert/ausführt. Zu verhindern wäre dieser komplette Kontrollverlust z.B. durch ein extrem auf die jeweiligen Aufgaben angepaßtes sudo.

      wie würdest Du folgende Ansätze sicherheitstechnisch beurteilen? Bringen diese irgendwelche Vorteile?

      * Für root-Aufgaben auf eine "echte" Konsole ausweichen (STRG + ALT + F1..F6) und sich dort einloggen.

      * Für root-Aufgaben immer den Rechner ausschalten und wieder neu einschalten, dann umgehend über eine Konsole (STRG + ALT + F1..F6) als root einloggen.

      ---

      So wie ich das sehe, ist der Kern des Problems, dass man bereits als normaler Benutzer angemeldet ist, und man in dieser potenziell unsicheren Umgebung sein root-Passwort preisgibt. Angenommen, root sei noch nicht gehackt, ist die einzige 100%ig sichere Methode, den Rechner auszuschalten (Strom aus, Stecker ziehen ;-), denn kein Trojaner kann diesen ausgeschalteten Zustand "vortäuschen". Dann halt wieder neu booten, umgehend eine Konsole aufrufen und als root anmelden.
      Okay, diese Sichtweise ist paranoid, und ich habe nicht vor, das praktisch so zu tun. Aber zum prinzipiellen Verständnis hilft es mir. Sind meine Ausführungen so richtig?

      Danke!
      Def

      1. Tach,

        wie würdest Du folgende Ansätze sicherheitstechnisch beurteilen? Bringen diese irgendwelche Vorteile?

        * Für root-Aufgaben auf eine "echte" Konsole ausweichen (STRG + ALT + F1..F6) und sich dort einloggen.

        Ich bin mir nicht sicher, ob das nicht manipulierbar ist (z.B. ob die Tastenkombination abfangbar ist), aber es wäre schon deutlich schwerer.

        * Für root-Aufgaben immer den Rechner ausschalten und wieder neu einschalten, dann umgehend über eine Konsole (STRG + ALT + F1..F6) als root einloggen.

        Ist besser, da ja noch kein möglicherweise korumpierter Userkontext geladen ist.

        So wie ich das sehe, ist der Kern des Problems, dass man bereits als normaler Benutzer angemeldet ist, und man in dieser potenziell unsicheren Umgebung sein root-Passwort preisgibt.

        genau

        mfg
        Woodfighter

        1. Hallo Woodfighter,

          danke für Deine Auskünfte.

          Def