Tag Archive for 'http blacklist'

Neue Blacklist: httpbl.abuse.ch

Seit kurzem Betreibe ich die abuse.ch HTTP abuser list welche es bis an hin ermöglicht hat, unerwünschte Besucher wie Hacker und Script Kiddies (abuse.ch HTTP Honeypot list), aber auch gekaperte webserver (abuse.ch HTTP injection list) vom eigenen Webserver durch verwenden der .htaccess Datei oder des WP Ban Plugin fern zu halten.
Die Liste wurde rege benutzt, jedoch ist sie innerhalb eines Monats bereits auch über 2’300 angewachsen – viel zu gross also um per .htaccess Datei den Zugriff der entsprechenden ips zu sperren.
Aus diesem Grund habe ich mich entschlossen die abuse.ch HTTP abuser list in eine DNSBL umzuwandeln:

Die Blacklist ist über per DNS-lookup auf httpbl.abuse.ch oder combined.abuse.ch (welche auch dnsbl.abuse.ch und drone.abuse.ch beinhaltet) erreichbar. Die Blacklist kann nach einem Query drei verschiedene Antworten zurückgeben:

Response 127.0.0.2:
“Hacking activities / Script Kiddie” (ehemals “HTTP-Honeypot list”)
Response 127.0.0.3:
“Hijacked webserver / Scanning drone” (ehemals “injection list”)
Response 127.0.0.4:
“Referer Spam” (Neu)

Neu hinzugekommen sind ips, welche mir durch “Referer spam” aufgefallen sind. In letzter Zeit scheint dies eine immer mehr verbreitete Methode zu sein um Webseiten ein besseres ranking bei Suchmaschinen zu verschaffen. Mühsam für Webmaster, denn die Webserver Logfiles füllen sich mit Müll und verfälschen die Statistiken:

[Apr-28-2008 14:35:02] 87.118.101.102 tor-anonymizer1.dotplex.de http://www.lindhouseint.com
[Apr-28-2008 14:35:02] 87.118.101.102 tor-anonymizer1.dotplex.de http://www.lindhouseint.com
[Apr-28-2008 14:51:02] 60.50.188.92 92.188.50.60.cbj01-home.tm.net.my http://watchspongebobonline.com/
[Apr-28-2008 14:51:06] 60.50.188.92 92.188.50.60.cbj01-home.tm.net.my
[Apr-28-2008 22:48:46] 218.111.163.223 223.163.111.218.cbj01-home.tm.net.my http://www.yourdomainheretofast4u.com
[Apr-28-2008 22:48:49] 218.111.163.223 223.163.111.218.cbj01-home.tm.net.my
[Apr-28-2008 22:51:29] 218.111.163.223 223.163.111.218.cbj01-home.tm.net.my http://moneyonlineguides.blogspot.com
[Apr-28-2008 22:51:38] 218.111.163.223 223.163.111.218.cbj01-home.tm.net.my
[Apr-29-2008 06:00:31] 63.25.129.38 1Cust294.an2.dfw28.da.uu.net http://pantyjobs.tk
[Apr-29-2008 06:00:33] 63.25.129.38 1Cust294.an2.dfw28.da.uu.net http://pantyjobs.tk
[Apr-29-2008 09:14:06] 123.116.146.187 123.116.146.187 http://www.yaomaishu.com
[Apr-29-2008 09:14:07] 123.116.146.187 123.116.146.187
[Apr-29-2008 12:26:33] 119.111.96.120 119.111.96.120 http://yourhotpics.blogspot.com/2008/03/tara-reid.html
[Apr-29-2008 12:26:34] 119.111.96.120 119.111.96.120 http://yourhotpics.blogspot.com/2008/03/scarlett-johansson.html
[Apr-29-2008 12:26:36] 119.111.96.120 119.111.96.120 http://yourhotpics.blogspot.com/2008/03/rose-mcgowan.html
[Apr-29-2008 12:26:38] 119.111.96.120 119.111.96.120 http://yourhotpics.blogspot.com/2008/03/kate-beckinsale.html
[Apr-29-2008 12:26:42] 119.111.96.120 119.111.96.120 http://yourhotpics.blogspot.com/2008/03/measurements.html

Die neusten Änderungen an httpbl.abuse.ch können im Activity Log eingesehen werden. Die Statistik der abuse.ch HTTP abuser list wurde ebenfalls migriert: httpBL statistic


Anwendungsmöglichkeiten
Es gibt verschiedene Möglichkeiten zu überprüfen, ob ein Besucher auf httpbl.abuse.ch geblacklisted ist.


mod_defensible
Die beste Variante ist die überprüfen durch das Apache2 Module mod_defensible (download). Mit diesem Module ist es möglich zu überprüfen ob die IP-Adressen der Besucher auf einer Blacklist stehen. Falls dies zutrifft wird ein HTTP Error 403 (Forbidden) gesendet. Hier ein kleines How-To:

Voraussetzung ist natürlich die Verwendung des Apache2 Webservers. Zusätzlich müssen noch zwei weitere Komponenten installiert werden:

apt-get install apache2-prefork-dev libtool

Dann muss mod_defensible herunter geladen …

wget http://julien.danjou.info/mod_defensible/mod_defensible-1.4.tar.gz

… und entpackt werden

tar xfv mod_defensible-1.4.tar.gz

Danach muss in den Ordner mod_defensible-1.4 gewechselt…

cd mod_defensible-1.4

und das Konfigurations-Script ausgeführt werden:

./configure

Nun compilieren wir das ganze mit

make

und

make install

Das Modul sollte nun automatisch aktiviert werden falls nicht kann folgendes versucht werden:

Folgende Datei erstellen:

/etc/apache2/mods-available/defensible.load

Mit folgendem Inhalt:

LoadModule defensible_module /usr/lib/apache2/modules/mod_defensible.so

Erstellen des symlink:

ln -s /etc/apache2/mods-available/defensible.load /etc/apache2/mods-enabled/defensible.load

Als letztes müssen wir das Modul noch konfigurieren. Dazu müssen folgende Zeilen am ende eurer Apache2 Konfigurationsdatei hinzugefügt werden (normalerweise liegt diese in /etc/apache2/apache2.conf):

# Configure mod_defensible
DnsblUse On
DnsblServers httpbl.abuse.ch

Wichtig! Der Webserver sollte neu gestartet werden um die neue Konfiguration anzuwenden:

/etc/init.d/apache2 restart

Besucht nun eine User die Webseite wessen IP-Adresse geblacklisted ist, wird ein HTTP Error 403 ausgegeben:

Forbidden

You don’t have permission to access / on this server because you are currently blacklisted by a DNSBL server at: httpbl.abuse.ch

Zusätzlich wird ein entsprechender eintrag im error.log erstellt:

[Wed Apr 30 15:50:12 2008] [error] [client 212.1.57.12] denied by DNSBL: httpbl.abuse.ch for: /



abuse.ch httpBL WordPress Plugin
Für diejenigen welche WordPress verwenden habe ich ein entsprechendes Plugin geschrieben, welches ebenfalls die IP-Adresse des Besuchers überprüft:

1. Herunterladen des Plugins (download link)
2. Entpacken des Archives in das WordPress PlugIn Verzeichnis (Normalerweise /wp-content/plugins/)
3. Aktivieren des Plugins unter Plugins-> “Activate”

Wenn ein Zugriff blockiert wurde, wird automatisch ein Logfile namens “httpbl.log” im root Verzeichnis erstellt:

[May-01-2008 10:57:23] – test.blabla.com (235.12.5.1.19) Response: 127.0.0.2



RBL check mitmod_security
Für diejenigen, welche mod_security für Apache2 verwenden (sehr empfehlenswert) kann httpbl.abuse.ch ganz einfach abgefragt werden. Es müssen nur die folgenden zwei Zeilen in das ruleset file geschrieben werden (Nicht vergessen nach der Anpassung den Apache2 Dienst neu zu starten!):

SecRule REMOTE_ADDR “@rbl httpbl.abuse.ch” “chain,deny, log, id:350000,msg:’RBL: httpbl.abuse.ch’,severity:’1′”
SecRule REMOTE_ADDR “!127.0.0.1″

Ob die Konfiguration stimmt (egal was für eine methode man wählt), kannt mit dem folgendem Script getestet werden: httpBL.abuse.ch configuration check

Für Fragen & Anregungen schreibt mir eine email oder hinterlässt mir einen Comment.

Link: http://dnsbl.abuse.ch




economics-recluse
Scene
Urgent!