Druckversion des Themas

Hier klicken um das Topic im Orginalformat anzusehen

HTML-Editor phase 5 Support _ HTML _ Passwortschutz Durch Referer

Geschrieben von: SteffenG 18.07.2004 - 7:52

Hallo zusammen,

ich habe zwei Seiten auf verschiedenen Servern, die beide durch .htaccess passwortgeschützt sind. Jetzt möchte ich erreichen, dass beim Wechsel von einer Seite auf die andere kein Passwort eingegeben werden muss.
Ich dachte mir, dass ich dass durch den Referer hinkriegen könnte. Geht das?

Gibt es andere Möglichkeiten? Ich denke, man kann das Passwort in der Adresszeile mitschicken, bin mir aber nicht sicher... Außerdem wäre das auch nicht sonderlich 'sicher'... wink.gif


schöne Grüße
Steffen

Geschrieben von: db 18.07.2004 - 8:44

ZITAT(SteffenG @ 18.07.2004 - 8:52)
Hallo zusammen,

ich habe zwei Seiten auf verschiedenen Servern, die beide durch .htaccess passwortgeschützt sind. Jetzt möchte ich erreichen, dass beim Wechsel von einer Seite auf die andere kein Passwort eingegeben werden muss.
Ich dachte mir, dass ich dass durch den Referer hinkriegen könnte. Geht das?

Gibt es andere Möglichkeiten? Ich denke, man kann das Passwort in der Adresszeile mitschicken, bin mir aber nicht sicher... Außerdem wäre das auch nicht sonderlich 'sicher'... wink.gif


schöne Grüße
Steffen

Durch den Referer geht es ganz sicher nicht!

In der Adresszeile geht es. Besondere Unsicherheiten kann ich da nicht erkennen.

http://USER%3a%50ASSWORD@server.de

Sicher, der Eintrag steht in der MRU, aber im Autofill des Browsers dürfte er auch stehen.

Geschrieben von: heinzelhund 18.07.2004 - 10:07

ZITAT(hdb @ 18.07.2004 - 9:44)
In der Adresszeile geht es. Besondere Unsicherheiten kann ich da nicht erkennen.

Sicher, der Eintrag steht in der MRU, aber im Autofill des Browsers dürfte er auch stehen.

Hallo,

das "Sicherheitsrisiko" liegt in öffentlichen und halböffentlichen Rechern im Büro oder Internetcafé. Da einige Browser ein so übermitteltes Passwort einfach mit der URI in er History speichern, kann jeder der kurz Zugriff auf den Rechner hat, selbiges auslesen (auch nachdem der Browser einmal geschlossen wurde oder der User sich ausgeloggt hat.). Der User müsste dann also immer nach einer Session auch die gesammelten Verläufe löschen.

Zum Säubern der MRU gibt es auch einige Tools, dass die jedoch überall zu Verfügung stehen oder vom Nutzer verwendet werden, ist eher unwahrscheinlich. Generell muss man davon ausgehen, dass bei mehreren Nutzern, die auf einen passwortgeschützten Bereich zugreifen dürfen, sich die überwiegende Anzahl verschiedener Sicherheitsrisiken nicht bewußt ist.

Ciao
Heinzelhund

Geschrieben von: db 18.07.2004 - 10:37

ZITAT(heinzelhund @ 18.07.2004 - 11:07)
ZITAT(hdb @ 18.07.2004 - 9:44)

In der Adresszeile geht es. Besondere Unsicherheiten kann ich da nicht erkennen.

Sicher, der Eintrag steht in der MRU, aber im Autofill des Browsers dürfte er auch stehen.

Hallo,

das "Sicherheitsrisiko" liegt in öffentlichen und halböffentlichen Rechern im Büro oder Internetcafé. Da einige Browser ein so übermitteltes Passwort einfach mit der URI in er History speichern, kann jeder der kurz Zugriff auf den Rechner hat, selbiges auslesen (auch nachdem der Browser einmal geschlossen wurde oder der User sich ausgeloggt hat.). Der User müsste dann also immer nach einer Session auch die gesammelten Verläufe löschen.

Zum Säubern der MRU gibt es auch einige Tools, dass die jedoch überall zu Verfügung stehen oder vom Nutzer verwendet werden, ist eher unwahrscheinlich. Generell muss man davon ausgehen, dass bei mehreren Nutzern, die auf einen passwortgeschützten Bereich zugreifen dürfen, sich die überwiegende Anzahl verschiedener Sicherheitsrisiken nicht bewußt ist.

Ciao
Heinzelhund

Na ja, man kann auch übertreiben.

Wer auf halböffentlichen Rechern im Büro oder Internetcafé Passworte für Webseiten eingibt, dem ist so oder so nicht zu helfen! Da reicht doch ein schlichter TCP/IP-Dump um an alle Daten zu gelangen.

Geschrieben von: heinzelhund 18.07.2004 - 11:03

ZITAT(hdb @ 18.07.2004 - 11:37)
Wer auf halböffentlichen Rechern im Büro oder Internetcafé Passworte für Webseiten eingibt, dem ist so oder so nicht zu helfen! Da reicht doch ein schlichter TCP/IP-Dump um an alle Daten zu gelangen.

Schaut man sich mal die mitgeloggten Passworte am Server an, versteht man schnell, weshalb Phisching-Seiten so erfolgreich sind. Dort geben die Leute klar erkennbare Passworte zu allem möglichen an.

Gib den Leuten eine Eingabezeile und sie geben dir alles, was du haben willst. laugh.gif

Ciao
Heinzelhund

Geschrieben von: db 18.07.2004 - 11:12

ZITAT(heinzelhund @ 18.07.2004 - 12:03)
ZITAT(hdb @ 18.07.2004 - 11:37)
Wer auf halböffentlichen Rechern im Büro oder Internetcafé Passworte für Webseiten eingibt, dem ist so oder so nicht zu helfen! Da reicht doch ein schlichter TCP/IP-Dump um an alle Daten zu gelangen.

Schaut man sich mal die mitgeloggten Passworte am Server an, versteht man schnell, weshalb Phisching-Seiten so erfolgreich sind. Dort geben die Leute klar erkennbare Passworte zu allem möglichen an.

Gib den Leuten eine Eingabezeile und sie geben dir alles, was du haben willst. laugh.gif

Ciao
Heinzelhund

Ja ja,

aber in diesem Fall bekäme der Browser diese Daten nur zu sehen, wenn der Steffen einen direkten Link in die Seiten einfügen würde.

Ich verwende solche Autologins problemlos!

<?
$lc = "Location: http://".$REMOTE_USER.":".$pw."@server.de";
{header("$lc"); exit; }
?>

Geschrieben von: heinzelhund 18.07.2004 - 11:28

ZITAT(hdb @ 18.07.2004 - 12:12)
<?
$lc = "Location: http://".$REMOTE_USER.":".$pw."@server.de";
{header("$lc"); exit; }
?>

O.k. bei einer PHP-Header-Weiterleitung hast du ja auch das Problem mit der History des Clients nicht, da der ja keine "vollständige" Seite zum Cachen erhält. Das Problem entstünde ja erst, wenn er über eine einfache echo/print-Anweisung den Link direkt als HTML-Quelltext ausgäbe.

Ciao
Heinzelhund

Geschrieben von: SteffenG 18.07.2004 - 14:39

Hallo Hans-Dieter,

könntest du das PHP noch ein wenig erklären? Wo setzt man die Variablen?


schöne Grüße
Steffen

Geschrieben von: db 18.07.2004 - 15:02

ZITAT(SteffenG @ 18.07.2004 - 15:39)
Hallo Hans-Dieter,

könntest du das PHP noch ein wenig erklären? Wo setzt man die Variablen?


schöne Grüße
Steffen

$REMOTE_USER kommt aus dem ENV, damit kannst Du das Passwort aus der Datei lesen.

Lass mal auf dem Server in einem .htaccess geschützen Bereich folgendes script laufen. Dann siehst Du, ob PHP als CGI ausgeführt wird. In dem Fall kommst Du nicht an $_Server[$PHP_AUTH_PW]. Dann machst Du es über die Passworddatei.

<?php

@session_start();

function ShowHTTPVars ($array)
{ if (count($array))
{ while (list($key, $val) = each($array))
{ echo "<tr><td valign=\"top\">" . gettype($val) . "</td>";
if (is_array($val))
{ echo "<td>";
while (list($key2, $val2) = each($val))
echo "$key [$key2] = $val2<br>\n";
echo "</td>";
}
else
echo "<td>$key = $val</td>\n";
echo "</tr>";
}
}
}
?>
<hr noshade>
<br>
<table border="1" cellspacing="0" cellpadding="2">
<tr>
<td align="left" valign="top" width="50%">
<table border="1" cellspacing="0" cellpadding="2" width="100%">
<tr><th colspan=2>Values submitted via POST method:</th></tr>
<tr><th>Type</th><th align="left">Variable = Value</th></tr>
<?php ShowHTTPVars ($HTTP_POST_VARS) ?>
</table>
</td>
<td align="left" valign="top" width="50%">
<table border="1" cellspacing="0" cellpadding="2" width="100%">
<tr><th colspan=2>Values submitted via GET method:</th></tr>
<tr><th>Type</th><th align="left">Variable = Value</th></tr>
<?php ShowHTTPVars ($HTTP_GET_VARS) ?>
</table>
</td>
</tr>
<tr>
<td align="left" valign="top" colspan="2">
<table border="1" cellspacing="0" cellpadding="2">
<tr><th colspan=2>Real available vars on this page now:</th></tr>
<tr><th>Type</th><th align="left">Variable = Value</th></tr>
<?php // ShowHTTPVars ($GLOBALS) funzt nicht!
while (list($key, $val) = each($GLOBALS))
{ echo "<tr><td valign=\"top\">" . gettype($val) . "</td>";
if (is_array($val))
{ echo "<td>";
while (list($key2, $val2) = each($val))
echo "$key [$key2] = $val2<br>\n";
echo "</td>";
}
else
echo "<td>$key = $val</td>\n";
echo "</tr>";
}
?>
</table>
</td>
</tr>
</table>
<?
phpinfo();
?>

Unterstützt von Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)