Nerviger Kommentar-Spam in WordPress
Alle paar Tage habe ich zuletzt 2, 3 Kommentare, die lediglich die Namen Mark Malvin oder Steven Adler beinhalten. Auch Globe Telecom tauchte mal auf. Als Autoren werden dabei unterschiedliche Namen verwendet. Dazu fast immer ein ein Link zu einer russischen Website, die als Linkschleuder für weitere Webprojekte dient.
AntSpam Bee erkennt diese Kommentare derzeit nicht als Spam
Natürlich nutze ich in meinen Blogs das hervorragende Plugin AntiSpam Bee, was seit Jahren einen 1A-Job gegen die Spam-Flut in den Kommentaren leistet. Aber bei Steven Adler und Mark Malvin greift es nur in Ausnahmefällen.
Zudem ist es natürlich denkbar, dass diese Namen gegen alles mögliche ausgetauscht werden. Spam-Kommentare mit einem Inhalt wie:
- Toller Artikel, weiter so!
- Wonderful article! We are linking to this great.
funktionieren ja noch immer und werden von vielen Webmastern sogar händisch (inklusive Link) freigeschalten. Zudem prüfen viele noch nicht einmal ihre Kommentar-Einträgen und lassen einfach alles online gehen, was „einen lieben Gruß“ auf der Website hinterlässt.
Googelt man nach Mark Malvin oder Steven Adler stößt man schnell auf eine ganze Reihe Einträge. Es funktioniert demnach für die Spammer auf im Jahr 2024 noch ganz gut.
Wer sofort keine Lust mehr auf diese Einträge im eigenen Blog hat, kann sich mit eine der folgenden Lösungen behelfen.
Reguläre Ausdrücke für AntiSpam Bee verwenden
In der function.php (des Child-Themes) lässt sich ein Hock hinterlegen, mit dem sich das Plugin AntiSpam Bee erweitern lässt. In meinem Beispiel wird der Kommentar-Inhalt (Body) auf „Mark Malvin“ sowie „Steven Adler“ geprüft. Kommt einer der beiden Namen im Text vor, dann wird dieser Kommentar automatisch im Spam abgelegt.
Wer mag, kann sich diesen Code-Schnipsel einfach kopieren und in der eigenen functions.php abspeichern.
// AntiSpam Bee Funktion zum Filtern regulärer Ausdrücke function antispam_bee_patterns() { add_filter( 'antispam_bee_patterns', 'antispam_bee_add_custom_patterns' ); } add_action( 'init', 'antispam_bee_patterns' ); function antispam_bee_add_custom_patterns($patterns) { // Welcher Text soll als Spam im Kommentarfeld erkannt werden? $patterns[] = array ( 'body' => 'Mark Malvin|Steven Adler' ); return $patterns; }
Nachdem die functions.php mit diesem Code erweitert wurde, lässt sich das Ganze schnell und einfach prüfen. Einfach mal selbst einen Beitrag von sich kommentieren und dann nachschauen, ob dieser von AntiSpam Bee automatisch unter Spam abgelegt wurde. Voraussetzung ist allerdings, dass der Haken in den Plugin-Einstellungen für Reguläre Ausdrücken anwenden gesetzt wurde.
Andere Möglichkeit: Zugriffe in der .htaccess verhindern
Eine Zeit lang habe ich immer mal wieder die verwendeten IP-Adressen der Spammer in der .htaccess Datei gesperrt. Das ist aufgrund der recht überschaubaren Zugriffe an dieser Stelle noch handhabbar, aber unschön. Wer aber nicht in der functions.php die erforderlichen regulären Ausdrücke schreiben möchte, ist mit dieser Notlösung vielleicht auch ganz gut bedient.
order allow,deny deny from 14.192.208.115 deny from 31.184.238.102 deny from 88.147.152.211 deny from 178.45.220.51 deny from 178.127.83.244 deny from 77.106.254.217 allow from all
Die IP-Adressen lassen sich, wenn nicht aufgrund von speziellen DSGVO-Anpassungen anders konfiguriert, in den abgegebenen Kommentaren ablesen.
Vielen Dank für den Hinweis. Endlich weiß ich nun, wie ich Steven und Mark loswerde! Deine Anleitung funktioniert hervorragend!
Boah you made my day.. seit gut 4 Tagen bekomme ich mindestens 15 x pro Tag diesen Mist… vielen Dank für das Post