[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: versuchte Attacken auf Webserver ueber die Logs identifizieren



Bjoern Meier schrieb:


Am 6. Januar 2010 11:57 schrieb Pawel Slabiak <p.slabiak@linux-services.org <mailto:p.slabiak@linux-services.org>>:

    Philipp Flesch wrote:

        Hi!
        Bei meinem wöchentlichen Blick in die Webserver-Logs habe ich
        wieder nette

        xxx.xxx.xxx.97 - - [05/Jan/2010:15:38:07 +0100] "GET
        /w00tw00t.at.ISC.SANS.DFind:) HTTP/1.1" 400 412 "-" "-" "-"

        Im Normalfall ignoriere ich so etwas ... bei all zu vielen
        Anfragen schicke ich einmal eine E-Mail an abuse@

        Frage an dieser Stelle:
        Gibt es ein Tool (gefunden habe ich keines), dass aehnlich wie
        rkhunter (mit einer Datenbank im Hintergrund) ueber die
        Log-Dateien geht und mich ueber entsprechende Versuche informiert?

        Danke schon einmal

        Philipp




    Hi Philipp,

    ich kenne das Problem und habe es folgendermassen geloest:

    1) Alle IP's der Angreifer kopiere in eine Datei namens w00tw00t_list.
    2) Fuehre das Skript von unten in regelmaessigen Abstaenden aus (am
    besten als Cronjob)
    3)Ebenfalls in reglmaessigen Abstaenden solltest du die Liste der
    Angreifer aktuallisieren (am besten mit einem shell script aus den
    logfiles des Apaches)


        #!/bin/sh

        for ip in $(< w00tw00t_list); do

        /sbin/iptables -I INPUT -s "$ip" -j DROP

        /sbin/iptables -I OUTPUT -s "$ip" -j DROP

        done


    Ich hoffe es hilft dir ;=))


Mich haben diese Teile auch genervt.  Meine Lösung:

1.) mit mod_security die anfrage filtern, loggen, fehler 500 angeben, ein eigenes errordocument zurückgeben (könnt ihr unter http://www.deliancourt.de/ testen sobald ihr w00tw00t abfragt) und ein script ausführen lassen
2.) script schreibt ip in eine blacklist
3.) ein script im Background setzt die ip auf DROP in einer gesonderten chain. 4.) alle tcp pakete mit dport 80 und 443 werden auf diese Chain erstmal umgeleitet
5.) mit cronjob die Chain einmal am tag säubern

Gruss,
Björn

Hi Björn,...

ich nutze http://denyhosts.sourceforge.net/faq.html das zwar für sshd gedacht ist, aber durchaus auch für Anfragen auf html "umgebastelt" werden kann.

Das script überwacht permanent ein festgelegtes Logfile und blockt den Attacker nach x Zugriffsversuchen.

Als regex kann man ein weiteres Script laufen lassen, das bei einer erfassten Attacke über die IP die abuse@email.addi raussucht und eine generierte mail an den Provider schickt, incl. der entsprechenden Zeilen aus dem Log.

Hat bei mir einigen Script-Kiddies schon 'n onlinefreien abend beschert *g

Gruß
Stefan


Reply to: