#1 1. März 2009 Zuletzt von einem Moderator bearbeitet: 15. April 2017 Website vor Spambots schützen Hi, in diesem Tutorial möchte ich euch einige meiner Tricks und Tipps zeigen, die dabei helfen, eure Website von Spambots sauber zu halten. Also los geht's. 1. Bots via .htaccess blocken (Apache) Vorwort Eine sehr effektive Methode, um bekannte Spambots zu blocken. Falls ihr noch nicht mit .htaccess Dateien vertraut seit, solltet ihr euch das Apache Tutorial zu .htaccess Dateien und die mod_rewrite Dokumentation durchlesen. Eine ausführliche Liste von UserAgents findet ihr hier . Code für die .htacces Datei Erstellt eine Datei mit dem Namen .htaccess und kopiert folgendes hinein: Code: # Spambots blocken RewriteEngine On RewriteCond %{REMOTE_ADDR} ^217.81.214.* [OR] RewriteCond %{REMOTE_ADDR} ^63.99.(21[0-5]). [OR] RewriteCond %{HTTP_USER_AGENT} ia_archiver [NC,OR] RewriteCond %{HTTP_USER_AGENT} discobot [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^BlackWidow [OR] RewriteCond %{HTTP_USER_AGENT} ^Bot\ mailto:craftbot@yahoo.com [OR] RewriteCond %{HTTP_USER_AGENT} ^ChinaClaw [OR] RewriteCond %{HTTP_USER_AGENT} ^Custo [OR] RewriteCond %{HTTP_USER_AGENT} ^DISCo [OR] RewriteCond %{HTTP_USER_AGENT} ^Download\ Demon [OR] RewriteCond %{HTTP_USER_AGENT} ^eCatch [OR] RewriteCond %{HTTP_USER_AGENT} ^EirGrabber [OR] RewriteCond %{HTTP_USER_AGENT} ^EmailSiphon [OR] RewriteCond %{HTTP_USER_AGENT} ^EmailWolf [OR] RewriteCond %{HTTP_USER_AGENT} ^Express\ WebPictures [OR] RewriteCond %{HTTP_USER_AGENT} ^ExtractorPro [OR] RewriteCond %{HTTP_USER_AGENT} ^EyeNetIE [OR] RewriteCond %{HTTP_USER_AGENT} ^FlashGet [OR] RewriteCond %{HTTP_USER_AGENT} ^GetRight [OR] RewriteCond %{HTTP_USER_AGENT} ^GetWeb! [OR] RewriteCond %{HTTP_USER_AGENT} ^Go!Zilla [OR] RewriteCond %{HTTP_USER_AGENT} ^Go-Ahead-Got-It [OR] RewriteCond %{HTTP_USER_AGENT} ^GrabNet [OR] RewriteCond %{HTTP_USER_AGENT} ^Grafula [OR] RewriteCond %{HTTP_USER_AGENT} ^HMView [OR] RewriteCond %{HTTP_USER_AGENT} HTTrack [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^Image\ Stripper [OR] RewriteCond %{HTTP_USER_AGENT} ^Image\ ****er [OR] RewriteCond %{HTTP_USER_AGENT} Indy\ Library [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^InterGET [OR] RewriteCond %{HTTP_USER_AGENT} ^Internet\ Ninja [OR] RewriteCond %{HTTP_USER_AGENT} ^JetCar [OR] RewriteCond %{HTTP_USER_AGENT} ^JOC\ Web\ Spider [OR] RewriteCond %{HTTP_USER_AGENT} ^larbin [OR] RewriteCond %{HTTP_USER_AGENT} ^LeechFTP [OR] RewriteCond %{HTTP_USER_AGENT} LinksManager.com_bot [NC,OR] RewriteCond %{HTTP_USER_AGENT} linkwalker [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^Mass\ Downloader [OR] RewriteCond %{HTTP_USER_AGENT} ^MIDown\ tool [OR] RewriteCond %{HTTP_USER_AGENT} ^Mister\ PiX [OR] RewriteCond %{HTTP_USER_AGENT} ^Navroad [OR] RewriteCond %{HTTP_USER_AGENT} ^NearSite [OR] RewriteCond %{HTTP_USER_AGENT} ^NetAnts [OR] RewriteCond %{HTTP_USER_AGENT} ^NetSpider [OR] RewriteCond %{HTTP_USER_AGENT} ^Net\ Vampire [OR] RewriteCond %{HTTP_USER_AGENT} ^NetZIP [OR] RewriteCond %{HTTP_USER_AGENT} ^Octopus [OR] RewriteCond %{HTTP_USER_AGENT} ^Offline\ Explorer [OR] RewriteCond %{HTTP_USER_AGENT} ^Offline\ Navigator [OR] RewriteCond %{HTTP_USER_AGENT} ^PageGrabber [OR] RewriteCond %{HTTP_USER_AGENT} ^Papa\ Foto [OR] RewriteCond %{HTTP_USER_AGENT} ^pavuk [OR] RewriteCond %{HTTP_USER_AGENT} ^pcBrowser [OR] RewriteCond %{HTTP_USER_AGENT} ^RealDownload [OR] RewriteCond %{HTTP_USER_AGENT} ^ReGet [OR] RewriteCond %{HTTP_USER_AGENT} ^SiteSnagger [OR] RewriteCond %{HTTP_USER_AGENT} ^SmartDownload [OR] RewriteCond %{HTTP_USER_AGENT} ^SuperBot [OR] RewriteCond %{HTTP_USER_AGENT} ^SuperHTTP [OR] RewriteCond %{HTTP_USER_AGENT} ^Surfbot [OR] RewriteCond %{HTTP_USER_AGENT} ^tAkeOut [OR] RewriteCond %{HTTP_USER_AGENT} ^Teleport\ Pro [OR] RewriteCond %{HTTP_USER_AGENT} ^VoidEYE [OR] RewriteCond %{HTTP_USER_AGENT} ^Web\ Image\ Collector [OR] RewriteCond %{HTTP_USER_AGENT} ^Web\ ****er [OR] RewriteCond %{HTTP_USER_AGENT} webalta [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^WebAuto [OR] RewriteCond %{HTTP_USER_AGENT} WebCollage [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^WebCopier [OR] RewriteCond %{HTTP_USER_AGENT} ^WebFetch [OR] RewriteCond %{HTTP_USER_AGENT} ^WebGo\ IS [OR] RewriteCond %{HTTP_USER_AGENT} ^WebLeacher [OR] RewriteCond %{HTTP_USER_AGENT} ^WebReaper [OR] RewriteCond %{HTTP_USER_AGENT} ^WebSauger [OR] RewriteCond %{HTTP_USER_AGENT} ^Website\ eXtractor [OR] RewriteCond %{HTTP_USER_AGENT} ^Website\ Quester [OR] RewriteCond %{HTTP_USER_AGENT} ^WebStripper [OR] RewriteCond %{HTTP_USER_AGENT} ^WebWhacker [OR] RewriteCond %{HTTP_USER_AGENT} ^WebZIP [OR] RewriteCond %{HTTP_USER_AGENT} ^Wget [OR] RewriteCond %{HTTP_USER_AGENT} ^Widow [OR] RewriteCond %{HTTP_USER_AGENT} ^WWWOFFLE [OR] RewriteCond %{HTTP_USER_AGENT} ^Xaldon\ WebSpider [OR] RewriteCond %{HTTP_USER_AGENT} Yandex [NC,OR] RewriteCond %{HTTP_USER_AGENT} zermelo [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^Zeus [NC, OR] RewriteCond %{HTTP_USER_AGENT} ZyBorg [NC] RewriteRule .* keine-bots.html [L] Die Datei ladet ihr nun auf euren Server. Erklärung RewriteEngine On stellt die RewriteEngine ein. Dieser Befehl muss vor jeder Rewriteanweisung stehen! RewriteCond %{REMOTE_ADDR} ^217.81.214.* sperrt 217.81.214.* aus. RewriteCond %{REMOTE_ADDR} ^63.99.(21[0-5]). [OR] sperrt 63.99.210.* bis 63.99.215.* aus. RewriteCond %{HTTP_USER_AGENT} ia_archiver [NC,OR] sperrt den UserAgent ia_archiver aus. NC steht für No Case, der Pattern ist nicht case-sensitive. RewriteRule .* keine-bots.html [L] leitet den Bot auf die Seite keine-bots.html weiter. Dort kann eine kurze Information stehen, dass die IP bzw. der UserAgent gesperrt ist. Das [L] steht für Last, also die Regel, welche der Apache beachtet. Alternativ kann man auch RewriteRule ^.* - [F,L] verwenden, was einen 403 Fehler (Zugriff verweigert) erzeugt. 2. Sicherheitabfrage (Captchas) in Formularen Vorwort Wikipedia Offizielle Captcha Seite Code zum Einbau Ich verweise hier auf mein Tutorial Captchas generieren und überprüfen . Erklärung s. Tut 3. Formularelemente manipulieren Vorwort Eine neue, effektive Methode: man erstellt mehrere Formularelemente vom Typ text, und macht sie via CSS unsichtbar. Den restlichen Elementen gibt man Namen wie Dnhefn4uz oder In74fsUs. Code PHP: <? php if( $_POST [ 'homepage' ] != "" ) { die(); } else { verabreite_post_und_ab_in_DB ( $_POST ); } ?> <form action="" method="POST"> Dein Name: <input type="text" name="DnbrDAbn" value=""><br> Deine Email: <input type="text" name="ADFe6" value=""><br> Dein Eintrag: <input type="text" name="Sh6gAb" value=""><br> <input type="text" name="homepage" value="" style="display:none;"> <input type="submit" name="submit" value="Eintragen"> </form> Erklärung Der typische Spambot wir sich das Feld homepage raussuchen (was für einen normalen Besucher wegen style="display:none;" nicht sichtbar ist) und dort seinen Link reinschreiben und das Formular abesenden. Enthält $_POST['homepage'] einen Wert, so wird das Script gestoppt. 4. Alternativer submit Button Vorwort Diese Methode verwirrt einige Spambots. Dabei gibt es im Formular einfach kein Element vom Typ submit, sonder eins vom Typ image. Code HTML: <form action="" method="POST"> <input type="image" name="img" src="http://img23.imageshack.us/img23/1005/btnsubmitde.jpg"> </form> Erklärung Einige Spambots überprüfen wohl nur, ob ein Element vom Typ submit exestiert. Ist dies nicht der Fall, lassen sie das Formular in Ruhe. Ich hoffe, ich konnte euch helfen und euer Wissen etwas bereichern =) + Multi-Zitat Zitieren
#2 2. März 2009 AW: [Tutorial] Website vor Spambots schützen ganz gut soweit, außer die manipulierten form felder. anti seo? würds für die usability nicht empfehlen! aber htaccess sollte standard sein! + Multi-Zitat Zitieren