{"id":340,"date":"2006-01-09T01:33:10","date_gmt":"2006-01-09T00:33:10","guid":{"rendered":"http:\/\/www.clausmoser.com\/?p=340"},"modified":"2006-01-09T01:46:00","modified_gmt":"2006-01-09T00:46:00","slug":"bad-kismet","status":"publish","type":"post","link":"http:\/\/clausmoser.de\/blog\/2006\/01\/09\/bad-kismet\/","title":{"rendered":"Bad Kismet"},"content":{"rendered":"<p>Sieht so aus, als ob es <a href=\"http:\/\/zed1.com\/journalized\/archives\/2006\/01\/07\/akismet-problems\/\">bei einigen Bloggern Probleme<\/a> mit <a href=\"http:\/\/akismet.com\">Akismet<\/a> gibt. Akismet ist die Anti-Spam-Software, die Matt Mullenwegs <a href=\"http:\/\/www.automattic.com\">Automattic<\/a> f\u00fcr <a href=\"http:\/\/wordpress.org\">WordPress<\/a> entwickelt hat und die in der <a href=\"http:\/\/wordpress.org\/download\/\">Version 2.0 <\/a> als Plugin <a href=\"http:\/\/wordpress.org\/development\/2005\/12\/wp2\/\">mitgeliefert wird<\/a>.<!--more--><\/p>\n<p>Akismet soll vor allem Kommentar-Spam verhindern. Wie es das macht, kann ich im Detail nicht sagen, aber &#960; mal Daumen funktioniert es so: Hinterl\u00e4\u00dft jemand auf meiner Website einen Kommentar (und h\u00e4tte ich Akismet installiert, was nicht der Fall ist), dann w\u00fcrde der an die Akismet-Datenbank geschickt und dort mit den vorhandenen Datens\u00e4tzen abgeglichen. Ist der Kommentator schon mal als Spammer auff\u00e4llig geworden (Name, IP usw.) oder enth\u00e4lt der Kommentar auff\u00e4llige Charakteristika (W\u00f6rter und Zeichenfolgen wie &#8222;V14gr4&#8220; oder &#8222;Pen1s&#8220;, \u00fcberm\u00e4\u00dfig viele Links usw.), wird er rausgekickt. Es gibt im Bearbeitungsmodus von WordPress eine \u00dcbersicht \u00fcber die 150 Kommentare, die zuletzt gel\u00f6scht wurden, so dass man Zweifelsf\u00e4lle (sogenannte falsch positive Ergebnisse) noch mal rausziehen kann.<\/p>\n<p>150 reicht nat\u00fcrlich dicke f\u00fcr die meisten Blogs, aber wer viele Kommentare kriegt, wird das vielleicht knapp bemessen finden. Und jetzt kommt noch ein weiteres Problem dazu: Die Zahl der falsch positiven Ergebnisse &#8211; also Kommentare, die als Spam identifiziert werden, obwohl sie keiner sind &#8211; scheint doch nicht so niedrig zu sein wie es bisher gehei\u00dfen hat (oder sie nimmt momentan deutlich zu).<\/p>\n<p>Das hei\u00dft nicht automatisch (oder automattisch, um im Kontext zu bleiben), dass Akismet nichts taugt, aber es zeigt doch ein paar Probleme, mit denen dieses Tool noch behaftet ist. Da sind einmal die technischen Probleme, die sich daraus ergeben k\u00f6nnen, wenn die Kommentare eine Zusatzschleife \u00fcber einen externen Server drehen (und die mit ein paar anderen Pro und Kontras <a href=\"http:\/\/boakes.org\/akismet\">hier behandelt werden<\/a>). In der Startphase hatte Akismet h\u00e4ufiger mit der Verf\u00fcgbarkeit der Datenbank-Server zu k\u00e4mpfen, und das hatte wiederum zur Folge, dass sich in manchen Blogs die unver\u00f6ffentlichten Kommentare stapelten. Inzwischen soll das Problem weitgehend behoben sein, aber nach allem, was ich so h\u00f6re, ist es durchaus noch denkbar, etwa mit einer DDoS-Attacke die Akismet-Server auszuhebeln und so zu versuchen, Spam in gro\u00dfem Stil durchzudr\u00fccken. (Fraglich h\u00f6chstens, ob der Aufwand die M\u00fche lohnt.)<\/p>\n<p>Ein anderer Punkt ist aber wichtiger, n\u00e4mlich dass solche <a href=\"http:\/\/www.paulgraham.com\/spam.html\">Bayesianischen Filtern<\/a> nicht unverwundbar sind, wenn man sie mit ihren eigenen Waffen schl\u00e4gt. Simple Tricks sind anonyme Proxies oder Phantom-IPs, aber da k\u00f6nnte man noch sagen: Irgendwann ist das Reservoir an Ausweichm\u00f6glichkeiten ersch\u00f6pft und alle in der Datenbank gelistet. Ein ernsthafteres Problem ist aber so etwas wie <a href=\"http:\/\/dougal.gunters.org\/blog\/2005\/12\/06\/poisoning-the-well\">semantische Brunnenvergiftung<\/a>, also zum Beispiel das wiederholte Posten von Dummy-Kommentaren, die keinen offensichtlichen Spam-Text und keine Links auf spamverd\u00e4chtige Seiten enthalten. Solche Texte werden entweder nicht aussortiert, oder sie werden aussortiert, man k\u00f6nnte sie aber f\u00fcr ein falsch positives Ergebnis halten und falls das h\u00e4ufiger vorkommt, den Spamfilter wegen vermeintlicher Untauglichkeit ausschalten. Das klingt auf den ersten Blick nach einer ziemlich aufw\u00e4ndigen Methode, aber da die Automattic-Leute momentan alles dran setzen, Akismet zu einer Art Standard-Tool f\u00fcr WordPress werden zu lassen, ist das nicht ohne: Eine zentrale Datenbank ist jedenfalls immer ein attraktiver Angriffspunkt, und da k\u00f6nnte schon jemand auf die Idee kommen, mit einer konzertierten Aktion die Akismet-Filter aus dem Konzept zu bringen. An die Akismet-API ist ja leicht ranzukommen, man braucht nur ein Account bei <a href=\"http:\/\/wordpress.com\">WordPress.com<\/a>, und seit die Plattform \u00f6ffentlich gemacht wurde, sind die ersten Spammer da schon mit Kommentaren und Splogs gesichtet worden. In <a href=\"http:\/\/comox.textdrive.com\/pipermail\/spam-stopper\/2005-September\/000031.html\">diesem Mailinglistenbeitrag<\/a> steht dazu eine interessante Anmerkung. Und was passiert, wenn ich einen Kommentator, der mir nicht pa\u00dft, als Spammer vermerke? Landet der dann auch in der Akismet-Datenbank und kann fortan auf keinem WordPress-Blog mehr kommentieren? Uff, da h\u00e4tte man ja ein sch\u00f6nes Zensur-Instrument.<\/p>\n<p>Und dabei haben wir noch gar nicht mal \u00fcber das Problem der Privatsph\u00e4re gesprochen: Wie verh\u00e4lt es sich denn damit, wenn private Kommentare an eine externe Datenbank geschickt werden? Werden die dort in irgend einer Form vorgehalten? Akismet gibt sich da ein bi\u00dfchen geheimniskr\u00e4merisch.<\/p>\n<p>Bleibt dann also nur noch Moderation? Auf privaten Blogs mit wenig Traffic geht das an. Aber Kommentare sind ja nicht nur dazu da, mit dem Autor eines Beitrags in Kontakt zu treten, sondern um <a href=\"http:\/\/boakes.org\/akismet#comment-4864\">die Diskussion unter den Lesern in Gang zu setzen<\/a>. Sinnvoll k\u00f6nnte sein, nicht nur ein, sondern mindestens zwei Tools nebenher laufen zu lassen. Ansonsten fand ich bisher, dass <a href=\"http:\/\/neuromancer.dif.um.es\/blog\/index.php?s=wp-morph&#038;submit=Search\">WP-Morph<\/a> einen guten Job erledigt. Und da das grade auch 2.0-tauglich gemacht worden ist, braucht man Akismet vielleicht gar nicht wirklich.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sieht so aus, als ob es bei einigen Bloggern Probleme mit Akismet gibt. Akismet ist die Anti-Spam-Software, die Matt Mullenwegs Automattic f\u00fcr WordPress entwickelt hat und die in der Version 2.0 als Plugin mitgeliefert wird.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-340","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"http:\/\/clausmoser.de\/blog\/wp-json\/wp\/v2\/posts\/340","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/clausmoser.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/clausmoser.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/clausmoser.de\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/clausmoser.de\/blog\/wp-json\/wp\/v2\/comments?post=340"}],"version-history":[{"count":0,"href":"http:\/\/clausmoser.de\/blog\/wp-json\/wp\/v2\/posts\/340\/revisions"}],"wp:attachment":[{"href":"http:\/\/clausmoser.de\/blog\/wp-json\/wp\/v2\/media?parent=340"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/clausmoser.de\/blog\/wp-json\/wp\/v2\/categories?post=340"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/clausmoser.de\/blog\/wp-json\/wp\/v2\/tags?post=340"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}