Spambots via .htaccess den Stinkefinger zeigen


Spammer sind schon eh nervig deluxe und Spambots noch um ein vielfaches mehr. Jetzt habe ich beim Netzhappen eine Liste/Anleitung gefunden, mit der man diese fiesen Spambots aussperren kann. Hintergrund der Geschichte ist, das man zwar Spambots auch mit der robots.txt aussperren kann, aber diese immer nur ein “höflicher Hinweis” sind für die Bots. Ob die sich daran auch halten steht auf einem anderen Blatt. Mit einer virtuellen Stinkefinger Aktion via .htaccess ist es aber garantiert, das diese Fieslinge aussen vor bleiben.

Das ganze wird mittels der .htaccess Datei realisiert und sieht dann so aus:

<IfModule mod_rewrite.c>
   RewriteEngine On
   RewriteCond %{HTTP_USER_AGENT} ^BOTNAME1 [OR]
   RewriteCond %{HTTP_USER_AGENT} ^BOTNAME2
   RewriteRule ^.* - [F,L]
</IfModule>

Mit diesem Eintrag werden alle Bots auf eine 403 Seite verwiesen, die man dann auch noch anpassen kann.

Wobei hier natürlich die Botnamen eingesetzt werden sollen bei “^Botname1“.  Bei robots.txt.org gibt es noch eine ausführlichere Liste aller Spambots, die man integrieren kann. Derzeit sind dort 303 Spam- Bots verzeichnet.

Die ganze Liste sieht dann so aus:

RewriteCond %{HTTP_USER_AGENT} ^aipbot [OR]
RewriteCond %{HTTP_USER_AGENT} ^BlackWidow [OR]
RewriteCond %{HTTP_USER_AGENT} ^Bot\ mailto:craftbot@yahoo.com [OR]
RewriteCond %{HTTP_USER_AGENT} ^Bloggsi [OR]
RewriteCond %{HTTP_USER_AGENT} ^ChinaClaw [OR]
RewriteCond %{HTTP_USER_AGENT} ^CHATCATCHER [OR]
RewriteCond %{HTTP_USER_AGENT} ^CopyRightCheck [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} ^grub [OR]
RewriteCond %{HTTP_USER_AGENT} ^HMView [OR]
RewriteCond %{HTTP_USER_AGENT} HTTrack [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^HTTP://WWW.RELEVANTNOISE.COM [OR]
RewriteCond %{HTTP_USER_AGENT} ^Image\ Stripper [OR]
RewriteCond %{HTTP_USER_AGENT} ^Image\ Sucker [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} ^Java [OR]
RewriteCond %{HTTP_USER_AGENT} ^JAVA [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} ^looksmart [OR]
RewriteCond %{HTTP_USER_AGENT} ^LeechFTP [OR]
RewriteCond %{HTTP_USER_AGENT} ^LMSPIDER [OR]
RewriteCond %{HTTP_USER_AGENT} ^lmspider [OR]
RewriteCond %{HTTP_USER_AGENT} ^MoreOverBot [OR]
RewriteCond %{HTTP_USER_AGENT} ^Mozilla$ [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} ^NetMechanic [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} ^PYTHON-URLLIB [OR]
RewriteCond %{HTTP_USER_AGENT} ^RealDownload [OR]
RewriteCond %{HTTP_USER_AGENT} ^ReGet [OR]
RewriteCond %{HTTP_USER_AGENT} ^SHELOB [OR]
RewriteCond %{HTTP_USER_AGENT} ^SIMILARPAGES [OR]
RewriteCond %{HTTP_USER_AGENT} ^SiteSnagger [OR]
RewriteCond %{HTTP_USER_AGENT} ^SmartDownload [OR]
RewriteCond %{HTTP_USER_AGENT} ^SphereScout [OR]
RewriteCond %{HTTP_USER_AGENT} ^SuperBot [OR]
RewriteCond %{HTTP_USER_AGENT} ^SuperHTTP [OR]
RewriteCond %{HTTP_USER_AGENT} ^Surfbot [OR]
RewriteCond %{HTTP_USER_AGENT} ^thesubot [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\ Sucker [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebAuto [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebCopier [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebBandit [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} ^YANDEX [OR]
RewriteCond %{HTTP_USER_AGENT} ^Xaldon\ WebSpider [OR]
RewriteCond %{HTTP_USER_AGENT} ^Zeus
RewriteRule ^.* - [F,L]

(Quelle: Netzhappen)

14 KOMMENTARE ZUM Artikel

  1. ConnyLo hat diesen Kommentar am 9. März 2009 geschrieben| Permalink

    Hhm,
    bei mir gibts leider nur einen Seitenfehler: »Internal Server Error«

  2. mr.gene hat diesen Kommentar am 9. März 2009 geschrieben| Permalink

    Interessanter Idee…bei akutem Bot-Befall sicher eine gute Sache.

    Ein Frage dazu hätte ich aber: Wie wirkt sich eine so große .htaccess auf die Performance des Webauftrittes aus?
    Die htaccess wird ja leider nicht kleiner und da nun schon mal eben knappe 300 Zeilen hinzukommen, die abgearbeitet werden müssen bevor überhaupt irgendwas passiert…

    MfG

  3. Markus hat diesen Kommentar am 9. März 2009 geschrieben| Permalink

    Prima, bei 100 bis 150 Spam-Kommentaren täglich sicher eine Lösung, Werd ich mal testen. Wobei bei mir das meiste Trackback-Spam ist…

  4. Carsten hat diesen Kommentar am 9. März 2009 geschrieben| Permalink

    @ mr.gene

    Netzhappen hat das ja so drin und der Server läuft ja 1A. Wüßte jetzt nicht wie sich das negativ auswirken sollte, da die Datei ja im kb Bereich liegt. Also eher nicht messbar…

    @ Markus

    Ich bekomme Spam Kommentare nicht mal zu Gesicht oder muss sie gar löschen :grin: einfach AntiSpam Bee druff und Ruhe ist. Trackbacks (Spam) kommen bei mir auch so gut wie nie an.

  5. mr.gene hat diesen Kommentar am 9. März 2009 geschrieben| Permalink

    @Markus
    Bei Trackback-Spam hilft sonst auch STBV => Existiert kein Link zu deiner Seite, wird der TB einfach verworfen und du bekommst ich auch nicht zu Gesicht! Das Plugin ist auch gut konfigurierbar, sodass du das deinen Ansprüchen anpassen kannst!

  6. Markus hat diesen Kommentar am 9. März 2009 geschrieben| Permalink

    @Carsten: Die Biene hatte ein paar Wochen im Test, aber die hat mir zu viel echte Kommentatoren geblockt. Ich setze Yawasp ein.

    @mr.gene: Simple Trackback Validation ist bei mir schon seit langem im Einsatz, nur muss ich den ganzen Spam manuell löschen. Hab ich so eingestellt, weil ich keine echten Trackbacks verlieren wollte. Aber ich denke, das kann ich jetzt umstellen, das Plugin hat sich als zuverlässig erwiesen ;)

    In den letzten etwa 5 Stunden hatte ich 2 Spamkommentare, die manuell eingetragen worden sein müssen…

  7. Dr. Azrael Tod hat diesen Kommentar am 9. März 2009 geschrieben| Permalink

    getright? java? python-urllib? WGET?

    damit hast du mal eben Downloadmanager, privat gebastelte Software und so ziemlich alles an Unix-tools ausgeschlossen… Glückwunsch!

    Mein Vorschlag wäre ja alles zu sperren und nur noch selbst mit deinem Server über verschlüsselte Verbindungen aufzubauen. Alternativ kannst du dir auch dein eigenes, ganz privates Netzwerk bauen.. so physisch vom Internet getrennt und so. Das wird dann natürlich nicht sonderlich gesellig, aber was tut man nicht alles für den Datenschutz. *G*

    BTW: Deine Tabreihenfolge im Kommentarformular ist kaputt.. fixen!

  8. Markus hat diesen Kommentar am 9. März 2009 geschrieben| Permalink

    @Dr. Azrael Tod: Du sollst mein Blog auch nicht mit irgendwelchen Unixtools zerlegen. Ich bin selbst Linuxer und weiß, was diese Tools können. Daher ist mir das so ziemlich egal, dass die Dinger gesperrt sind. Solange herkömmliche Browser die Seiten anzeigen können, reicht das. Und selbst Lynx kann das. ;)

  9. Dr. Azrael Tod hat diesen Kommentar am 9. März 2009 geschrieben| Permalink

    öhm.. naja, das geht schon los wenn du mal irgendwann eine mp3 oder pdf anbieten solltest… die landen bei mir via default und ssh erstmal nicht auf meinem kleinen Netbook sondern auf meinem server, der die via wget runterlädt.
    Wenn ich meinen IRC-Bot beauftrage deine RSS-Datei abzurufen und der blöderweise in Python oder so geschrieben ist wird es auch nicht besser.
    Wenn du schon alle möglichen Leute aussperren willst, dann solltest du wenigstens MSIE auch aussperren, das verursacht mehr schaden als Wget oder Dinge die auf Mozilla enden ;-)

  10. Carsten hat diesen Kommentar am 10. März 2009 geschrieben| Permalink

    @Dr. Azrael Tod

    Ich habe die Liste dort nur gefunden und hier weiterverbreitet. Selber habe ich sie noch nicht eingebaut, weil ich sie noch genauer überprüfen wollte und ganze einfach keine Zeit dazu hatte… :???:

  11. Dr. Azrael Tod hat diesen Kommentar am 10. März 2009 geschrieben| Permalink

    aus dem grund: immer erst durchlesen und überlegen ob das wirklich so sinnvoll ist was man da gerade anderen vorschlägt ;-)
    Ich will garnicht wissen wie viele DAUs sowas unüberprüft für ihre eigenen Sachen verwenden.

    Genau genommen… eigentlich kanns nicht schaden, dann kann man die Seiten die man nicht besuchen will auch gleich daran erkennen dass man es nicht kann. :-)

  12. Sergej Müller hat diesen Kommentar am 10. März 2009 geschrieben| Permalink

    @all
    Die alte Diskussion. Jeder gut programmierte Spam-Bot ist in der Lage seinen User-Agent zu verschleiern bzw. gar unterdrücken. Ein Blick ins Access-Log bestätigt es auf einen Schlag. Da sind solche Listen gegen *echte* Spammer absolut sinnlos. Klar, ein paar könnte man damit ausschließen, aber die meisten sind doch nicht dumm, um ausgesperrt zu werden.

    @Markus
    Schön dich zu sehen ;)

  13. Carsten hat diesen Kommentar am 10. März 2009 geschrieben| Permalink

    @Sergej Müller

    Ja ja, immer diese Empfehlungen was böse Bots dürfen und was sie unterlassen sollten. Das Internet ist auch nicht mehr das was es mal war… :evil:

    Sprengen sollte man die alle :twisted:

  14. Sergej Müller hat diesen Kommentar am 10. März 2009 geschrieben| Permalink

    >> Das Internet ist auch nicht mehr das was es mal war…
    Oh, das stimmt, Carsten.

2 Trackbacks

  1. [...] gegen Kommentarspam unternehmen kann, kommt der Carsten vom Datenwachschutz mit einer einfachen Idee im die [...]

  2. [...] gegen Kommentarspam unternehmen kann, kommt der Carsten vom Datenwachschutz mit einer einfachen Idee im die Kurve: Man sperrt die Spambots einfach per .htaccess aus, so dass die nur noch einen Error [...]

RSS ? Hier klicken !

Was ist eigentlich RSS ?

Kostenloses Buch

Twitter

Was ist Twitter ???