Niektóre strony są jeszcze przed uderzeniem z niesławnym “w00tw00t” skanuje. Możesz zobaczyć te skany w dziennikach, jak:
... "GET /w00tw00t.at.ISC.SANS.DFind:) HTTP/1.1" 400 ...
Korzystanie Iptables
Najszybsza metoda upewniając się, że nigdy nie dociera do serwera (i powodują marnowanie zasobów takich jak procesor, miejsca na dysku [logów], etc) jest użycie iptables, i można to zrobić w jednej liniowej tak:
iptables -I INPUT -d xxx.xxx.xxx.xxx -p tcp --dport 80 -m string --to 70 --algo bm --string 'GET /w00tw00t.at.ISC.SANS.' -j DROP
Wystarczy wymienić xxx.xxx.xxx.xxx z IP serwera WWW. Jeśli chcesz użyć tego w odniesieniu do zakresu adresów IP (ie., korzystasz z wielu adresów IP do hosta serwerów), Wystarczy wymienić “-D xxx.xxx.xxx.xxx” Część z:
-m iprange --dst-range start.xxx.xxx.xxx-end.xxx.xxx.xxx
gdzie start.xxx.xxx.xxx i end.xxx.xxx.xxx to pierwszy i ostatni IP serwerów internetowych odpowiednio.
Jeśli chcesz mieć możliwość miłośnik, w którym je do czarnej listy będzie np. IP na czas określony, itp., Państwo sprawdzić SpamCle @ ner stronie internetowej.
Idą głębiej w ten temat i pod warunkiem, dwa skrypty pod koniec ich artykuł. Wystarczy zapisać jeden z tych skryptów w pliku o nazwie, Na przykład, / Opt/blockw00t.sh i uczynić go wykonywalnym z:
chmod +x /opt/blockw00t.sh
Możesz uruchomić go ręcznie wpisując “/ Opt / blockwoot.sh” w powłoce lub aby automatycznie ładować go przy starcie systemu można dodać go do / Etc / rc.local plik, lub na Debian / Ubuntu systemy dodać ją do / etc / network / interfaces tak jak:
auto eth0
inet eth0 static
... [existing configuration that remains unaltered] ...
# Load anti-w00t script:
post-up /opt/blockw00t.sh
Korzystanie Fail2ban
Jeśli używasz Fail2ban, jak opisano w konfiguracji firewalla Shorewall, można utworzyć nową definicję, która szuka w00tw00t wpisów w dzienniku serwera plików.
Następującą definicję przyjmuje pozycje dzienników serwera wygląda tak (Nginx i Apache 2):
203.127.11.214 - - [15/Jul/2010:15:50:04 +0200] "GET /w00tw00t.at.ISC.SANS.test0:) HTTP/1.1" 400 173 "-" "-"
Utworzyć plik / Etc/fail2ban/filter.d/webserver-w00tw00t.conf:
[Definition]
failregex = ^<HOST> .*"GET \/w00tw00t\.at\.ISC\.SANS\..+\:\).*?"
ignoreregex =
Tej połowy znanych wariantów skanera, łącznie z “DFind”, “test0″, “MSlog” i “ntsvc”.
Uwaga: The <gospodarz> część jest specyficzna dla Fail2ban i jest skrótem do regex (?:::f (4.6):)?(?P<gospodarz> S ), , który odpowiada zarówno IPv4 lub IPv6. Zobacz Fail2ban instrukcji więcej szczegółów.
* Wskazówka: Jeśli chcesz zmienić wyrażenie regularne, Polecam RegExr do gry z różnych opcji / kryteria wyszukiwania. Jest to czas oszczędzania i wolne :)
* Wskazówka 2: Sprawdzenia swojej definicji jest wyrażenie regularne, użyć:
fail2ban-regex logfile /etc/fail2ban/filter.d/webserver-w00tw00t.conf
gdzie logfile jest nazwa pliku dziennika, takich jak / Var/log/apache2/access.log.
Dodaj tę definicję do Fail2ban konfiguracji Jail (/ Etc/fail2ban/jail.conf):
... [existing configuration] ...
[webserver-w00tw00t]
enabled = true
port = http,https
filter = webserver-w00tw00t
# !!! Keep in mind to specify the correct web server log here:
logpath = /var/log/apache2/access.log
maxretry = 1
# Time in seconds, in this case, one day:
bantime = 86400
Teraz odświeżyć usługi (ie., “/ Reload etc/init.d/fail2ban” lub “Przeładuj Fail2ban usługi”).
Podobne posty:
