Aqua: HTACCESS oder Sessions? (Sicherheits-Frage)

Hallo!

Ein Administrationsbereich diverser Tools (z.B. Gästebuch, Forum, Counter etc.)
soll mit einem Passwort geschützt werden.

Grundsätzlich würde ich an Sessions denken.
Jetzt drängt sich mir aber die Frage auf,  ob ich mit der
wesentlich einfacheren Möglichkeit eines HTACCESS-Passwortschutzes
das Ganze auch realisieren könnte.

Frage 1)   Ist ein HTACCESS-Passwortschutz exakt gleich sicher
           bzw. sicherer als ein normaler Script-Interner gut
           gemachter Passwortschutz mit Sessions,
           oder gibt es irgendeine _Sicherheits-Gefahr_
           bei einem HTACCESS-Passwortschutz ??

Frage 2)   Wenn man sich auf einem Webseite wo einloggen muss
           (bei einer <form> action) merken sich manche Browser
           wie Mozilla und Opera und andere  die Login-Daten,
           und tragen sie teilweise beim nächsten Login von
           selbst ein.

Wie ist das bei einer HTACCESS-Passwort-Eingabeaufforderung?
           Merkt sich der Browser die Logindaten automatisch?

Weil:  Dann wäre das eine sehr grosse Gefahr
                  in Internet-Cafe's  -  Die Kunden würden
                  sich dort einloggen und dann könnte dort
                  der / die nächsten User sich auch einloggen
                  im Internet-Cafe (wäre schrecklich!)

Wie ist das?
Danke,
Aqua

  1. Hi

    Also, ein  htacces PW-Schutz funktioniert nur auf Servern mit Linux/Unix. Auf einem Windows-Server geht das nicht.

    Generell würde ich zu einem PW-Schutz mittels <form> raten. Da man sich PHP-Skripte nicht downloaden kann (ich habe es noch NIE geschafft, gibts da eigentlich Software dazu? Und darf man das?), besteht keinerlei Gefahr, das Passwort zu knacken. Außer man hackt den Server, was aber nicht sehr häufig vorkommt.

    Außerdem finde ich die htaccess-Eingabeaufforderung sehr plump. Es ist einfach ein Fenster, an dem man keine Designspezifische Veränderungen vornehmen kann. Bei <form>-PW-Schutz kann man das...

    Ach ja: InternetCafés benutzen meist den IE, der sich (noch) keine Passwörter merken kann. Für das - das muss man ihm lassen - ist der IE wirklich gut geeignet. Für alles andere nicht...

    amer

    --
    Vergib deinen Feinden - aber vergiss niemals ihren Namen
    1. Hallo,

      ich darf kurz aus meiner Sicht dazu Stellung nehmen:

      Also, ein  htacces PW-Schutz funktioniert nur auf Servern mit Linux/Unix. Auf einem Windows-Server geht das nicht.

      Meines Wissens kann das auch ein IIS unter Verwendung entsprechender Windows-Benutzer-Konten, bzw. kann das auch ein windows-basierter Appache sofern man die Datei in der Konfiguration umbenennt, so dass sie nicht .htaccess heißt.

      Generell würde ich zu einem PW-Schutz mittels <form> raten. Da man sich PHP-Skripte nicht downloaden kann (ich habe es noch NIE geschafft, gibts da eigentlich Software dazu? Und darf man das?), besteht keinerlei Gefahr, das Passwort zu knacken. Außer man hackt den Server, was aber nicht sehr häufig vorkommt.

      1. nur weil du noch keine Skripte heruntergeladen hast heißt das leider nicht, dass sowas nicht vorkommen wird. Gerade letzte Woche zog ich ein in Google gefundenes Perl-Skript, das eigentlich eine Menge von Datenbankeinträgen ausgeben sollte. Sobald der Webserver aus irgend einem Grund beschließt "heute kein PHP" schickt er die Skripte einfach im Klartext raus.
      2. Server knacken ist ein Hobby, manche Leute machen das häufiger als man denkt...

      Ach ja: InternetCafés benutzen meist den IE, der sich (noch) keine Passwörter merken kann. Für das - das muss man ihm lassen - ist der IE wirklich gut geeignet. Für alles andere nicht...

      Keine Passwörter merken? Bitte? Reden wir über zweierlei Dinge? Meine Anmeldeaufforderungen für .htaccess habe ich durch setzen der Checkbox "speichern" gespeichert, Formularanmeldungen ebenso nachdem der IE mich danach gefragt hat. Hab ich jetzt was anderes gemacht als du meinst? Das einzige ist, dass der Browser die <form>-Daten nicht automatisch einträgt, die Anmeldungen über .htaccess allerdings wohl.

      MfG
      Rouven

      --
      -------------------
      ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
      1. Hi

        Meines Wissens kann das auch ein IIS unter Verwendung entsprechender Windows-Benutzer-Konten, bzw. kann das auch ein windows-basierter Appache sofern man die Datei in der Konfiguration umbenennt, so dass sie nicht .htaccess heißt.

        Dann wäre es kein htaccess-PW-Schutz mehr. Doch danach ist gefragt.

        Keine Passwörter merken? Bitte? Reden wir über zweierlei Dinge? Meine Anmeldeaufforderungen für .htaccess habe ich durch setzen der Checkbox "speichern" gespeichert, Formularanmeldungen ebenso nachdem der IE mich danach gefragt hat. Hab ich jetzt was anderes gemacht als du meinst? Das einzige ist, dass der Browser die <form>-Daten nicht automatisch einträgt, die Anmeldungen über .htaccess allerdings wohl.

        Ich benutze den IE nicht mehr seit DSL-Anschluss habe. Wahrscheinlich lag es an der Version (4.0) dessen Können ich noch in Erinnerung habe. Der konnte sich zum Beispiel keine Passwörter merken (glaube ich zumindest, ist zu lange her).

        amer

        --
        Vergib deinen Feinden - aber vergiss niemals ihren Namen
        1. Dann wäre es kein htaccess-PW-Schutz mehr.

          Doch! das ist immer noch ein htaccess-PW-Schutz. Ob die Konfig in der Datei access.conf oder in .htaccess gespeichert sind ist technisch egal. Nur die Namen sind anders

          1. Привет, skyposter!

            Dann wäre es kein htaccess-PW-Schutz mehr.

            Doch! das ist immer noch ein htaccess-PW-Schutz. Ob die Konfig in der Datei access.conf oder in .htaccess gespeichert sind ist technisch egal. Nur die Namen sind anders

            Das ganze nennt sich nicht "htaccess-PW-Schutz", sondern ist ein Zugriffsschutz, der mittels einiger Konfigurationsanweisungen in der Apache-Konfiguration und einer Textdatei mit Nutzernamen und Passwörtern realisiert wird.

            Desweiteren bietet der Apache die Möglichkeit, in Verzeichnissen, die unterhalb des DocumentRoot liegen, separate Konfigurationsdateien abzulegen, die die Konfiguration des Apache innerhalb und unterhalb der Verzeichnisse, in denen sie liegen, zu überschreiben und so z. B. ein Verzeichnis vor unberechtigtem Zugriff zu schützen. Ob diese Dateien nun .htaccess oder happy_new.year heißen ist relativ egal. - Wie sie heißen müssen, legt die Direktive AccessFileName fest.

            Zu solchen dezentralen Konfigurationsdateien unter Windows findet sich im Manual eine Anmerkung auf der Seite Using Apache with Microsoft Windows (vorletzter Punkt).

            Пока!
            Sven aus Bonn

            --
            Do it yourSELF 'cause SELFmade is bestmade.
            Selfcode: ie:% fl:( br:^ va:} ls:[ fo:) rl:( n4:{ ss:| de:> js:| ch:? mo:} zu:)
            Selfcode dekodieren - Selfcode-Info
          2. Dann wäre es kein htaccess-PW-Schutz mehr.
            Doch! das ist immer noch ein htaccess-PW-Schutz. Ob die Konfig in der Datei access.conf oder in .htaccess gespeichert sind ist technisch egal. Nur die Namen sind anders

            Natürlich ist es kein HTACCESS-Passwortschutz mehr. Das war es aber auch vorher nicht, das was häufig unter diesem Namen bezeichnet wird, nennt sich eigentlich HTTP Basic Authentication.

            Schöne Grüße,

            Johannes

            --
            Das sage ich deshalb, weil ich Hompagebauer bin und Ahnung davon .
            ss:| zu:) ls:[ fo:) de:] va:) ch:) n4:| rl:) br:< js:| ie:{ fl:( mo:}
    2. Hi

      Nabend!

      Also, ein  htacces PW-Schutz funktioniert nur auf Servern mit Linux/Unix. Auf einem Windows-Server geht das nicht.

      Sorry, aber auf meiner DOSe klappt der .htaccess-Schutz wie vorgesehen, sogar mit Dateien des Namens .htaccess, d.h. nur weil der Windows-Explorer damit Probleme hat, heißt das noch lange nicht, dass der Apache oder irgendwelche Texteditoren solche Dateien nicht be-/verarbeiten könnten.

      Generell würde ich zu einem PW-Schutz mittels <form> raten. Da man sich PHP-Skripte nicht downloaden kann (ich habe es noch NIE geschafft, gibts da eigentlich Software dazu? Und darf man das?), besteht keinerlei Gefahr, das Passwort zu knacken. Außer man hackt den Server, was aber nicht sehr häufig vorkommt.

      Da brauch, wie gesagt, nur ein Konfigurationsfehler auftreten, voila. Außerdem, ob man Server hacken darf oder nicht, kümmert einen Kriminellen relativ wenig (deshalb ist er ja auch kriminell). Bei der Komplexität heutiger Software und Computer sind Sicherheitslücken so gut wie überall drin, man muss sie nur finden und ausnutzen. Und das gehackte Webserver selten sind, merkt man ja grad an den vielen geschlossenen phpBB-Foren, weil Santy so freundlich ist (http://www.heise.de/security/news/meldung/54623, außerdem als kleine Lektüre: http://www.heise.de/security/news/meldung/54671).

      Außerdem finde ich die htaccess-Eingabeaufforderung sehr plump. Es ist einfach ein Fenster, an dem man keine Designspezifische Veränderungen vornehmen kann. Bei <form>-PW-Schutz kann man das...

      Dafür kann man aber diese Eingabeaufforderung auch nicht manipulieren, Formulare schon. Man sollte bereit sein, der Sicherheit zu Gute Abstriche beim Design zu machen. Ist langfristig besser so.

      Ach ja: InternetCafés benutzen meist den IE, der sich (noch) keine Passwörter merken kann.

      Meiner Schon, IE 5.0.

      [...] Für alles andere nicht...

      ;-)

      amer

      Frohes Neues, Robert

    3. Moin,

      Also, ein  htacces PW-Schutz funktioniert nur auf Servern mit Linux/Unix. Auf einem Windows-Server geht das nicht.

      Gebetsmühle: Es gibt keinen htaccess-Passwort-Schutz. Es gibt HTTP Authentication (und auch davon mindestens zwei standardisierte Varianten, plus ein bisschen Kleinzeug) die irgendwo in der Serverkonfiguration eingestellt wird. Wie die Serverkonfiguration heisst und wo sie liegt ist vollkommen irrelevant. Und natürlich hat das Betriebssystem des Servers damit am allerwenigsten zu tun.

      Generell würde ich zu einem PW-Schutz mittels <form> raten. Da man sich PHP-Skripte nicht downloaden kann (ich habe es noch NIE geschafft, gibts da eigentlich Software dazu? Und darf man das?), besteht keinerlei Gefahr, das Passwort zu knacken.

      Das ist keine dazu geeignete Sicherheitsmassnahme. Was geeignet ist (solange es da nicht andere Probleme gibt, hallo Peter Huth ;) ist die Passwortdaten ausserhalb der vom Webserver erreichbaren Verzeichnisse zu speichern. Ob sie da in einer Datei liegen die der Webserver anschließend zur Durchführung von HTTP-Auth benutzt, oder ob ein selbstgebasteltes Skript dagegen prüft ist schnurzpiep- und aber sowas von -egal.

      Außer man hackt den Server, was aber nicht sehr häufig vorkommt.

      Schade, der Link zum 'Spaß' bei Loomes kam ja schon.

      Ach ja: InternetCafés benutzen meist den IE, der sich (noch) keine Passwörter merken kann.

      Er kann.

      Für das - das muss man ihm lassen - ist der IE wirklich gut geeignet. Für alles andere nicht...

      Wenn du schon ein zur Abwechslung gutes Feature des IE hervorheben möchtest, dann doch bitte eines welches auch wirklich da ist. Zum Beispiel verwendet der Internet Explorer im Gegensatz zu den letzten Versionen von Mozilla, Firefox, Galeon und Opera die ich getestet habe bei Digest Auth einen anderen Dialog als bei Basic Auth, was durchaus positiv ist.

      --
      Henryk Plötz
      Grüße aus Berlin
      ~~~~~~~~ Un-CDs, nein danke! http://www.heise.de/ct/cd-register/ ~~~~~~~~
      ~~ Help Microsoft fight software piracy: Give Linux to a friend today! ~~
    4. Hallo amer,

      Also, ein  htacces PW-Schutz funktioniert nur auf Servern mit Linux/Unix. Auf einem Windows-Server geht das nicht.

      Nein. .htaccess ist kein PW-Schutz. .htaccess ist eine Möglichkeit, den Apache-Server zu konfigurieren. In einer .htaccess-Datei kannst Du unter anderem auch eine bestimmte Art von Passwortschutz konfigurieren: "HTTP Basic Authentication". Der Apache unter Windows kann übrigens auch HTTP Basic Authentication, der IIS genauso.

      Generell würde ich zu einem PW-Schutz mittels <form> raten.

      Warum?

      Da man sich PHP-Skripte nicht downloaden kann

      Man kann auch .htaccess/.htpasswd auch nicht runterladen, wenn der Webserver richtig konfiguriert ist.

      (ich habe es noch NIE geschafft,

      Es hängt von der Konfiguration des Webservers ab.

      gibts da eigentlich Software dazu?

      Nein, kann es auch nicht geben. Und wenn man es doch schaffen kann, dann braucht man keine extra Software dazu, dann ist der Server falsch konfiguriert.

      besteht keinerlei Gefahr, das Passwort zu knacken.

      Falsch. Wenn jemand "bayern" als Passwort wählt, dürfte das selbst über das Web sehr schnell geknackt sein (durch ausprobieren von Wörtern). Es hängt immer davon ab, wie sicher das Passwort gewählt ist. Christian Kruse hat einen Feature-Artikel zur sicheren Passwort-Wahl geschrieben.

      Außerdem finde ich die htaccess-Eingabeaufforderung sehr plump. Es ist einfach ein Fenster, an dem man keine Designspezifische Veränderungen vornehmen kann.

      Es ist Sache der Webbrowser, wie diese Eingabeaufforderung aussieht.

      Bei <form>-PW-Schutz kann man das...

      Bei einem anderen Passwortschutz muss man sich aber auch um Sessions und den ganzen Krempel kümmern *und* man kann andere Resourcen als (bspw.) PHP nur sehr umständlich schützen.

      Ach ja: InternetCafés benutzen meist den IE,

      Leider ja. In einer Umgebung, wo es eigentlich auf Sicherheit ankommt, sollte so etwas eigentlich nicht sein.

      der sich (noch) keine Passwörter merken kann.

      Doch, der kann sich Passwörter merken. Zum Glück ist aber wenigstens das in den meisten Internet-Cafés ausgeschaltet.

      Für das - das muss man ihm lassen - ist der IE wirklich gut geeignet.

      Für was? Internet-Cafés? Gerade das wäre der letzte Ort, wo ich den einsetzen würde. Die einzige Möglichkeit, den IE sicher zu betreiben, ist, wenn der Benutzer genug Erfahrung zum Thema Sicherheit hat. Bei Internet-Cafés ist das alles andere, als gegeben.

      Viele Grüße,
      Christian

  2. Hallo Aqua,

    Frage 1)   Ist ein HTACCESS-Passwortschutz exakt gleich sicher
               bzw. sicherer als ein normaler Script-Interner gut
               gemachter Passwortschutz mit Sessions,
               oder gibt es irgendeine _Sicherheits-Gefahr_
               bei einem HTACCESS-Passwortschutz ??

    Sicherheit kommt nicht unbedingt immer nur auf die Methode an, sondern auch auf das gewählte Passwort.
    Die Personen können denke ich bei dir das Passwort frei wählen, und bei .htaccess-Dateien werden oftmals Bruteforce-Attacken durchgeführt - dadurch wird solch ein Schutz gerne geknackt (das heißt nicht dass dies bei Formularen und Sessions anders wäre).

    Frage 2)   Wenn man sich auf einem Webseite wo einloggen muss
               (bei einer <form> action) merken sich manche Browser
               wie Mozilla und Opera und andere  die Login-Daten,
               und tragen sie teilweise beim nächsten Login von
               selbst ein.

    Wie ist das bei einer HTACCESS-Passwort-Eingabeaufforderung?
               Merkt sich der Browser die Logindaten automatisch?

    Weil:  Dann wäre das eine sehr grosse Gefahr
                      in Internet-Cafe's  -  Die Kunden würden
                      sich dort einloggen und dann könnte dort
                      der / die nächsten User sich auch einloggen
                      im Internet-Cafe (wäre schrecklich!)

    Wie ist das?

    Normalerweise sollte in einem Internet-Cafe alles so eingestellt sein, dass keine Passwörter (weder in Formularen noch in .htaccess-Form) gespeichert werden können, in der Realität ist das aber oft anders.

    Bei Sessions mittels PHP hast du den Flexibilitätsvorteil, d.h. dass du nach 3 falschen Versuchen den Account z.B. für 15 Minuten deaktivieren kannst.

    .htaccess ist die oftmals benutzte und einfachste Form.

    Welche Methode du auch wählst - du musst deinen Kunden zeigen dass sie sichere Passwörter wählen müssen (min. 6 oder 8 Zeichen, keine Wörter, Zahlen, Buchstaben und am Besten noch Sonderzeichen).
    Ein solches Passwort ist, wenn es zudem noch verschlüsselt abgespeichert wird, schwer knackbar.

    Bis dann!

    Marc Reichelt || http://www.marcreichelt.de/

    --
    Linux is like a wigwam - no windows, no gates and an Apache inside!
    SELFCode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
    http://emmanuel.dammerer.at/selfcode.html
    1. Hallo Marc!

      Danke für Deine sehr hilfreiche Antwort!

      Könntest Du bitte näher auf die von Dir angesprochenen
      "Bruteforce-Attacken" eingehen?  Was versteht man darunter,
      und wie schützt man sich?

      Wenn wir davon ausgehen dass  ein Passwortschurtz über Sessions
      und normale Passwortabfrage bei einer <FORM> action hackbar ist,
      und auch  HTACCESS-Passwortschutzt hackbar ist,
      welche der beiden Varianten ist noch etwas sicherer?
      (wenn wir jedesmal ein sicheres Passwort haben)

      Danke!
      Aqua,

      1. Hallo!

        Könntest Du bitte näher auf die von Dir angesprochenen
        "Bruteforce-Attacken" eingehen?  Was versteht man darunter,
        und wie schützt man sich?

        Brut-Force klingt nicht nur etwas marzialisch, das ist es auch. Unter einer BF-Attacke versteht man das Knacken eines Passwortes durch ausprobieren sämtlicher Zeichenkombinationen, so lange bis man auf diese Weise das Passwort erhält. Bei Bankkarten müsste ich für eine BF-Attacke z.B. alle Zahlen von 0000 bis 9999 ausprobieren. Bei .htaccess kann man sich nicht dagegen schützen, mit Sessions wohl schon. Unix-Systeme z.B. schützen sich, dass nach jedem 3ten fehlgeschlagenen Login 5 Sekunden vergehen, bis der Login-Prompt wieder erscheint. Damit dauert eine BF-Attacke sehr lang.

        Wenn wir davon ausgehen dass ein Passwortschurtz über Sessions
        und normale Passwortabfrage bei einer <FORM> action hackbar ist,
        und auch  HTACCESS-Passwortschutzt hackbar ist,
        welche der beiden Varianten ist noch etwas sicherer?

        Äh, das verstehe ich nicht genau, denn (fast?) jedes Passwort ist knackbar. Der Nachteil bei Sessions ist, dass es sich halt um Sessions handelt, d.h. ohne Cookies oder als AOL-Nutzer (wechselnde IPs zwischen zwei HTTP-Anfragen) wird das ganze etwas problematisch. .htaccess hingegen ist auf HTTP-Ebene implementiert. Beide Methoden profitieren aber ungemein durch "sichere Passwörter", d.h. nicht zu schnell zu erraten und HTTPS-

        Danke!
        Aqua,

        Frohes Neues, Robert

      2. 你好 Aqua,

        http://aktuell.de.selfhtml.org/artikel/gedanken/passwort/index.htm

        再见,
         CK

        --
        Willst du die Freuden dieser Welt geniessen, so musst du auch ihr Leid erdulden.
        http://wwwtech.de/
  3. Hallo!

    Nabend!

    Ein Administrationsbereich diverser Tools (z.B. Gästebuch, Forum, Counter etc.)
    soll mit einem Passwort geschützt werden.

    Sehr sinnvoll. Foren-Hacking ist ja mittlerweile olympisch ;-)

    Grundsätzlich würde ich an Sessions denken.
    Jetzt drängt sich mir aber die Frage auf,  ob ich mit der
    wesentlich einfacheren Möglichkeit eines HTACCESS-Passwortschutzes
    das Ganze auch realisieren könnte.

    Auf jeden Fall. Meistens ist der einfache Weg der bessere, sichere.

    Frage 1)   Ist ein HTACCESS-Passwortschutz exakt gleich sicher
               bzw. sicherer als ein normaler Script-Interner gut
               gemachter Passwortschutz mit Sessions,
               oder gibt es irgendeine _Sicherheits-Gefahr_
               bei einem HTACCESS-Passwortschutz ??

    Prinzipiell ist - denke ich - .htaccess sicherer als irgendein PHP-Gehacke, weil diese Authentifizierung auf HTTP-Ebene stattfindet, da muss schon der Browser oder der Server nen Bug haben, aber ein PHP-Script kann beliebig viele Schwachstellen haben.

    Frage 2)   Wenn man sich auf einem Webseite wo einloggen muss
               (bei einer <form> action) merken sich manche Browser
               wie Mozilla und Opera und andere  die Login-Daten,
               und tragen sie teilweise beim nächsten Login von
               selbst ein.

    Deshalb kann man diesen schlauen Browser mitteilen, sie mögen sich bitte keine Formulardaten merken.

    Wie ist das bei einer HTACCESS-Passwort-Eingabeaufforderung?
               Merkt sich der Browser die Logindaten automatisch?

    Nein, er bietet es aber auch an.

    Weil:  Dann wäre das eine sehr grosse Gefahr
                      in Internet-Cafe's  -  Die Kunden würden
                      sich dort einloggen und dann könnte dort
                      der / die nächsten User sich auch einloggen
                      im Internet-Cafe (wäre schrecklich!)

    Internet-Cafes sind was das anbetrifft für .htaccess problematisch, wenn man nach seiner Sitzung den Browser nicht beendet/beenden kann, weil die .htaccess-Authentifizierung solange besteht, bis der Browser geschlossen wird (normalerweise). Und da es so etwas wie eine History gibt, kann man dann sehen, dass der User vor einem auf http://meine-bank.com/konto/ueberweisung war.

    Danke,
    Aqua

    Bitte, Robert