Eigenes CPC-Script basteln - Ziel: vor Klickbetrug sicher
Verfasst: 20.08.2009, 16:40
Hi,
ich möchte mir gerne ein eigenes CPC-Script erstellen. D.h. ich suche mir Partner und jeden Besucher, den dieser mir vermittelt bringt ihm x Cent.
Nun wollte ich folgendes auf meiner Seite machen (der Partner bindet einfach nur meinen Link ein, sonst nichts):
1.) Tracking Cookie bei allen Besuchern setzen, so dass nur die vergütet werden, die unsere Seite nicht eh schon nutzen:
2.) Wenn der Besucher also kein Tracking-Cookie zurückgesendet hat und von unserem Partner kommt, blenden wir ein Bild ein:
3.) track.gif verweist per mod_rewrite auf track.php: (Adblocker haben manchmal was gegen Bilder, die auf .php enden)
Das Bild soll in diesem Fall davor schützen, dass jemand einfach nur seine Cookies löscht bzw. seine Internetverbindung kappt und die Seite erneut aufruft. Denn das reicht nicht. Er müsste zusätzlich seinen Browsercache löschen (was die wenigsten machen), damit das Tracking-Bild neu geladen wird. Ansonsten kommt zwar das Bild im Quelltext zum Vorschein, aber es wird nicht noch mal vom Server angefordert.
Auch werden so Crawler ausgeschlossen, da die eigentlich keine Cookies zurücksenden bzw. Bilder nicht laden.
Damit nun keiner hingeht und das Bild direkt aufruft, legen wir beim Aufruf der Seite einen Datensatz an:
Und beim Öffnen des Bildes wird er vervollständigt:
Nur was machen gegen ein Script, dass meine Seite mit gefälschtem Ref anpingt, die Tracking-ID exportiert und mit dieser dann das Bild anpingt?
Eine IP-Sperre wäre denke ich nicht sinnvoll, da es ja Provider gibt, die ihre IPs als Proxy einsetzen (wie z.B. AOL).
Also einzigen zusätzlichen Schutz würde mir eine Art Whitelist für die Browserkennung einfallen:
Aber das funktioniert ja auch nur, bis der Klickbetrüger sein Script um einen gültigen User-Agent erweitert. Aber jede Hürde ist ja bekanntlich sinnvoll.
Gibt es noch Ideen bzw. Lücken?
ich möchte mir gerne ein eigenes CPC-Script erstellen. D.h. ich suche mir Partner und jeden Besucher, den dieser mir vermittelt bringt ihm x Cent.
Nun wollte ich folgendes auf meiner Seite machen (der Partner bindet einfach nur meinen Link ein, sonst nichts):
1.) Tracking Cookie bei allen Besuchern setzen, so dass nur die vergütet werden, die unsere Seite nicht eh schon nutzen:
Code: Alles auswählen
if (!isset($_COOKIE['tid'])) {
$now = time();
$tid = md5(uniqid(mt_rand(), true));
setcookie('tid', $tid, $now + 31536000, '/', $cookie_domain);
Code: Alles auswählen
if (strpos($_SERVER['HTTP_REFERER'], 'example.org') !== false)) {
echo('<img src="track.gif" border="0" alt="" width="100" height="100" />');
}
}
Code: Alles auswählen
<?php
function display_tracking_image() {
// image data
$im = imagecreate(1, 1);
$blk = imagecolorallocate($im, 0, 0, 0);
imagecolortransparent($im, $blk);
// image output
header("Content-type: image/gif");
imagegif($im);
// free memory
imagedestroy($im);
}
if (strpos($_SERVER['HTTP_REFERER'], $_SERVER['SERVER_NAME']) !== false) && isset($_COOKIE['tid'])) {
add_click(); // fügt Klick zu Datenbank hinzu
}
display_tracking_image();
exit();
?>
Auch werden so Crawler ausgeschlossen, da die eigentlich keine Cookies zurücksenden bzw. Bilder nicht laden.
Damit nun keiner hingeht und das Bild direkt aufruft, legen wir beim Aufruf der Seite einen Datensatz an:
Code: Alles auswählen
INSERT INTO clicks (datum,tid) VALUES('20.08.', $tid)
Code: Alles auswählen
UPDATE clicks SET valid = 1 WHERE datum = '20.08' AND tid = $tid
Eine IP-Sperre wäre denke ich nicht sinnvoll, da es ja Provider gibt, die ihre IPs als Proxy einsetzen (wie z.B. AOL).
Also einzigen zusätzlichen Schutz würde mir eine Art Whitelist für die Browserkennung einfallen:
Code: Alles auswählen
if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false || strpos($_SERVER['HTTP_USER_AGENT'], 'Firefox') !== false || strpos($_SERVER['HTTP_USER_AGENT'], 'Opera') !== false) {
Gibt es noch Ideen bzw. Lücken?