.htaccess-Verschlüsselung
Thorsten Steffen
- webserver
Hi,
weiß einer von euch, wie das Paßwort übertragen wird (verschlüsselt ?), daß ich eingebe, wenn ich durch eine .htaccess-Datei dazu aufgefordert werde ?
Gruß
Thorsten
Hi Thorsten
weiß einer von euch, wie das Paßwort übertragen wird (verschlüsselt ?), daß ich eingebe, wenn ich durch eine .htaccess-Datei dazu aufgefordert werde ?
Also bei mir (netsi 4.6/linux - apache) wirds verschlüsselt übertragen.. wahrscheinlich mit crypt ();
wies unter win aussieht weiss ich nicht...
bis dann
gero
Hallo gero,
Also bei mir (netsi 4.6/linux - apache) wirds verschlüsselt übertragen.. wahrscheinlich mit crypt ();
wie hast du dir die Übertragung denn angeguckt? Oder meinst du nur, wie das Paßwort in der Paßwortdatei steht?
CYa
GONZO
hi Gonzo
wie hast du dir die Übertragung denn angeguckt? Oder meinst du nur, wie das Paßwort in der Paßwortdatei steht?
Nene, ich habs mit einem sniffer (ethereal) begutachtet, hier das ergebnis im Header:
Authorization: Basic MTIzojEyMw==
das war mal "123"
=)
bis dann
gero
Hi,
weiß einer von euch, wie das Paßwort übertragen wird (verschlüsselt ?), daß ich eingebe, wenn ich durch eine .htaccess-Datei dazu aufgefordert werde ?Gruß
Thorsten
neuere browser können das mit MD5-verschlüsselung. da wird dann nur daqs ergebnis des MD5-agorithmus‚ übertragen, woraus das paßwort angeblich nicht rekonstruierbar sein soll.
das erfordert eine serverseitige einstellung.
links für apache:
http://axc.de/server/mod/
http://axc.de/server/mod/mod_digest.html
kehrseite ist daß ältere browser nicht drankommen und daß das paßwort, welches NICHT über‚s netz übertragen werden muß auf dem server irgendwo im klartext gespeichert ist.
florian
das erfordert eine serverseitige einstellung.
links für apache:
http://axc.de/server/mod/mod_digest.html
Vielen Dank, Florian!
Mein .htaccess-Artikel ist in dieser Hinsicht also veraltet (ich kannte noch nichts Neueres als "Basic") - ich werde mir das mal näher ansehen ...
kehrseite ist daß ältere browser nicht drankommen
... und testen, welche Browser das schon können.
und daß das Paßwort, welches NICHT über‚s Netz übertragen werden muß auf dem Server irgendwo im klartext gespeichert ist.
Irgendwas wird aber über das Netz übertragen werden müssen - was genau?
Ganz nebenbei habe ich sogar etwas noch Moderneres gefunden:
Das Modul ist quasi der Nachfolger von mod_digest, nagelneu in Apache 1.3.8 (bzw. 1.3.9, da 1.3.8 nie ausgeliefert wurde) und verwendet ebenfalls MD5-Verschlüsselung für die Übertragung (der Passworte?).
Es gilt noch als "experimentell" und "wenig getestet", bietet aber mehr Möglichkeiten, die Authentifikation zu konfigurieren (neue Anweisungen).
Vielen Dank, Florian!
ich werde mir das mal näher ansehen ...
Etwas später ... aaaaalso:
Ich habe mir einen Apache 1.3.6 mit hineincompiliertem "mod_digest" gebaut (das ist *nicht* automatisch drin, obwohl das Modul im Verzeichnis "modules/standard" liegt - also "configure --enable-module=digest" und den Quelltext neu übersetzen).
Dieser Apache kriegt die "alte" Methode der Authentifikation weiterhin geregelt.
(Ich habe mir ein Demo-Verzeichnis mit den Dateien aus http://www.teamone.de/selfaktuell/schroepl01.htm gebaut, und das funktioniert.)
Unter Verwendung der neuen Methode habe ich allerdings mit *keinem* Browser eine korrekte Authentifizierung zustandegebracht.
Bei MSIE 4.0 passiert seltsamerweise überhaupt nichts (obwohl der Dialog im "Basic"-Moduls tadellos funktioniert). Der Zugriff wird sofort als unzulässig zurückgewiesen. (Apache schreibt in der Fehlermeldung sogar: "... or your browser doesn't understand how to supply the credentials required" - offenbar fragt Apache, ob MSIE "Digest" kann, und MSIE antwortet "nein").
Bei Netscape 3.0 und Netscape 4.5 bekomme ich immerhin einen Authentifizierungsdialog im Client und einen Log-Eintrag auf dem Server:
"[Fri Oct 1 16:35:25 1999] [error] client used wrong authentication scheme: Basic for /~ms/digest/". Was ich interpretiere als "der Browser kann die Authentifizierungsmethode Digest doch noch nicht, obwohl er es möglicherweise behauptet hat".
Neuere Browser habe ich leider nicht zur Hand.
Die von mir verwendeten Dateien:
#-------------------------
.htaccess: (nur Zeile 1 und 3 geändert gegenüber dem Artikel)
AuthType Digest
AuthName Zugriffstest-Verzeichnis
AuthDigestFile /home/ms/httpzugriff/digest_file
order deny,allow
deny from all
satisfy all
allow from 153.46.90.
require group entwickler
require user chef sekretae
#-------------------------
digest_file: (erstellt mit dem mitgelieferten Hilfsprogramm "htdigest")
chef:Zugriffstest-Verzeichnis:fe2f19f99e8c2ab0b7b11c843245f717
#-------------------------
Das Passwort (hier auch "chef") liegt also keineswegs unverschlüsselt auf dem Server!
Ich vermute, es wird einfach auf dem Client MD5-verschlüsselt und auf dem Server nur noch verglichen.
Aus dem Apache-Handbuch:
Using Digest Authentication
Using MD5 Digest authentication is very simple.
Simply set up authentication normally.
However, use "AuthType Digest" and
"AuthDigestFile" instead of the normal
"AuthType Basic" and "AuthUserFile".
Everything else should remain the same.
Das Einbinden des digest-Moduls hat einen erkennbaren Effekt: Derselbe Test mit einem Apache 1.3.9 ohne mod_digest führt beim Zugriff zu einem "internal server error", weil das neue Kommando "AuthDigestFile" in der .htaccess-Datei nicht verarbeitet werden kann. (Das Übersetzen hat also geklappt.)
MD5 authentication provides a more secure
password system, but only works with supporting
browsers. As of this writing (July 1996), the
majority of browsers do not support digest
authentication. Therefore, we do not recommend
using this feature on a large Internet site.
However, for personal and intranet use, where
browser users can be controlled, it is ideal.
Weiß jemand an dieser Stelle irgendwie weiter?
Oder müssen wir auch drei Jahre nach der Erfindung dieses Mechanismus auf Browser warten, die es unterstützen? Gegen Sniffer-Attacken wäre es ja wirklich eine Verbesserung ...
und einen Log-Eintrag auf dem Server:
"[Fri Oct 1 16:35:25 1999] [error] client used wrong authentication scheme: Basic for /~ms/digest/". Was ich interpretiere als "der Browser kann die Authentifizierungsmethode Digest doch noch nicht, obwohl er es möglicherweise behauptet hat".
Neuere Browser habe ich leider nicht zur Hand.
Jetzt habe ich (Netscape 4.7):
[Fri Oct 1 18:58:42 1999] [error] client used wrong authentication scheme: Basic for /~ms/digest/
Schluchz ...
und einen Log-Eintrag auf dem Server:
"[Fri Oct 1 16:35:25 1999] [error] client used wrong authentication scheme: Basic for /~ms/digest/". Was ich interpretiere als "der Browser kann die Authentifizierungsmethode Digest doch noch nicht, obwohl er es möglicherweise behauptet hat".
Neuere Browser habe ich leider nicht zur Hand.
Jetzt habe ich (Netscape 4.7):
[Fri Oct 1 18:58:42 1999] [error] client used wrong authentication scheme: Basic for /~ms/digest/
Schluchz ...
da fange ich doch glatt an mir gedanken zu machen was es soll irgendwelche /()&&==&/&/=&/(=/(= -Software auf den server zu basteln wenn die browser noch nicht trocken hinter den ohren sind :-)
ich werde das demnächst mal auf einem lokalen server mal genau ansehen, dann kann ich mehr dazu sagen .....
gruß
florian
das erfordert eine serverseitige einstellung.
links für apache:
http://axc.de/server/mod/mod_digest.html
Vielen Dank, Florian!
Mein .htaccess-Artikel ist in dieser Hinsicht also veraltet (ich kannte noch nichts Neueres als "Basic") - ich werde mir das mal näher ansehen ...
kehrseite ist daß ältere browser nicht drankommen
... und testen, welche Browser das schon können.
und daß das Paßwort, welches NICHT über‚s Netz übertragen werden muß auf dem Server irgendwo im klartext gespeichert ist.
Irgendwas wird aber über das Netz übertragen werden müssen - was genau?
das paßwort wird client-seitig durch den MD5-algotithmus gejagt und das ergebnis davon verschickt.
derselbe vorgang wird auf dem server durchgeführt. der server vergleicht dann die beiden werte und gibt bei übereinstimmung frei.
vorteil soll sein, daß das passw. durch MD5 derart verstümmelt ist das es theoretisch nicht zurückzuberechnen ist, und das von crypt bekannte spielchen mit dem vielen vergleichen wird mehrere vermeintlich positive ergebnisse liefern.
Ganz nebenbei habe ich sogar etwas noch Moderneres gefunden:
http://www.apache.org/docs/mod/mod_auth_digest.htmll
Das Modul ist quasi der Nachfolger von mod_digest, nagelneu in Apache 1.3.8 (bzw. 1.3.9, da 1.3.8 nie ausgeliefert wurde) und verwendet ebenfalls MD5-Verschlüsselung für die Übertragung (der Passworte?).
Es gilt noch als "experimentell" und "wenig getestet", bietet aber mehr Möglichkeiten, die Authentifikation zu konfigurieren (neue Anweisungen).
ist mir bekann, aber ich habe trotzdem den link auf das "alte" gesetzt weil lt. apacheweek (ausgabe dieser woche) das modul ZU_VIELE_ERNSTHAFTE bugs hat um eingesetzt werden zu können.
(einer der 2 gründe warum ich den bereits installierten 1.3.9 wieder runtergeschmissen hab‚vom server. es wurde auch bei der content-negotiation gepfuscht)
die arbeit an den .htaccess-FAQ‚s können wir uns gerne teilen, ich arbeite selbst an einer solchen incl. CGI-tool zum erstellen (für axc.de). (email?)
soweit; schöne grüße aus dem sonnigen süden,
florian