Wiki/Spam-Bots mit Müll füttern
Portal Portal   Forum Forum   Wiki Wiki   News News

Werkzeuge

LANGUAGES

Spam-Bots mit Müll füttern

Spambots grasen Webseiten mit Harvestern nach verwendbaren Adressen ab. Um deren Adressbestand einige ungültige Adressen unterzuschieben, kann man auf Webservern mit Apache das Modul mod_rewrite verwenden.

Anhand des User-Agent des Bots und der IP-Adresse (im Beispiel libwww-perl/5.803 und 212.19.46.52-212.19.46.54, die Daten stammen aus [1]) wird ihm der Inhalt von schoberbuster.php anstelle der aufgerufenen URL geliefert. In der PHP-Datei ist noch etwas Nacharbeit angesagt, um diese individueller erscheinen zu lassen. Insbesondere sollten noch Namen und Orte ergänzt werden.

Verbesserungen (17.11.2006):

1. Randomisierung abhängig von aktuellem Monat sowie Aufrufparameter, um wiederkehrenden Bots die gleichen Daten zu präsentieren

2. Alternativ kann man das Skript auch als normale Spamtrap verwenden, indem man einfach auf beliebigen Seiten einen Link in der Form /pfad/Hans-Dampf.html setzt. Dazu in der .htaccess den Teil zwischen "# Schober-spezifisch... # ...Schober-spezifisch" auskommentieren.


.htaccess

# bitte "pfad" anpassen
RewriteEngine on
RewriteBase /

# Schober-spezifisch...
#   Wenn User-Agent libwww...
RewriteCond %{HTTP_USER_AGENT} ^libwww-perl/5.803
#   ...und Adresse *.schober.de...
RewriteCond %{REMOTE_ADDR} ^212\.19\.46\.(5[2-4])
#   ...dann immer schoberbuster.php liefern
RewriteRule ^.*$ /pfad/schoberbuster.php
# ...Schober-spezifisch
RewriteRule ^pfad/(.*)-(.*).html$ /pfad/schoberbuster.php?vorname=$1&nachname=$2 [L]


schoberbuster.php

<?
# schoberbuster.php
# (C) 2006 by heinerle
#
# ekelhafte Adress-Sammler mit Müll füttern

# Beliebige Zahl 1..99 einsetzen
$myRnd=11;

$VornamenW=array("Andrea","Anke","Ariane","Brunhilde","Claudia","Margot",
  "Marion","Nele","Ottilie","Paula","Sabine","Wilhelmine","Xantippe");

$VornamenM=array("Albert","Andreas","Erich","Franz","Fritz","Hans","Heiner",
  "Heinz","Helmut","Helmuth", "Johann","Thomas","Viktor","Wilhelm","Xaver");

$Nachnamen=array("Bauer","Burda", "Haupt","Honecker","Huch","Kohl","Maier",
  "Meier","Meyer","Otto","Panz","Schober","Schulz","Schulze","Weber");

$Strassen1=array_merge($VornamenW, $VornamenM, $Nachnamen);
$Strassen2=array("allee","gasse","platz","str.","strasse","straße",
  "ufer","weg");

$OrteMitVorwahl=array(
	"01___ Dresden" => "0351",
	"04___ Leipzig" => "0341",
	"1____ Berlin" => "030",
	"2____ Hamburg" => "040",
	"5____ Köln" => "0214",
	"60___ Frankfurt" => "069",
	"652__ Wiesbaden" => "0611",
	"7____ Stuttgart" => "0711",
	"8____ München" => "089",
	"861__ Augsburg" => "0821",
	"90___ Nürnberg" => "0911"
);

$FreeMailer=array(
    "de.de", $_SERVER['HTTP_HOST'], gethostbyaddr($_SERVER['REMOTE_ADDR']), "us.de"
#	"freenet.de","gmx.de","gmx.net","web.de"
);

function fnVorname() {
	global $VornamenM, $VornamenW;
	if(rand(0,1)) { 
	    return $VornamenM[array_rand($VornamenM)]; 
	} else {
	    return $VornamenW[array_rand($VornamenW)]; 
	}
}

function fnNachname() {
	global $Nachnamen;
	return $Nachnamen[array_rand($Nachnamen)];
}

function fnStrasse() {
	global	$Strassen1, $Strassen2;
	if(rand()&1) {
		return $Strassen1[array_rand($Strassen1)].
		  $Strassen2[array_rand($Strassen2)];
	} else {
		return $Strassen1[array_rand($Strassen1)]."-".
		  ucwords($Strassen2[array_rand($Strassen2)]);
	}
}

function fnMakeEmail($Vorname, $Nachname){
	global $FreeMailer;
	switch(rand(0,3)) {
		case 0: $Email=$Vorname.".".$Nachname; break;
		case 1: $Email=substr($Vorname, 0, 1).".".$Nachname; break;
		case 2: $Email=$Vorname.".".substr($Nachname, 0, 1); break;
		default: $Email=$Vorname.$Nachname; break;
	}
	switch(rand(0,2)) {
		case 0: $Email=str_replace(".", "_", $Email); break;
		case 1: $Email=str_replace(".", "-", $Email); break;
	}
	return $Email."@".$FreeMailer[array_rand($FreeMailer)];
}

$Vorname=$_GET['vorname'];
$Nachname=$_GET['nachname'];

# Zufallswert, abh. von Monat und Aufrufparametern
srand(crc32($Vorname.date('F').$Nachname) / $myRnd);
if(!$Vorname) $Vorname=fnVorname(); 
if(!$Nachname) $Nachname=fnNachname(); 
$Strasse=fnStrasse();
$Hausnr=rand(1, 123);
$Ort=array_rand($OrteMitVorwahl);
$Vorwahl=$OrteMitVorwahl[$Ort];
$Ort=preg_replace("/_/e", "rand(0,9)", $Ort);
$Email=fnMakeEmail($Vorname, $Nachname);

print "<html>\n<head>\n  <title>".$Vorname." ".$Nachname."</title>\n";
print "  <meta name=\"robots\" content=\"follow,index\">\n";
print "  <meta name=\"keywords\" content=\"Visitenkarte,Kontakt,Person,Adresse,".
  $Vorname.",".$Nachname."\">\n";
print "  <meta name=\"description\" content=\"Visitenkarte von ".$Vorname." ".
  $Nachname."\">";
print "</head>\n<body>\n";
print "<h1>Visitenkarte von ".$Vorname." ".$Nachname."</h1>\n";

print "<p><hr>Hier etwas ausschmücken<hr><p>\n";

print "<img src=\"".strtolower($Vorname.$Nachname).".gif\" alt=\"".$Vorname." ".
  $Nachname."\" width=100 height=140 border=1><p>\n";
print "Adresse:<br>\n";
print $Vorname." ".$Nachname."<br>\n";
print $Strasse." ".$Hausnr."<br>\n";
print $Ort."<br>\n";
print "Tel.: ".substr($Vorwahl."/".rand(10000,getrandmax()), 0, 12)."<br>\n";
print "E-mail: <a href=\"mailto:".$Email."\">".$Email."</a><p>\n";

print "<p><hr>Hier etwas ausschmücken<hr><p>\n";

$Vorname=fnVorname();
$Nachname=fnNachname();
print "<a href=\"".$Vorname."-".$Nachname.
  ".html\" title=\"Visitenkarte von ".$Vorname." ".$Nachname."\">".$Vorname." ".
  $Nachname."</a><br>\n";

print "</body>\n</html>";

?>



Benutzeroptionen:
 Anmelden 

 Spezialseiten 
Diese Seite wurde zuletzt am 10. Oktober 2009 um 16:39 Uhr geändert. Diese Seite wurde bisher 21.639-mal abgerufen.
   © 1999 - 2018 Antispam e. V.
Kontakt | Impressum | Datenschutz

Partnerlink: REDDOXX Anti-Spam