Sonstiges

Spam-Stats und Gegenmaßnahmen

Seit der letzten Spam-Statistik am 13.06. sind nochmals knapp 10.000 Spameinträge dazugekommen. Der Server war aufgrund der zahlreichen Spamversuche seit Donnerstag fast völlig blockiert. Mittlerweile ist das Problem einigermaßen im Griff. Ausschließen kann man solche Attacken nicht, da sie auf verteilten IPs basieren, also eigentlich echten DOS-Attacken sehr ähneln. Wie soll man das auch abwehren letztlich? Jedes Bot-Netzwerk (die teilweise hundertausende von PC-Zombies kontrollieren) kann oW mE jedes Weblog der Welt lahmlegen, es sei denn, man attackiert Firmen wie Google, Yahoo, MSN oder dergleichen Kolosse. Meine Spamattacken waren so gebaut, dass jede IP immer nur 1-5x vorkam, die IP-Bereiche waren völlig unterschiedlich, ebenso wiesen die Header-Daten keine bestimmte Signatur auf, an der man sich orientieren konnte.

So oder so, was wurde getan?
Anfragen begrenzt
Die Anzahl maximal erlaubter Requests wurde dem zur Verfügung stehenden RAM des Servers angepasst (war zu hoch eingestellt)

Update auf WP2
Das Blog hier und Living in WoW wurden von WP 1.5 auf WP 2 angehoben, da angeblich WP 2 performanter laufen soll. Vor allen Dingen musste ich Living in WOW updaten, da sämtliche Inhalte für nicht registrierte User unsichtbar waren! Wir hatten weder in den Templates noch in der DB den Fehler finden können. Das Problem trat ab Do/Freitag auf, also zeitlich mit den Spamattacken einhergehend. Nach dem Update war das Problem bereinigt.


Neue Stellenangebote

Growth Marketing Manager:in – Social Media
GOhiring GmbH in Home Office
Senior Social Media Manager:in im Corporate Strategy Office (w/d/m)
Haufe Group SE in Freiburg im Breisgau
Senior Communication Manager – Social Media (f/m/d)
E.ON Energy Markets GmbH in Essen

Alle Stellenanzeigen


SpamKarma deaktiviert
SpamKarma wurde deaktiviert. Es erzeugt zu viel Rechenpower. Immerhin waren die SK-Tables >25.000 Einträge groß und bei jedem Spamcheck schaut SK in den Datensätzen nach. Bei starken Spamattacken zieht das den Server natürlich runter.

Akismet
Akismet läuft momentan als einiziges Anti-Spamtool. Es wird zusätzlich ein Preview-Plugin für Kommentare eingebaut. Das erschwert Kommentar-Spambots die Arbeit. Ich überlege zZt, ob ich stattdessen nicht eine Sonderlösung einbauen soll, die mir schon damals beim MEX Blog super geholfen hat. Ein zusätzliches Feld, in das man einfach nur ein vorgegebenes Stichwort eingeben muss. Weil das super wenig Blogs verwenden, lohnt sich die Anpassung der Spammerskripte nicht.

Bad Behavior
Bad Behavior ist ein prima Notnagel, um Zugriffe radikal zu sperren, die auch nur ansatzweise nach Spam riechen. Das verschafft dem Server etwas Luft in Notzeiten. Sperrt aber auch nicht wenige User aus. Daher läuft BB nur dann, wenn mans braucht. Schade, denn besser wäre es, dass BB den User statt zu blocken eine Sesam-Öffne-Dich Frage stellt. Wird die Frage falsch beantwortet oder reagiert das Spamskript falsch, müsste man eigentlich der IP mehrere IP Pakete zurückschicken, na ja…

Feedburner Redirect
durch das Update auf WP 2 ging zeitweise der Redirect aller RSS Anfragen auf Feedburner nicht mehr. Was das für die Last bedeutet, habe ich heute Morgen gesehen: Just nach 02:00 Uhr ging die Datendurchsatzrate vehement hoch. Zu diesem Zeitpunkt hatte ich auch auf WP2 umgestellt. Also schnell Feedburner-Plugin upgedatet und gut ist (siehe dazu Nutzen von Feedburner und Feedburner per ModRewrite)

WP Cache
WP Cache habe ich ausgeschaltet, da es bei Spamattacken uninteressant ist. Es bringt nur was, wenn Massen echter User (grob ab +5.000 Besuchern pro Tag) auf dem Blog aufschlagen.

WordPress DB-Connect Errors
WP neigt dazu, ungenaue Meldungen abzugeben. Wenn der Server ausgelastet ist, erscheint die klassische Fehlermeldung, dass die DB nicht erreichbar ist. Das stimmt aber nicht, die DB reagiert eben nur sehr langsam. Offensichtlich wartet WP eine bestimmte Zeit und je nachdem, was intern passiert (to many connections etc…) kommt immer nur diese eine Meldung.

Nothinweis
Blogverzeichnis umbenennen (zB von ../blog/ auf ../blogstop/). Das stoppt die Spammer mit einem 404. In den ursprünglichen Blog-Pfad eine index.html legen, die den Usern erklärt, das man Probleme hat. Und möglicherweise auf ein Ersatzblog hinweisen, das noch läuft. Ich werde daher als Ausweichsquartier eines meiner Test-WordPress.com Accounts aktivieren, um dort via Blog mit den Lesern weiter kommunzieren zu können, sollte es wieder länger dauern, bis die Probleme bereinigt sind. Guter Hinweis, Frank, merci!

in Planung
Einsatz von MOD Evasive geplant, Umstieg auf stärkeren Server mit mind. 1 GB RAM, Einsatz von Debian 3.x statt Suse 9.x, Einsatz von MySQL /PhP-Caching-Mechanismen.

Insgesamt also eine sehr zeitraubende Geschichte. Die einen manchmal richtiggehend abkotzen lässt, weil man ein Hobby betreibt, nicht aber einen Shop oder dergleichen, wo man das eben schlichtweg einkalulieren muss. An dieser Stelle ein mächtiges Dankeschön an Stebu, der meinen Blogarsch gerettet hat, ebenso an Jan, Mike und Stefan W.!!!

Weil ich keinen Bock mehr drauf habe, dass andere und ich Zeit für wildgewordene Spammerskripte zu investieren , wird es demnächst einen Werbepartner auf dem BT Blog (und anderen Blogs) geben. Damit kann ich die Zeitaufwendungen Dritter, die gestiegenden Hostingkosten wie auch meiner einer besser finanzieren.

Über den Autor

Robert Basic

Robert Basic ist Namensgeber und Gründer von BASIC thinking und hat die Seite 2009 abgegeben. Von 2004 bis 2009 hat er über 12.000 Artikel hier veröffentlicht.

28 Kommentare

  • ja, der liebe „stebu“ – dem bin ich auch zu grossem dank verpflichtet

    er hat sich gestern fuersorglich fast 4 stunden in meinem wohnzimmer niedergelassen um dieses „abartige“ kabelmodem auf meinem neuen notebook zu installieren

    nebenbei erfolgte ein stetiger „surf in“ via dem anderen rechner auf „basicthinking“

    ach stef, wenn wir dich nicht haetten ;.)

  • Eigentlich unverständlich, wie jemand Spaß daran haben kann Server mit privaten Blogs lahm zu legen.

    Auch wenn ich es bei Seiten mit kommerziellem Hintergrund auch nicht leiden kann (unglaublich, wie bösartig manche Leute sein können) stellt sich gerade bei privaten Seite die Frage, was es dem Angreifer bringt.

    Wahrscheinlich ist das die negative Seite daran, wenn man bei google gut positioniert ist.

  • schliesse dich doch mit alex (poolie) von kulando kurz – selbiges problem – darum ist meine seite auch so schwer erreichbar . dies geht seit wochen so!

  • Freitag war in NRW der letzte Schultag vor den Sommerferien – „Verfügbare Zeit“, „Motiv: Langeweile“ und „Zielgruppe“ könnten jedenfalls durchaus passen… (auch wenn es ja schon am Donnerstag losging)

  • @Stefan E.
    Den Ferienstart sollte man dafür nicht verantwortlich machen. Das waren keine Scriptkiddis. Ich habe ja das Logfile ne Weile monitort. Das Verhalten war typisch für ein Botnetz(teils dynam. IP-Adressen, teils feste von gehacktem Servern, alles über die Weltkugel verteilt). Max 3-5 Requests und dann eine neue IP. Ein typ. Muster wie ich es schon oft gesehen habe.

  • Hab mich in letzter Zeit auch mit hoher Serverlast auseinander gesetzt (aber ein anderer Grund) und vielleicht deshalb folgender Hinweis: Stell den Server um: http://www.lighttpd.net/ ist ein HTTP-Server mit PHP-Unterstützung, der auch bei sehr hohen Anfragen noch recht schnell antwortet, weil er nicht wie der apache für jeden Request eine eigene Instanz fährt.

  • Ich hoffe nur, dass endlich Ruhe bei Dir hier einkehrt. Ich kann dieses Verhalten nicht verstehen, dass man so vehement versucht, einen Server durch DoSpam in die Knie zu zwingen. Schade halt… aber who knows!

  • […] Ganz lieb kommt mir jemand daher, der in Spam Karma 2 ein Karma von -3680.98 erhalten hat. Der gute Bot fragt nämlich dreist “May we exchange links with your site?” Errr, nein? Warum auch? Mit 20 verlinkten URLs kann der uns mal ganz geschmeidig gern haben. Wie man sonst noch sich gegen Spambots wehren kann, zeigt uns Robert in seinem ebenfalls sehr geschmeidigen Resümee. Keywords/Tags: Comment, Pingback, Spam, Trackback, Trackbackspam […]

  • @SteBu: Du hast natürlich recht. Der „Skriptkiddis“-Gedanke drängte sich mir nur einfach auf, da ich mir ansonsten keine irgendwie „sinnvolle“ Motivation für eine solche Attacke vorstellen konnte bzw. kann.

    Es freut mich jedenfalls, dass es jetzt wieder läuft!

  • 807 incoming links laut deutscheblogcharts.de? Vielleicht sucht man sich über technorati seine Opfer?

    Auf jeden Fall bin ich sehr dankbar, daß ich im Falle eines ähnlichen Angriffs auf Deine Erfahrungen zurückgreifen kann. Merci!

  • […] Seit letztem Donnerstag war das Blog von Robert Basic (www.basicthinking.de/blog) nur sehr eingeschränkt erreichbar (siehe auch http://www.sichelputzer.de). Offenbar wurde das Blog von einem ausgewachsenen Tsunami aus Kommentar-Spam überrollt. Unter http://www.basicthinking.de/blog%5B2%5D zieht er nun ein erstes Fazit: Seit der letzten Spam-Statistik am 13.06. sind nochmals knapp 10.000 Spameinträge dazugekommen. Der Server war aufgrund der zahlreichen Spamversuche seit Donnerstag fast völlig blockiert. […] Meine Spamattacken waren so gebaut, dass jede IP immer nur 1-5x vorkam, die IP-Bereiche waren völlig unterschiedlich, ebenso wiesen die Header-Daten keine bestimmte Signatur auf, an der man sich orientieren konnte. […]

  • Wo Sonne ist fallen auch Schatten und umgekehrt…

    Wo im Sommer Sonne und Freude auftaucht, fallen immer auch Schatten und tauchen mitunter Probleme auf. Gut, wer beides im Blick hat und auch manche Erfahrung über Bord werfen kann. Objektivität ist mitunter gar nicht so einfach. Jeder Mensch…

  • […] Update: Chris weist auf einen Artikel von Robert hin, der zumindest Lösungsansätze bietet. Also: Wem es ähnlich geht, lesen. verwandte Artikel: Spam: nur gegen Druckkostenzuschuss!Spam-WochenendeBitte kein schlechter Pharma-SpamJa, ich bin ein Business-Blog. alle Artikel zu: KommentarspamSpamTop 100 Business Blogs […]

  • Maßnahmen gegen Spammer…

    Auch Robert hat ziemlichen Ärger mit den Spammern, die die Performance seines Weblogs Basic Thinking erheblich leiden lassen. Er berichtet in mehreren Artikeln darüber und schliesst mit einem derben Satz, den ich aber aufgrund unserer Erfahrungen vo…

  • Interessanter Artikel, danke dafür!

    >> „Warum habe ich soviel Spamversuche und andere nicht?“

    Ich leider auch, und das obwohl mein Blog sehr viel weniger populär ist und erst seit ca. 6 Monaten existiert, hatte dazu am Sonntag Nacht einen Artikel geschrieben Frühstücksfleisch wird immer agressiver
    (z.T. über 5000 Spams / Tag !) In den letzten 2 Tagen war es dann ruhiger mit „nur“ 1000 Spams.

  • […] Für weitere Tipps und Hinweise bin ich dankbar. Jetzt packe ich mal mein Gepäck, denn morgen früh geht es erstmal für 2 Tage nach Frankreich. Ich hoffe, dass es sich der Spam nicht nochmal verzehnfacht, denn vor 4 Tagen hatte ich schon mal über massiv angestiegenen Spam berichtet, “damals” waren es nur gute 500 Spams. Nachtrag (Di 27.06., 21:30): Siehe hierzu auch einenn interessanten Artikel von Robert, dessen Server die Spam-Attacken nicht mehr mitmachte: Spam-Stats und Gegenmaßnahmen. Bei mir war es die letzten 2 Tage etwas ruhiger, “nur” 1000 Spams, und z.B. innerhalb der letzten 30 Minuten 185 neue Spams. […]

  • […] Ich mache leider momentan eine negative neue Erfahrung, was den Spam angeht. Wie wahrscheinlich jeder hobbymäßiger Webmaster lese auch ich häufiger zwischen den Zeilen – in den Statistiken. Soweit so gut. Ziel von Spammern auf Webseiten ist es ja meistens ihre Links in so vielen Blogs und Seiten wie möglich zu lassen um dadurch bessere Positionen in den Suchmaschinen zu erreichen (Ich warte übrigens “Gott sei Dank” noch auf den ersten Spam Kommentar hier im Blog). […]

  • @Robert:
    Auch wenn ich nicht fit in WordPress bin, hat mich Dein Problem trotzdem vor dem Hintergrund „AntiSpam-Massnahmen“ interessiert.

    Eventuell hätte ich ein paar Ideen:

    – Askimet taggt Eingehendes zwar als Spam, es wird aber trotzdem verarbeitet = belastet die DB.
    – Die automatische Analyse von Einträgen (wie bei Askimet) beinhaltet immer die Gefahr von false-positives.
    – Die Spam-Nachschau/manuelle Freigabe kann bei vielen Einträgen sehr zeitaufwändig werden.

    – Eine Möglichkeit wäre, mit Captcha’s zu arbeiten (das ist aber nicht „barrierefrei“)

    – Eine weitere, sehr pfiffige und auch barrierefreie Lösung könnte WP-HashCash sein: http://elliottback.com/wp/archives/2005/10/23/wordpress-hashcash-30-beta/

    Mal abgesehen vom Einfluss auf die Performance des Servers sind immer die AntiSpam-Maßnahmen optimal, die nicht den User nerven, sondern die SpamBots.
    Darum finde ich HashCash besser als die verwendung von Captcha’s.

    Gruß

    noplease

  • […] Ich bekommen nun ziemlich viel Kommentarspam, und versuch was dagegenzutun. Kommentarspam erhält man, weil fremde Webseiten so Links zu sich erzeugen können, um den PageRrank zu erhöhen. Spam kann Blogs komplett lahmlegen, weil der Server unter der Last zusammenbricht. Beim Lesen vom Basic Thinking Blog – dem das passiert ist, fiel mir auf, dass Robert dem Problem hauptsächlich mit Plugins beikommen will – die aber Ihrerseits wieder die Serverlast erhöhen. Hier sein Massnahmenpaket. […]

  • […] Robert Basic berichtete fast parallel ebenfalls von massiven Problemen mit Spam, bei ihm war das ganze noch einen Schritt weiter, da teilweise lange Wartezeiten auftraten aufgrund der Spamattacken, also massiv negativer Einfluss auf die Server-Performance (siehe u.a. Spam-Stats und Gegenmaßnahmen). Denis hatte es noch härter erwischt. […]

  • Moyn, hatte den ganzen Spam entgueltig satt, habe dann http://www.Bot-Trap.de hochgezogen, dort kann man ein Tool runterladen, was sich staendig mit neuen Sperren updated, aber auch den eigenen ProgrammCode. Bindet man einfach ganz universell in seine Projekte ein. Bei mir und vielen Usern haelt es schon die halbe Hoelle draussen… wir sammeln noch Identifizierungsmerkmale, Mitmachen ist erwuenscht!

  • Spam-Attacken…

    Also wenn man sich so umschaut, kann man feststellen, daß der ein oder andere doch arg unter Spam-Attacken leidet.

    Diese Spam-Attacken, die auch ich schon erleben durfte, werden meist über ein Bot-Netz gesteuert. Diese Bot-Netze bestehen aus mit …