Archiv für die Kategorie » Wordpress «

Sexy Spamschutz

Montag, 3. Mai 2010, 9:01 Uhr | Autor: ich

Vor ca. einem Monat bin ich auf einen wirklich sehr guten Spamschutz in Form eines Plugin für WordPress gestoßen:
Aus der Mindfactory: Slide2Comment – anti spam the sexy way” (mindworker.de)

Ist dieses Plugin installiert so muss der Besucher, der einen Kommentar hinterlassen möchte, kein Captcha oder eine Rechenaufgabe lösen, oder der sonst üblichen Methoden Spammer abzuwehren — er braucht nur einen Button anklicken und mit gedrückter Maustaste von links nach rechts schieben. Erst durch diese Aktion werden die Formularfelder der Kommentarfunktion sichtbar. Wer ein iPhone besitzt kennt diese Art der Aktivierung.

Damals gab es noch einen kleinen Bug, weshalb ich das Plugin nicht sofort hier eingebaut habe. Mittlerweile ist der Bug behoben und es ist auch noch die Funktion hinzugekommen den Button mit dem Mauszeiger ohne Klick zu bewegen. In dem Adminpanel, welches auch dazugekommen ist, gibt es neben dem ein- und ausschalten des Klicks, auch die Möglichkeit die CSS-Datei direkt im Backend zu editieren, damit der Slider den eigenen Wünschen angepasst werden kann.

Natürlich konnte ich es nicht lassen im Plugin selber etwas rumzupfuschen. ;O)

Der mitgelieferte quietschgrüne Slider war mein erstes Opfer, wobei ich auch die Hintergrundfarbe angepasst habe. Im PHP-Code ersetzte ich message: "Slide 2 Comment" durch message: "← schieben und kommentieren". Die jquery.min.js muss ich auch nicht zwingend von Google laden, da ich noch 56 kByte Webspace übrig hatte und Google nicht immer benachrichtigen möchte wenn ein Besucher auf meinem Blog ist.

Aus
slider-alt.png
ist nun
slider-neu.png
geworden.

Das Plugin kann direkt aus dem “Plugin Directory” von WordPress.org geladen werden. Bisher wurde “Slide2Comment” (wordpress.org) mehr als 600 Mal runtergeladen. Glückwunsch an den Plugin-Autoren Long Hoang und besten Dank für dieses tolle Plugin, von mir und allen Captcha-Hassern dieser Welt. :O)


Update: 10:56 Uhr

Plugin erstmal wieder deaktiviert und die alte Methode aktiviert, da der Erich (erich-kachel.de) gleich eine Lücke für Spammer gefunden hat. :O)

Da werde ich nun selber im Quellcode schauen müssen wie ich Spammer abhalten kann, denn nach wie vor hasse ich Captcha & Co.

Thema: Wordpress | 14 Kommentare

“I don’t think CSRF is as big of a deal”

Samstag, 17. April 2010, 11:08 Uhr | Autor: ich

Es ist eine alte Wahrheit: Was Computern leicht fällt, fällt Menschen oftmals sehr schwer und umgekehrt. Und ein Web Vulnerability Scanner kann, wie auch ein Virenscanner, nur etwas finden wenn ihm ein entsprechendes Muster für Vergleiche vorliegt.

Kevin Beaver behauptet: Weil kommerzielle Schwachstellen-Scanner mit dem Aufspüren von CSRF-Lücken Probleme haben, so hätten auch Menschen Probleme beim Auffinden solcher Lücken. Und es wäre auch schwer eine gefundene Lücke auszunutzen. Seine Schlussfolgerung daraus: Man solle dieser Art von Schwachstelle weniger Beachtung schenken und lieber die offensichtlichen, leicht auffindbaren Lücken suchen und schließen.

Erst über den Blogeintrag “CSRF Isn’t A Big Deal – Duh!” (ha.ckers.org) von Robert “RSnake” Hansen bin ich auf Kevin Beaver gekommen.

Kevin Beaver hat angeblich 20 Jahre Erfahrung in der Branche. Und erzählt so etwas seinen Kunden? Wieder ein spezieller Experte. ;O)


Ich weiß nicht wie der Algorithmus eines Web Vulnerability Scanner aufgebaut ist um Lücken zu Cross-Site Request Forgery (de.wikipedia.org) zu finden, aber für mich als Human Web Vulnerability Scanner ist das Auffinden recht einfach.

Wenn eine CSRF-Lücke vorliegt besteht kaum ein Problem ein funktionierenden Exploit zu erstellen, etwas HTML- und JavaScript-Kenntnisse reichen vollkommen aus. Der Angreifer muss sein Opfer nur noch auf eine präparierte Website locken, um zum Ziel zu kommen.


Wenn beispielsweise das Anlegen eines neues Users in einem CMS über ein Formular erfolgt welches folgende Daten versendet:

http://wordpress/wp-admin/user-new.php
[POST]
action=adduser
&user_login=tester
&email=name@mail.tld
&pass1=12345678
&pass2=12345678
&role=administrator

So kann man davon ausgehen das eine CSRF-Lücke vorliegt.

In WordPress gibt es aber noch den Parameter _wpnonce der CSRF verhindert:

http://wordpress/wp-admin/user-new.php
[POST]
_wpnonce=abc123xyz789
&action=adduser
&user_login=tester
&email=name@mail.tld
&pass1=12345678
&pass2=12345678
&role=administrator

Der Wert hinter _wpnonce ist für eine bestimmte Aktion und einen bestimmten Blog immer derselbe. Sollte es, evtl. über eine Sicherheitslücke, möglich sein diesen Wert aus einem fremden Blog auszulesen oder ihn zu berechnen, so täte sich eine CSRF-Lücke auf.

Thema: CSRF, Wordpress | Kommentare geschlossen