Häufig bekomme ich E-Mails mit Error 404 Meldungen, daß ein Besucher Seiten aufruft, die nicht vorhanden sind, wie zum Beispiel:
http://meineseite/wp-admin/parameter-bloblo
oder ähnliche wp- Aufrufe. Doch auf meinem Server existieren gar keine wordpress Seiten, so dass klar ist, hier schauen Bots, ob man ggf. einen Angriff auf ein hier mögliches vorhandenes wordpress starten könnte.
Als Absender der aufrufenden Seite wurde als Referer „googlebot“ angezeigt, doch schaut google wirklich so nach wp-admin?
Die Frage ist also: Wie kann man herausfinden, ob der Besucher tatsächlich ein (möglich erwünschter) googlebot ist oder aber nur ein böser Spider, der sich als google ausgibt?
Die Lösung:
Es gibt unter Linux den Befehl host
Bei mir war die besuchende IP: 88.234.207.104
die sich im Referer als „googlebot“ ausgab.
Eine Eingabe von
#host 88.234.207.104
brachte dann als Ergebnis:
104.207.234.88.in-addr.arpa domain name pointer 88.234.207.104.dynamic.ttnet.com.tr.
Also, KEIN googlebot, sondern ein Lügenbold…
Hier mal als Gegenbeispiel eines ECHTEN googlebots:
#host 66.249.66.1
bringt als Ergebnis:
1.66.249.66.in-addr.arpa domain name pointer crawl-66-249-66-1.googlebot.com
Diese IP ist also ein echter googlebot
Zurück zu 88.234.207.104, wo für mich dann klar war, dass der gesamte Bereich, der zu dieser IP gehört, bei mir zukünftig unerwünscht wird.
Eine Abfrage, in welchem Bereich sich diese IP befindet, erhält man durch:
#whois 88.234.207.104
Dies zeigt unter anderem in den ersten Zeilen:
%Information related to ‚88.234.0.0 – 88.234.255.255‘
Und damit wurde bei mir dieser gefundene gesamte Bereich in der Firewall ausgeschlossen:
Dazu habe ich extra eine neue Chain für Bereiche angelegt mit:
#iptables -N BRANGE
dann mit:
#iptables -A BRANGE -m iprange –src-range 88.234.0.0-88.234.255.255 -j DROP
eingefügt. Danach muss unsere neue Kette aber auch eingebunden werden:
#iptables -I INPUT -j BRANGE
…fertig. Ab sofort haben wir eine eigene Firewall – Kette für Bereiche, die sich dann immer weiter erweitern lässt durch weitere Ranges, als Beispiel:
iptables -A BRANGE -m iprange –src-range 1.1.1.1-2.2.2.2 -j DROP
Wer die neue Kette wieder entfernen / löschen möchte:
Zuerst neue Kette leeren:
#iptables -F BRANGE
dann die Referenzierung der Kette wieder aufheben:
#iptables -D INPUT -j BRANGE
dann kann die Kette gelöscht werden:
#iptables -X BRANGE
Wer NUR EINE (die vielleicht angreifende) IP aussperren möchte, anstelle gleich einen ganzen Bereich, kann dies mit iptables so tun:
#iptables -I INPUT -s 88.234.207.104 -j DROP
oder auch wieder freigeben:
#iptables -D INPUT -s 88.234.207.104 -j DROP
Für mich ist aber der gesamte Bereich zukünftig ausgeschlossen von Besuchen auf meinem Server. „Späher“ die sich als seriöse Suchmaschinen – Spider ausgeben und dann gezielt nach Türen sucht, möchte ich generell nicht mehr haben.
Natürlich ist jedem selber die Entscheidung frei, ob er ein Bereich oder nur eine IP oder vielleicht überhaupt nicht sperren möchte, aber die Erfahrung zeigte mir oft, dass bei nur einer gesperrten IP dann andere aus demselben Bereich das Gleiche tun werden.
Views: 0