Archivlink: javarea.de Forum > JavaScript > Passwort abfrage
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > Passwort abfrage
Pages: [1]
| geschrieben von Marek23 am 13.07.2005 - 19:21 |
Hallo zusammen, leider finde ich keinen fehler in meinem Quelltext warum geht das nicht ???????
Das Passwort ist marek23 aber die 3. Seite geht nicht auf warum nicht ??
http://www.javarea.de/index.php3?op....amp;id=299
1. Seite = http://www.bock.e-con.pl/test.htm
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<title>test</title>
<meta name="Microsoft Theme" content="studio 1011, default">
</head>
<body>
Seite 1, aufrufende Seite
<SCRIPT LANGUAGE="javascript">
<!---
var new_window = null;
function password() {
new_window = window.open('IhreAbfrage.htm', 'pass', 'width=400,height=150,resizable=1');
}
// -->
</SCRIPT>
<A HREF="javascript assword()">LinkBeschreibung</A>
</body>
</html>
2. Seite
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<title>IhreAbfrage</title>
<!--mstheme--><link rel="stylesheet" type="text/css" href="_themes/studio/stud1011-1250.css"><meta name="Microsoft Theme" content="studio 1011, default">
</head>
<body>
Seite 2 - abfrage Seite (i.B. IhreAbfrage.htm)
<script language="JavaScript">
<!--
function goForit() {
var location;
var password;
password=this.document.testform.inputbox.value
location=password + "marek23"
fetch(location)
theKeeper=window.close()
}
function fetch(location) {
var root;
if (opener.closed) {root=window.open('','passme','toolbar=yes,location=yes,status=yes,menubar=yes');
root.location.href = location;
} else {
opener.location.href = location;
}
}
// -->
</SCRIPT>
<FORM NAME="testform">
<INPUT TYPE="text" NAME="inputbox" VALUE="" size=20>
<INPUT TYPE="button" NAME="button" Value="Absenden" onClick="goForit(this.form)"></FORM>
</body>
</html>
3.Seite
Seite 3 - gesicherte Seite (i.B. geheime.htm)
hier definieren sie ihre zu schützende Seite
|
| geschrieben von Klaush am 13.07.2005 - 19:30 |
Weil du keine *.htm Datei angegben hast!
Hier das Original:
location=password + ".htm"
hier deine Varianten:
location=password + "marek23"
Übernehme also das Original und schon geht es. |
| geschrieben von Matneu am 14.07.2005 - 00:21 |
Mal als Tip, nicht dass hier falsche Vorstellungen geweckt werden: Eine Sicherung per Javascript-Passwort ist alles andere als sicher. Für jeden, der ein klein wenig Quelltext lesen (und verstehen) kann ist diese Passwortabfrage lächerlich, 2 Klicks und sie ist umgangen. Also absolut nichts für sensible Daten!
So far...
Matthias |
| geschrieben von Klaush am 14.07.2005 - 18:32 |
@Matneu,
in einem hast du recht, JS ist nicht wirklich sicher, dennoch gibt es Scripte die erst einmal umgangen werden müssen.
Allein das kleine dumme Scriptchen hier, ist mit 2 Klicks nicht zu umgehen, du kannst es gerne probieren!
Sag Bescheid wenn du es geschafft hast  .
http://javarea.de/forum/tmp/pwabfrage/index.html |
| geschrieben von Matneu am 14.07.2005 - 19:22 |
| Zitat | | | Original geschrieben von Klaush am 14.07.2005 - 18:32
Sag Bescheid wenn du es geaschafft hast  . |
Ok, das Beispiel ist ein nicht so einfach "knackbares". Allerdings frage ich mich, wofür Du in dem Fall überhaupt ein Passwort brauchst. Und wenn ein falsches "Passwort" eingegeben wurde und ein 404er erscheint ist das auch nicht wirklich komfortabel. Security through Obscurity halt 
So far...
Matthias
P.S.: Ich bleibe dran  |
| geschrieben von weisnix am 14.07.2005 - 19:49 |
Jo, zwei Klicks braucht man in der Tat.
Ich würde allerdings auch eine bessere Fehlerseite nehmen.
Beispiel:
| HTML-Quelltext | 1:
2:
| else
opener.location.href = "leider-kein-Zugang.html"; |
aber ansonsten ziemlich sicher. Oder kennt einer die Seite?  |
| geschrieben von Matneu am 14.07.2005 - 21:08 |
| Zitat | | | Original geschrieben von weisnix am 14.07.2005 - 19:49
aber ansonsten ziemlich sicher. Oder kennt einer die Seite?
|
Teste gerade... Allerdings dauert "das Prüfen" auf Existenz sehr lange. Soviel kann ich aber schon sagen: Die Seite ist nicht zwischen a.html und dqc.html. Weitere "Tests" dauern mir jetzt zu lange. Doch mit C statt PHP und ein "klein" wenig mehr Zeit wäre es sicherlich ohne Probleme möglich, die richtige Seite zu finden. Allerdings sollte der Admin dann keinen Blick in die MB-grossen Log-Files werfen :P
Ich habe in knapp 5 Minuten gut 2'500 Dateien durchprobiert. Wenn man das ganze mit einem Wörterbuch macht kommt man u. U. wesentlich schneller auf die richtige Datei.
Was ich sagen wollte: Es ist kein wirksamer SCHUTZ, es ist lediglich eine Verschleierung. Doch sobald man die Datei kennt hat man keinen Schutz mehr.
So far...
Matthias
P.S.: Sorry an den Admin. Ich hoffe, Eure Log-Files werden nicht täglich kontrolliert  |
| geschrieben von wiewut am 24.07.2005 - 17:50 |
Servus.
| Zitat | | | Original geschrieben von weisnix am 14.07.2005 - 19:49
Ich würde allerdings auch eine bessere Fehlerseite nehmen.
Beispiel:
| HTML-Quelltext | 1:
2:
| else
opener.location.href = "leider-kein-Zugang.html"; |
|
Klappt irgendwie nicht. Dann akzeptiert das Script auch die "richtigen" Seiten nicht mehr.
|
| geschrieben von Soidberg am 29.07.2005 - 17:32 |
Servus,
@ Klaush
Ist das das gleiche Skript wie das was auch hier zu finden ist?
www.javarea.de/index.php3?opencat=J....amp;id=299
@ Matneu
| Zitat | | | Und wenn ein falsches "Passwort" eingegeben wurde und ein 404er erscheint ist das auch nicht wirklich komfortabel. Security through Obscurity halt |
Was ist an einer 404 Meldung verkehrt? Kann ein Angreifer daher das Passswort ableiten? 
Gruß Soidberg |
| geschrieben von Matneu am 29.07.2005 - 21:00 |
| Zitat | | | Original geschrieben von Soidberg am 29.07.2005 - 17:32
@ Matneu
Was ist an einer 404 Meldung verkehrt? Kann ein Angreifer daher das Passswort ableiten?  |
Das nicht, aber er kann umgekehrt herangehen: 404 bedeutet, Passwort ist falsch. Nun probiere ich alle Passwörter aus (da es dagegen keinen Schutz gibt, es dürfte lediglich in den Log-Files verdächtig werden, doch - Hand auf's Herz - wer schaut schon täglich oder sogar stündlich in seine Log-Files? Ich zumindest nicht.
Ich habe mir - wie oben schon geschrieben - ein Tool gebaut, dass alle möglichen Wortkombinationen ausprobiert. Leider dauern diese Abfragen doch einiges an Zeit (war auf die Schnelle in PHP geschrieben, mit C* geht es sicherlich noch schneller), doch wer an die Daten ran will und/oder einen 24/7-Rechner laufen hat der scheut diese Mühe auch nicht.
Fazit: Ich verstecke die Daten nur, ich sichere sie nicht wirklich.
Der Vorteil einer serverseitigen sprache wäre die Sperrung nach x falschen Versuchen oder - in meinem Fall - die quadratische Erhöhung der Wartezeit pro Versuch. Erster Versuch: 0 Sekunden, zweiter Versuch: 1 Sekunde, 2, 4, 8, 16, ... . Da das auf dem Server abläuft muss man schon wirklich cracken können, um dahinter zu kommen. Fazit: Es ist wesentlich wirksamer gegen Brute-Force- und Wörterbuchattacken
So far...
Matthias |
| geschrieben von Micha am 30.07.2005 - 11:44 |
Für mich ist das keine Passwortabfrage.
Wo liegt der Sinn in diesem Script? Genauso gut könnte der User gleich in der Adresszeile die korrekte URI eingeben und wäre in dem "MemberBereich". Da es sich somit um _keinen_ Passwortgeschütztenbereich handelt, ist es sinnfrei, hier was "knacken" zu wollen.
Micha |
|