Das nenne ich Aufopferung - n der Dokumentation zu einem rein tastenbedienten Mozilla:
You should never have to reach for your mouse. To make sure Conkeror remains pure, I do not own a mouse.
Wer also Maus-Phobiker ist, kann sich vielleicht mit dem Browser Erleichterung verschaffen.
Und weil ich ein experimentierfreudiges Kerlchen bin, hab ich das natürlich gleich mal ausprobiert. Ok, Emacs-Tastenbelegungen stinken (hey, ich bin VI-Man ) aber trotzdem ist das ganze durchaus benutzbar - man könnte sich dran gewöhnen, wenn denn die anderen Anwendungen im System eine ähnliche Bedienung hätten. Und noch ein Tipp für Mac-User: ja, das ganze funktioniert auch bei euch. Allerdings müsst ihr ja den Browser mit einem Parameter starten, der wird aber von Firefox.App nicht unterstützt. Statt dessen einfach folgendes Kommando im Terminal eintippen (Achtung, eine Zeile!): /Applications/Firefox.App/Contents/MacOS/firefox -chrome chrome://conkeror/content
Eventuell muss der Pfad zur Firefox.App angepasst werden. Danach geht ein kleines Fenster mit einer recht spartanisch gehaltenen Hilfedatei auf. Gut durchlesen, denn wenn man sich nicht wenigstens merkt wie man die Hilfeseite aufruft, wirds eng. Das grosse B geht zurück in der History, wenn ihr euch also vertüddelt, damit kommt ihr immer wieder zur Hilfe. Achja, und beenden geht nicht mit Apfel-Q - schliesslich ist es ja Emacs. Also die beiden Tasten Ctrl-X und C nacheinander drücken.
Da ich ja nun ein interessantes Studienobjekt hatte, wollte ich mal gucken inwieweit ich mit ein bischen Clusteranalyse in meinen Logfiles irgendwas interessantes zutagefördern würde. Ich habe also eine Matrix angelegt aus Referrern und zugreifenden IP-Adressen und mir damit mal einen Überblick über typische Userszenarien gemacht - also wie sehen normale User aus im Log, und wie sehen Referrer-Spammer aus und wie sieht unser Freund aus.
Alle drei Varianten lassen sich gut unterscheiden, auch wenn ich im Moment da noch eher davor zurückschrecken würde das algorithmisch zu fassen - das lässt sich nämlich alles recht gut simulieren. Trotzdem sind ein paar Auffälligkeiten zu sehen. Zuerst mal ein ganz normaler Benutzer:
aa.bb.cc.dd: 7 Zugriffe, 2005-02-05 03:01:45.00 - 2005-02-04 16:18:09.00
0065*-
0001*http://www.tagesschau.de/aktuell/meldungen/0,1185,OID4031994 ...
0001*http://www.tagesschau.de/aktuell/meldungen/0,1185,OID4031612 ...
0001*http://mudbomb.com/archives/2005/02/02/wysiwyg-plugin-for-wo ...
0001*http://www.heise.de/newsticker/meldung/55992
0001*http://log.netbib.de/archives/2005/02/04/nzz-online-archiv-n ...
0001*http://www.heise.de/newsticker/meldung/56000
0001*http://a.wholelottanothing.org/2005/02/no_one_can_have.html
Man sieht schön wie dieser User von meinem Weblog weggeklickt hat und wieder zurückgekommen ist - die Referrer sind nämlich mitnichten alles Links auf mich, sondern falsche Referrer die die Browser schicken, wenn der Benutzer von einer Site auf eine andere wechselt. Eigentlich sollen Referrer ja nur dann geschickt werden, wenn auch wirklich ein Link geklickt wird - kaum ein Browser macht das aber richtig. Der Besuch war an einem definierten Tag und er ist direkt eingestiegen durch Eingabe des Domainnamens (die "-" Referrer stehen oben und oben steht der früheste Referrer der vorkommt).
Oder hier mal ein Zugriff von mir:
aa.bb.cc.dd: 6 Zugriffe, 2005-02-04 01:11:56.00 - 2005-02-03 08:27:09.00
0045*-
0001*http://www.aylwardfamily.com/content/tbping.asp
0001*http://temboz.rfc1437.de/view
0001*http://web.morons.org/article.jsp?sectionid=1&id=5947
0001*http://www.tagesschau.de/aktuell/meldungen/0,1185,OID4029220 ...
0001*http://sport.ard.de/sp/fussball/news200502/03/bvb_verpfaende ...
0001*http://www.cadenhead.org/workbench/entry/2005/02/03.html
Ich erkenne mich daran, das Referrer mit temboz.rfc1437.de vorkommen - das ist mein Online-Aggregator. Sieht ähnlich aus - ne Menge falsch geschickter Referrer. Noch ein anderer User:
aa.bb.cc.dd: 19 Zugriffe, 2005-02-12 14:45:35.00 - 2005-01-31 14:17:07.00
0015*http://www.muensterland.org/system/weblogUpdates.py
0002*-
0001*http://www.google.com/search?q=cocoa+openmcl&ie=UTF-8&oe=UTF ...
0001*http://blog.schockwellenreiter.de/8136
0001*http://www.google.com/search?q=%22Rainer+Joswig%22&ie=UTF-8& ...
0001*http://www.google.com/search?q=IDEKit&hl=de&lr=&c2coff=1&sta ...
Dieser kam öfter (also mehrere Tage) über meine Update-Seite auf muensterland.org und zusätzlich hat er noch nach Lisp-Themen gesucht. Und vom Herrn der Schockwelle ist er auch mal gekommen. Absolut typisches Verhalten.
Jetzt mal im Vergleich ein typischer Referrer-Spammer:
aa.bb.cc.dd 6 Zugriffe, 2005-02-12 17:27:27.00 - 2005-02-02 09:25:22.00
0002*http://tramadol.freakycheats.com/
0001*http://diet-pills.ronnieazza.com/
0001*http://phentermine.psxtreme.com/
0001*http://free-online-poker.yelucie.com/
0001*http://poker-games.psxtreme.com/
Alle Referrer sind direkte Domain-Referrer. Keine "-" Referrer - also keine Zugriffe ohne Referrer. Keine sonstigen Zugriffe - würde ich es genauer analysieren nach Seitentyp, würde auffallen das keine Bilder etc. zugegriffen werden. Leicht zu erkennen - sieht einfach mager aus. Typisch ist auch das jede URL nur einmal oder zweimal angegeben ist.
Jetzt unser neuer Freund:
aa.bb.cc.dd: 100 Zugriffe, 2005-02-13 15:06:16.00 - 2005-02-11 07:07:55.00
0039*-
0030*http://irish.typepad.com
0015*http://www208.pair.com
0015*http://blogs.salon.com
0015*http://hfilesreviewer.f2o.org
0015*http://betas.intercom.net
0005*http://vowe.net
0005*http://spleenville.com
Was auffällt sind die Referrer ohne abschliessenden / - untypisch für Referrer-Spam. Ausserdem halt ganz normale Sites. Was auch auffällt, es werden Seiten zugegriffen ohne Referrer - dahinter verstecken sich die RSS-Feeds. Auch dieser ist also leicht von Usern zu unterscheiden. Vor allem da ein gewisser Rhythmus drin ist - scheinbar immer 15 Zugriffe mit einem Referrer, dann den Referrer wechseln. Entweder ist die Referrer-Liste recht klein, oder ich hatte Glück das er zweimal den gleichen bei mir probiert hat - einer ist nämlich 30x da.
Normale Bots braucht man nicht gross zu vergleichen - die wenigsten schicken Referrer mit und sind deshalb völlig uninteressant. Ich hatte einen, der mir aufgefallen war:
aa.bb.cc.dd: 5 Zugriffe, 2005-02-13 15:21:26.00 - 2005-01-31 01:01:07.00
2612*-
0003*http://www.everyfeed.com/admin/new_site_validation.php?site= ...
0002*http://www.everyfeed.com/admin/new_site_validation.php?site= ...
Eine neue Suchmaschine für Feeds die ich noch nicht kannte. Scheinbar hat der Admin gerade vorher irgendwo meine Adresse eingetragen und dann hat der Bot losgelegt die Seiten zu sammeln. Danach hat er dann im Administrationsinterface meine von ihm neu gefundenen Feeds freigeschaltet. Scheint ein kleines System zu sein - der Bot läuft von der gleichen IP wie das Administrationsinterface. Die meisten anderen Bots kommen von ganzen Botfarmen, Webspidern ist halt eine aufwändige Sache ...
Zusammenfassend lässt sich also feststellen, das die derzeitige Generation von Referrer-Spammer-Bots und anderen Mal-Bots noch recht primitiv aufgebaut ist. Sie benutzen keine Botnetze um viele unterschiedliche Adressen zu verwenden und sich dadurch zu verstecken, sie benutzen reine Server-URLs statt Seiten-URLs und haben auch sonst recht viele typische Kennzeichen wie z.B. bestimmte Rhythmen. Ausserdem kommen sie fast immer mehrfach.
Leider sind das keine guten Merkmale um sie algorithmisch zu fassen - ausser man lässt seine Referrer in eine SQL-Datenbank laufen und prüft jeden Referrer mit entsprechenden Selects auf die typischen Kriterien. Darüber könnte man dann durchaus die üblichen Verdächtigen erwischen und gleich auf dem Server blocken. Denn normale User-Zugriffe sehen deutlich anders aus.
Allerdings sind auch schon neue Generationen in der Mache - wie mein kleiner Freund, der mit dem fehlenden /, zeigt. Und dank der dämlichen Browser mit ihren falsch erzeugten Referrern (die viel mehr über die History des Browsers aussagen als über tatsächliche Link-Verfolgung) kann man nicht einfach die referenzierten Seiten gegenchecken, da viele Referrer reine Blindreferrer sind.
Ich hab gerade mal in meinen Referrern einige Referrer gefunden, auf denen ich absolut nichts finden konnte das auf mich verweist. Soweit nichts ungewöhnlich - Referrer-Spam wäre die erste Vermutung. Aber die in den Referrern genannten Seiten sind ganz normale Weblogs und andere Sites - keine Leute die Grund hätten für ihre Site zu spammen (zum Beispiel ein Blog mit ca. 1 Post pro Monat, oder eine Irin und noch so ein paar seltsame Referrer). Auch sind die Anzahlen anders als bei normalem Referrer-Spam: der kommt normalerweise entweder nur 1-2x oder wenn dann mit vielen Adressen und jede dann gleich 100x oder ähnliches. Dieser kommt ca. 15 mal.
Also habe ich mal in den Logs etwas gewühlt, ob ich da was finde. Und siehe da, die Referrer haben ungwöhnliche Merkmale: sie schliessen nicht mit einem / ab. Normalerweise wird eine Adresse die nicht auf / endet automatisch umgeleitet auf die /-Variante. Referrer sind also normaleweise /-terminiert oder direkte HTML-Seiten oder etwas vergleichbares. Reine Site-Angaben ohne / hinten dran sind eher selten.
Auch noch was anderes fällt auf: die Seiten wurden wirklich angesurft - bzw. mindestens runtergeladen. Und die zu einem Referrer gehörigen Seiten sind recht wild gewürfelt - bei normalen Usern erwartet man eigentlich eher irgendeine Form von Konsistenz in dem was per Referrer rüberkommt. Vor allem kommen selten 15 Links auf einen Schlag auf eine Seite ...
Und das wesentliche Kriterium: die IP des zugreifenden Rechners ist bei den verschiedenen immer die gleiche. Eine Auswertung ergab dann folgendes Bild:
15 betas.intercom.net
15 blogs.salon.com
15 hfilesreviewer.f2o.org
30 irish.typepad.com
5 spleenville.com
5 vowe.net
15 www208.pair.com
Alles eindeutig falsche Referrer. Zusätzlich noch 34 Zugriffe auf meine RSS-Feeds ohne Referrer. Zugriffe waren nur auf direkte Postings und RSS-Feeds - nicht auf Übersichtsseiten oder Archivseiten. Sieht sehr danach aus, das der Bot hier wie folgt vorgehen: RSS-Feeds suchen, diese abgreifen, da drin dann nach Permalinks auf Artikel suchen und diese runterziehen um z.B. an die Kommentarformulare zu kommen. Das ganze schön getarnt als angebliche Besucher, inkl. gefälschten Referrern die unverdächtig wirken. Auch nicht zu viele zugriffe eines Referrers, lieber das ganze öfter gewechselt.
Eigentlich nichts neues, beim eMail-Spam sind ja gefälschte echte Absender durchaus üblich und gängig um schwerer zu filtern zu sein. Aber bei Sammelbots sehe ich diese Art der Mimikry zum ersten Mal life - die Symptome beobachte ich auch erst ca. 1-2 Wochen bei mir.
Für Admins ist das ganze natürlich ziemlich nervig, da man die Referrer-Logs noch weniger gebrauchen kann als bisher schon. Bisheriger Referrer-Spam war zwar ein Ärgernis, aber aufgrund der ziemlich dämlichen Namen der Referrer leicht zu erkennen. Diese Form von Logphänomen verfälscht auch die Referrer - fällt aber wesentlich weniger auf. Könnte für Weblogs interessant sein die ihre Referrer direkt im Beitrag anzeigen.
Und natürlich bleibt auch noch das Problem, das ich ja noch nicht weiss was der Bot mit den gesammelten Erkenntnissen anfangen will. Wobei ich stark auf Spam tippe, aber das ist nur eine Vermutung - könnte auch ein Bot sein, der nach typischen Sicherheitslöchern sucht. Auf jeden Fall ist es ein Bot und auf jeden Fall hat er nichts gutes vor - denn sonst bräuchte er sich nicht zu verstecken.