Justus Blümer

Negative Analytics: So wird Fake-Traffic generiert

In letzter Zeit höre ich immer häufiger Berichte von Onlinemarketern, die sich über die Ungenauigkeit ihrer Webanalyse beschweren. Nicht weil sie Probleme bei der Auswertung haben oder Tracking-Tags falsch implementiert sind, sondern weil Spambots automatisiert auf die Website zugreifen.

Semalt und anderer Referrer-Spam

Anders die meisten der anderen zahllosen Webcrawler, führen diese Bots auch JavaScript aus – also auch die Codes von Google Analytics & Co. und tauchen deshalb auch in ihren Statistiken auf.

Semalt und bfw [buttons-for-website.com] wird in letzter Zeit echt immer nerviger…
Adrian Berger, Web Analyst bei Immonet

Einer dieser Bots taucht immer wieder in den Google Analytics Statistiken in der Rubrik „Verweise“ auf: er gibt vor, über einen Verweis von *.semalt.com gekommen zu sein. Das Prinzip dahinter ist simpel: Semalt bieten auf ihrer kargen Landingpage ein nicht wirklich näher beschriebenes Tool zur Webanalyse an. Auch wenn ich die Behauptung „yesterday 16478 companies signed up for Semalt“ für absurd hoch halte – grundsätzlich wird das Schema wahrscheinlich funktionieren:

  1. Grundsätzlich an Webanalyse interessierter User einer eher kleinen Seite schaut sich die neusten Referrer-Statistiken an
  2. Entdeckt Semalt.com und schaut es sich sofort näher an, in der Hoffnung von dort organisch verlinkt worden zu sein
  3. Ist interessiert und meldet sich an

Next Level Faking: Relevante Mengen „Traffic“ generieren

Die paar vorgetäuschten Besucher sind schön und gut, relevant wird es aber erst bei größeren Zahlen. Um grundsätzlich mal zu zeigen wie einfach es ist, Google Analytics-Statistiken zu fälschen hier ein Screenshot aus der Echtzeit-Ansicht

Keiner dieser User war echt. Sie wurden alle durch dieses extrem einfache und kleine Programm simuliert:

var url = 'http://www.example.com/';

simulateUniqueVisitor(simulateUniqueVisitor);

function simulateUniqueVisitor(callback){
	var casper = require('casper').create();
	casper.start(url, function() {
	    console.log('Neuer unique visitor auf '+url+' generiert')
	});
	casper.run(function(){
		casper.clear();
  		phantom.clearCookies();
		callback(simulateUniqueVisitor);
		casper.page.close();
	});
}

Das ist weder Hexenwerk noch rocket science, sondern simples JavaScript, ausgeführt mit PhantomJS und seinem Wrapper CasperJS. Wer lieber Ruby nutzt, greift auf Capybara und Poltergeist zurück (danke für den Hinweis an Karl Kratz, der die beiden Tools auf dem ConversionSummit kurz erwähnt hatte).
Wichtig ist eigentlich nur: Die Seite und das in ihr enthaltene Tracking-JavaScript muss so schnell wie möglich in einem immer wieder frischen nicht-sichtbaren Browserfenster aufgerufen werden.

Footprints

Diese Methode ist weit weg davon, perfekt gefakte Statistiken zu liefern, sondern ist eher ein proof of concept. Wer gründlich vorgehen will, muss

Das ist alles clientseitig (= auf eurem Rechner) ohne größere Probleme machbar. Schwierig wird es bei der IP-Adresse, die sich nicht ohne weiteres fälschen lässt, sodass man auf Proxy-Server zurückgreifen muss. Selbst mit all den eben vorgeschlagenen Verschleierungen, die den Traffic echter erscheinen lassen, würde es sofort auffallen, wenn alle Besucher dem gleichen Standort zugeordnet würden, weil der auf der IP-Adresse basiert.
Zum Testen reicht vielleicht sogar eine kostenlose Proxyliste, für mehr gibt es diverse kommerzielle Anbieter, die auch private Proxies im Hunderter-Gebinde vermieten.

„Ja und?“ oder Mögliche Schadensszenarien

Faketraffic muss nicht zwangsläufig automatisch generiert sein. Mit Traffichändlern wie ChokerTraffic oder eBesucher können faule Angreifer schon mit minimalem Kapital die Besucher einfach einkaufen.
Auch der Missbrauch von bestehendem Traffic auf anderen Seiten ist möglich: Webspam-, Warez- und/oder Porn-basiertes Portal mit massig Besuchern aufbauen und die Zielseite im unsichtbaren iFrame laden.

Gegenmaßnahmen

Edit:

Weiterführende Links