Anmeldung sperren für Hackversuche

Begonnen von heikoandre, 29 August 2002, 21:11:23

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

heikoandre

Hallo allen,

habe Heute mal festgestellt das jemand andauernd versucht hat sich auf meiner Seite einzuloggen. Keine Ahnung ob der User nur sein PW vergesen hat oder dies ein Hackversuch eines Amateurs :D  war.
Gibt es eine Möglichkeit den Login so einzustellen das nach mehrmaligen Versuch mit falschen PW oder Benutzernamen eine Fehlermeldung erscheint und weitere versuche mit der selben IP unterbunden werden?

Danke für eure Hinweise
http://www.uer-online.de

CMS-Version: PragmaMx 0.1.11
 

JensWagenknecht

Ja,
gib ihm im Code eine Variable mit und laß diese hochzählen.
Also, mit der URL immer die variable+1 mitgeben.

Jens

heikoandre

Sorry,
hab ich jetzt nicht verstanden.
variable+1 mitsenden OK aber wo bzw. wie soll diese dann verarbeitet werden?

http://www.uer-online.de

CMS-Version: PragmaMx 0.1.11
 

JensWagenknecht

Ich habe in den Code nicht rein geschaut.

Aber ganz die IP speeren ist quatsch. Da ich ja sosfort die IP wechseln kann.

Aber schwerer machen kannst Du es ihm.

---------------- so in etwa ----------------------------------------------

Im Block block-Login.php machst Du einfach ein unsichbares Textfeld rein:

$content .= "<input type=\"hidden\" name=\"versuch\" value=\"$versuch\">";

Der Wert von $versuch ist natürlich erst mal NULL ( nicht 0 ).

Die Prüfung müßte in YourAccount ablaufen - so zumindest bei der vorhergehende VPK.

In YourAccount müßte noch dies:
 case "login":
   login($uname, $pass);
   break;

In das:

case "login":
   login($uname, $pass, $versuch);
   break;

geändert werden.

In der Fuktion "login" müßte Zeile:
function login($uname, $pass) {

in:

function login($uname, $pass, $versuch=0) {

geändert werden. Mit $versuch=0 wird bei keiner wertübergabe (ist ja beim ersten mal der Fall) der Wert mit der Zahl 0 belegt.

Und nun noch ein
$versuch=(int)$versuch; // sicherstellen das eine Zahl eine Zahl ist
$versuch=$versuch + 1;  //hochzählen um 1
If ($versuch = 3) { exit;}  // wen ab dem 4. Versuch gar nicht erst mit der Prüfung anfangen
Ich würde keine Medlung ausgeben lassen. So wird nicht gelich bemerkt was los ist.

Das hier noch von:
Header("Location: modules.php?name=Your_Account&op=userinfo&bypass=1&uname=$uname");

in:
Header("Location: modules.php?name=Your_Account&op=userinfo&bypass=1&uname=$uname&versuch=$versuch");

ändern

----------------- so in etwa Ende -------------------------------

Das "versuch" Feld muß natürlich auch beim Login von YourAccount rein.


So, und hier bei der Prüfung könnte eine Function rein welche die IP in eine tabelle mit gespeerten IP's steckt. Un die kann auch glech abgerufen und ausgewertet werden.
Wen der User also nur versucht das Homeverzeichnis des Forum aufzurufen - gleich umlenken. Aber! die tabelle muß auch beim Aufruf dieser Login Funktion bereinigt werden - alle IP's nach einer bestimmten Zeit wieder löschen.

Ich hoffe Dir Anregung genug gegeben zu haben.

dein grund dafür ist natürlich logisch. Die traffic nur durch solche Versuch ist sehr hoch.

Jens


heikoandre

Danke Jens,

ich glaube damit kann ich jetzt was anfangen und werde es gleich am WE mal Probieren.
Das die IP zu sperren quatsch ist das ist mir schon klar aber die sollte ja nur ab einen z.B. 5 Versuch gesperrt werden und dann auch nur für kurze Zeit. Das macht es dem "Hacker" zwar nicht schwerer aber kostet ihm Zeit :)  .

Wäre mal eine Überlegung wert diese Funktion gleich standartmäßig in Nuke zu integrieren.

mfg Heiko
http://www.uer-online.de

CMS-Version: PragmaMx 0.1.11