Einzelnen Beitrag anzeigen

Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#45

Re: [phpbb] Spam-Bots

  Alt 16. Dez 2006, 02:47
So, Daniel hat mir Mitte der Woche seine Lösung gegeben, wie er erfolgreich Spam-Bots davon abhält, sich in seinem PHPBB-Forum zu registrieren. Die Lösung scheint (bisher) sehr effektiv zu sein und ist zu dem sehr einfach.

Wie er schon geschrieben hat, enthält die Seite mit der Registrierung ein zusätzliches Feld, in dem eine Ziffer eingeben werden muss. Der Name des Feldes ist immer der gleiche und die Zahl ist auch immer die selbe. Das ist das einfache an der Lösung. Da die Spam-Bots aber nur für standard Login-Formulare programmiert sind und zu dem stroh doof, ist dies sehr wirkungsvoll. Für Menschliche Spam-Bots stellt dies natürlich keinen wirksamen Schutz dar, aber zur Zeit scheint es noch keine oder nicht sehr viele menschliche Spam-Bots zu geben, die für Geld Foren-Accounts erstellen, um dann in dem Forum Spam zu verbreiten. Bisher hat sich noch kein Spam-Bot bei mir wieder angemeldet und dem zu folge gab es auch noch keine neuen Fälle von Spam-Postings in meinem Forum.

Die Lösung im einzelnen:

Zitat von Daniel:
Hallo Michael,

ich hab's jetzt - es ist zum Glück recht simpel. Prinzip ist Folgendes: Das Eingabeformular wird um ein zusätzliches Feld erweitert, in welches zwingend eine feste Ziffer (die 7) eingegeben werden muss.

(1) Öffne Datei /includes/usercp_register.php
(2) Finde "if ($board_config['enable_confirm'] && $mode == 'register')"
(3) Füge _DAVOR_ ein:
Code:
   ////
   ////  Confirm-Number BEGIN
   ////
   $cNumber = (isset($HTTP_POST_VARS['confirm_number'])) ? intval( $HTTP_POST_VARS['confirm_number'] ) : 0;
   if ($cNumber != 7){
      $error = TRUE;
      $error_msg .= ( ( isset($error_msg) ) ? '
' : '' ) . $lang['Confirm_code_wrong'];
   }
   unset( $cNumber );
   ////
   ////  Confirm-Number END
   ////
(4) Öffne Datei "/templates/subSilver/profile_add_body.tpl"
(5) Finde ""
(6) Füge _DANACH_ ein:
Code:
   <tr>
     <td class="row1"><span class="gen">Gebe in nebenstehendes Feld bitte die Ziffer __sieben__ ein:</span>
<span class="gensmall">Dieses Feld wird ben&ouml;tigt, damit das automatische Erzeugen von Accounts zwecks Werbung erschwert wird.</span></td>
     <td class="row2"><input type="text" class="post" style="width: 200px" name="confirm_number" size="6" maxlength="6" value="" /></td>
   </tr>

Ist simpel, geht aber bei mir absolut zuverlässig. Ich bin auf Deine Erfahrungen gespannt.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat