Samuel Vogel: Filemanager Sicherheit

Hallo,

ich bastle gerade einen Filemanager und bin gerade bei dem Thema sicherheit. Ich habe rein gemacht dass der Admin ein Verzeichnis angeben kann aus dem man nicht heraus kann mit dem Filemanager.

Ich überprüfe wie viel Slashes das Verzeichnis hat in das der User will und wie viel Slashes das Verzeichnis hat aus dem der User nicht raus kann! Und wenn in dem Verzeichnis in dass der User will weniger Slashes sind als in dem aus dem er nicht heraus können soll dann geht nix mehr.

Ich wollte mal Fragen ob dass sicher ist oder was ich anders machen soll.

samy,

  1. Hallo Samuel,

    Ich wollte mal Fragen ob dass sicher ist oder was ich anders machen soll.

    die beste Sicherheit auf einem Webserver wo sich mehrere user 'rumtummeln gibt suexec. Damit ist sichergestellt, dass nur derjenige dem "webdateien" , sprich html, php, cgi's , gehören, die auch bearbeiten und ausführen darf.

    Dein Provider könnte das unterstützen, bitte frag ihn.

    Erwin

    --
    SELFforum - Das Tor zur Welt!
    Theoretiker: Wie kommt das Kupfer in die Leitung?
    Praktiker: Wie kommt der Strom in die Leitung?
    1. Danke,

      aber was ist "suexec".
      Ich habe einen privaten Webserver!

      samy,

      1. hi Samy,

        aber was ist "suexec".

        Switch User Exec - ein CGI schaltet zu dem User dem die Scripts gehören und führt das Script aus.

        Auf dateisystemebene ist ein CGI für alle anderen Benutzer tabu.

        suexec muss im Apache Webserver konfiguriert sein....

        Noch was zum ursprünglichen Anliegen: Falls du ein CGI Script schreibst womit ein CGI user ( tja, meistens www-data, also nicht DU , sondern jeder ) auf Dateien und Verzeichnisse zugreifen will, kannst du, sofern du das auf der shell darfst, die Berechtigungen auf denjenigen user der CGI 's ausführt setzen ( lesen, lesen + ausführen, je nachdem).

        Und im CGI kannst du dann mit den sog. Dateitestoperatoren prüfen ob das Verzeichnis in das der Benutzer wechseln will dem auch gehört. Oder eben das Beschreiben einer Datei.

        Jeder user hat eine effektive uid und auch in PHP gibts ne Variable dazu.

        Erwin

        --
        SELFforum - Das Tor zur Welt!
        Theoretiker: Wie kommt das Kupfer in die Leitung?
        Praktiker: Wie kommt der Strom in die Leitung?
        1. Siehe auch
          http://perlbase.xwolf.de/cgi-bin/perlbase.cgi?dis.10.17

          Schluss für heute, Fernseher laaaft ;-)

          erwin

  2. Moin!

    ich bastle gerade einen Filemanager und bin gerade bei dem Thema sicherheit. Ich habe rein gemacht dass der Admin ein Verzeichnis angeben kann aus dem man nicht heraus kann mit dem Filemanager.

    Ich überprüfe wie viel Slashes das Verzeichnis hat in das der User will und wie viel Slashes das Verzeichnis hat aus dem der User nicht raus kann! Und wenn in dem Verzeichnis in dass der User will weniger Slashes sind als in dem aus dem er nicht heraus können soll dann geht nix mehr.

    Warum so kompliziert? Wenn du ein Verzeichnis festlegen willst, in dem man sich bewegen darf, dann prüfe entweder, ob der Beginn des gewünschten Verzeichnisses identisch ist mit dem erlaubten Verzeichnis, oder verbinde einfach dieses konfigurierte Verzeichnis mit dem, was der Benutzer will.

    Deine Slash-Idee ist umgehbar:

    Drei Slashes erlaubt:
    /mein/sicheres/verzeichnis -> darf sein
    /etc/httpd/httpd.conf -> darf nicht sein, hat aber gleichviel Slashes.

    Erwins suexec-Einfall ist nicht wirklich zielführend, IMHO.

    - Sven Rautenberg

    --
    Die SelfHTML-Developer sagen Dankeschön für aktuell 20065,57 Euro Spendengelder!