Hier mal mein kleiner Denkansatz...

Sicherheit des Webservers, der Server und rund um phpBB
Antworten
schmidtedv
Beiträge: 607
Registriert: So 13.Feb, 2005 10:46
Wohnort: St. Blasien (seit 01.06)
Kontaktdaten:

Hier mal mein kleiner Denkansatz...

Beitrag von schmidtedv »

Ich habe ein Kundenforum, wo die Benutzer sich einfach anmelden können...naja, und da kommt halt viel "Mist" zustande...da hab ich ein wenig mit dem MOD "Webside Signature Remove 1.1.11 MOD" rumgespielt und folgendes erstellt:

Alle extra Profilangaben wie Homepage, Beruf, Wohnort , Interessen und Signatur (mehr gibt's bei mir halt nicht) werden bei Registrierung erstmal ausgeblendet und statt dessen ein Hinweistext angegeben, das nach erfolgreicher Registrierung mehr Angaben gemacht werden können. Sollte nun ein "Bot" sich dennoch mittels versteckter Eingaben hier anmelden wollen wird er geblockt und zudem die IP-Adresse gebannt...nett, oder? :-)

Hier mal ein paar code-Auszüge aus der usercp_register.php:

Der Ban-Block:

Code: Alles auswählen

if (($mode == 'register') && (($signature != '')||($website != '')||($location != '')||($occupation != '')||($interests != ''))) {
        $sql = "INSERT INTO ".BANLIST_TABLE." (`ban_ip`) VALUES ('".$userdata['session_ip']."')";
        if (!$db->sql_query($sql)) {
            message_die(GENERAL_ERROR, "Couldn't insert ban_ip info into database", "", __LINE__, __FILE__, $sql);
        }
        session_end($userdata['session_id'], $userdata['user_id']);
        message_die(GENERAL_ERROR, 'Protected by Schmidt EDV');
    }
Die erweiterte switch-Zeile (bei mir sind Signaturen zudem im ACP abschaltbar und noch ein paar andere extras mit Homepage und so drin...):

Code: Alles auswählen

if ($mode !== 'register') {
        if ($userdata['user_edit_profile']) {
            $template->assign_block_vars('switch_profile_edit_allowed', array());
        } else {
            $template->assign_block_vars('switch_profile_edit_disallowed', array());
        }
    } else {
        $template->assign_block_vars('switch_profile_register', array());
    }
Frage (es scheint so perfekt zu funktionieren) hier wärenur, ob ich ($mode !== 'register') so richtig (also als code) geschrieben habe...hab so eine zeile sonst in der Datei nicht entdeckt, und ich bin halt nicht sooooo php-bewandert, ob das die korrekte "mode-verneinung" darstellt...

Wenn's auf Interesse stößt, kann ich's hier auch ausführlicher beschreiben :-)
Rettet den Wald, esst mehr Specht!

Forum [ sofern im Beitrag darauf verwiesen :-) ]
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Das wäre zunächst korrekt, aber es könnte unter wiedrigsten Umständen dazu kommen, daß "mode" nicht eben dem Type "register" entspricht.
Ein

Code: Alles auswählen

$mode != 'register'
reicht also hier demnach aus.
Ansonsten ist es okay.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
schmidtedv
Beiträge: 607
Registriert: So 13.Feb, 2005 10:46
Wohnort: St. Blasien (seit 01.06)
Kontaktdaten:

Beitrag von schmidtedv »

d.h. also ein gleichheitszeichen aus der zeile wegnehmen?

PS: Hab nun noch, da ja in ausnahmefällen dynamische IP'ssich überschneiden könneund somit mit dem IP-Bann auch mal ein regulärer Benutzer gebannt werden könnte noch eine Option mit Erklärung ins ACP /Board-Konfig eingebaut,wodie IP-Bannun zusätzlih aktiviert/deaktiviert werden kann....möp, komplett....bis auf die Frage zu deiner Code-Anmerkung, Oxpus :-)


...oh mann, je später der abend, desto abstruser die rechtschreibung..naja, ich lass den post mal so :-)
Zuletzt geändert von schmidtedv am Do 05.Okt, 2006 01:04, insgesamt 1-mal geändert.
Rettet den Wald, esst mehr Specht!

Forum [ sofern im Beitrag darauf verwiesen :-) ]
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Zur Erklärung schau mal hier rein: http://www.oxpus.de/viewtopic.php?t=2645
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
schmidtedv
Beiträge: 607
Registriert: So 13.Feb, 2005 10:46
Wohnort: St. Blasien (seit 01.06)
Kontaktdaten:

Beitrag von schmidtedv »

...döngel!

Anbei mal 2 Beispielansichten zur Erläuterung
Dateianhänge
profil.JPG
acp.JPG
Zuletzt geändert von schmidtedv am Do 05.Okt, 2006 11:00, insgesamt 1-mal geändert.
Rettet den Wald, esst mehr Specht!

Forum [ sofern im Beitrag darauf verwiesen :-) ]
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Nicht übel. Garnicht mal übel...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
tom10
Beiträge: 1106
Registriert: Sa 29.Jan, 2005 14:58
Kontaktdaten:

Beitrag von tom10 »

Kannst Du daraus vielleicht ein Mod oder Addon machen ? Da hätten dann alle was davon und auch ich würde das dann gern bei mir verbauen....
Der Versuch was neues zu versuchen....
http://simson-le.de.vu
schmidtedv
Beiträge: 607
Registriert: So 13.Feb, 2005 10:46
Wohnort: St. Blasien (seit 01.06)
Kontaktdaten:

Beitrag von schmidtedv »

@tom10: ich werd' schauen...die anpassungen sind nicht überwiegend, also sollte ich's für n vanilla hier "mod"-artig einstellen können...aber bitte erst am Wochenende...bis dahin bin ich noch am "aufräumen"
Rettet den Wald, esst mehr Specht!

Forum [ sofern im Beitrag darauf verwiesen :-) ]
Benutzeravatar
tom10
Beiträge: 1106
Registriert: Sa 29.Jan, 2005 14:58
Kontaktdaten:

Beitrag von tom10 »

Na sicher doch, lass dir Zeit bin am WE auch schon verplant.
Der Versuch was neues zu versuchen....
http://simson-le.de.vu
Benutzeravatar
smarty
Beiträge: 128
Registriert: So 17.Jul, 2005 15:13

Beitrag von smarty »

ui, da habsch auch Interesse. Auf einem Board hatten sich letzte Woche über 20 Bots angemeldet *grummel*
schmidtedv
Beiträge: 607
Registriert: So 13.Feb, 2005 10:46
Wohnort: St. Blasien (seit 01.06)
Kontaktdaten:

Beitrag von schmidtedv »

...wird wohl mitte der woche werden...sorry

EDIT: Noch nicht genug Zeit...ich muss das Ding umschreiben für euch....meine Version ist so nicht einfach nutzbar, da ich weitere Anpassungen damit kombiniert habe...
Zuletzt geändert von schmidtedv am Di 10.Okt, 2006 21:18, insgesamt 1-mal geändert.
Rettet den Wald, esst mehr Specht!

Forum [ sofern im Beitrag darauf verwiesen :-) ]
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Habe ich das so richtig verstanden?
- Es werden während der Registrierung nicht alle Felder angezeigt.
- Nach der Registrierung kann man im Profil alle Felder sehen.
- Bots, die versuchen über die URL unsichtbare Felder zu füllen, werden abgewiesen.

?
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ja.
Und das wäre auch nicht schwer umzusetzen.
Lediglich in einem "Vergleichs-Array" alle Felder hinterlegen, die zur Registrierung verwendet werden dürfen, dann mit

Code: Alles auswählen

foreach($HTTP_POST_VARS as $key => $value)
die übergebenen Daten prüfen und wenn ein $key gefunden wird, der (wird ja nur definiert, wenn er auch einen Wert $value enthält) nicht im "Vergleichs-Array" enthalten ist, das Script anhalten.
Ein einfaches exit; würde reichen, spart SQL_Queries und Traffic, alles andere wäre verständlicher für die "echten" Registrierungen, bzw. würde als Log dienen können...

Also mal so groß umrissen...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Antworten