Re: Stealth Test za pomoca http://www.pcflank.com/
Dnia środa, 13 kwietnia 2005 15:02, luk napisał:
Czytanie googla i innych dalo mi zalaczony skrypt.
Mimo tego komputer testu stelth dalej nie przechodzi tzn rezultat jest
nastepujacy
Packet' type Status
TCP "ping" stealthed
TCP NULL stealthed
TCP FIN non-stealthed
TCP XMAS non-stealthed
UDP stealthed
Naprawde nie mam juz pomyslu - pomocy
Co jest ciekawe to w logach nie ma zdarzen
SKAN_XMAS-NMAP i SKAN_FIN co raczej oznacza ze te reguly tych zdarzen nie
potrafia wychwycic
#!/bin/bash
#zeruj firewall
iptables --flush
iptables -P FORWARD ACCEPT
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -X skany
iptables -X syn-flood
#Budowanie firewall'a zaczynamy od zablokowania wszystkiego:
iptables -P INPUT DROP
#następnie przepuszczamy wszystko co idzie z naszej sieci lokalnej
#(a raczej wszystko co nie idzie z internetu czyli ppp0):
iptables -A INPUT -i ! ppp0 -j ACCEPT
# wykrywanie skanowania NULL
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j LOG --log-prefix "SKAN_NULL:
"
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
# wszystkie pakiety uznane za NEW bez flagi SYN sa podejrzane
iptables -N skany
iptables -A INPUT -p tcp ! --syn -m state --state NEW -j skany
iptables -A skany -p tcp --tcp-flags ALL RST -j LOG --log-prefix
"SKAN_INVERSE: "
iptables -A skany -p tcp --tcp-flags ALL RST -j DROP
iptables -A skany -p tcp --tcp-flags ALL ACK -j LOG --log-prefix
"SKAN_TCP_PING: "
iptables -A skany -p tcp --tcp-flags ALL ACK -j DROP
iptables -A skany -p tcp --tcp-flags ALL FIN -j LOG --log-prefix "SKAN_FIN: "
iptables -A skany -p tcp --tcp-flags ALL FIN -j DROP
iptables -A skany -p tcp --tcp-flags ALL FIN,URG,PSH -j LOG --log-prefix
"SKAN_XMAS-NMAP: "
iptables -A skany -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP
iptables -A skany -p tcp -m limit --limit 10/s --limit-burst 4 -j LOG
--log-level debug --log-prefix "SKAN_INNE: "
iptables -A skany -j DROP
# Lancuch syn-flood (obrona przed DoS)
iptables -N syn-flood
iptables -A INPUT -p tcp --syn -j syn-flood
iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j RETURN
iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j LOG --log-level
debug --log-prefix "SYN-FLOOD: "
iptables -A syn-flood -j DROP
# pakiety z nieporzadanych adresow
iptables -A INPUT -s 10.0.0.0/8 -j DROP # klasa A
iptables -A INPUT -s 172.16.0.0/12 -j DROP # klasa B
#iptables -A INPUT -s 192.168.0.0/16 -j DROP # klasa C
iptables -A INPUT -s 224.0.0.0/4 -j DROP # multicast
iptables -A INPUT -d 224.0.0.0/4 -j DROP # multicast
iptables -A INPUT -s 240.0.0.0/5 -j DROP # reserved
#loguj wybrane sytuacje
iptables -A INPUT -p icmp --icmp-type 8 -j LOG --log-prefix "Ktos nas
pinguje :"
#iptables -A INPUT -p tcp --dport 135 -j LOG --log-prefix "Port 135 :"
#iptables -A INPUT -p tcp --dport 137 -j LOG --log-prefix "Port 137 :"
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j LOG --log-prefix
"Logowanie poprzez SSH :"
iptables -A INPUT -p tcp --dport 2000 -m state --state NEW -j LOG --log-prefix
"Kamerka :"
#jesli chcemy aby nasz komputer odpowiadal na ping dodajemy
iptables -A INPUT -i ppp0 -p icmp -j ACCEPT
#przepuszczamy połączenia już zestawione ESTABLISHED i
#RELATED
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#zakresy do zablokowania
iptables -A INPUT -p udp -m state --state NEW -j DROP
iptables -A INPUT -p tcp --dport 1:21 -m state --state NEW -j DROP
iptables -A INPUT -p tcp --dport 23:79 -m state --state NEW -j DROP
iptables -A INPUT -p tcp --dport 81:112 -m state --state NEW -j DROP
iptables -A INPUT -p tcp --dport 114:442 -m state --state NEW -j DROP
iptables -A INPUT -p tcp --dport 444:1999 -m state --state NEW -j DROP
iptables -A INPUT -p tcp --dport 2001:32936 -m state --state NEW -j DROP
iptables -A INPUT -p tcp --dport 32938:65535 -m state --state NEW -j DROP
#Teraz przystępujemy do otwierania poszczególnych portów
#do serwisów uruchomionych na serwerze:
iptables -A INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT
# itd itd ..................... tutaj mam porty uslug
#ponieważ zablokowaliśmy cały ruch przychodzący ze świata nasz komputer
#nie odpowiada na standardowy "TCP reset" i #"ICMP port-unreachable response",
#w tym wypadku musimy dodać do naszego firewall'a linijki naprawiające ten
błąd:
iptables -A INPUT -p tcp -i ppp0 -j REJECT --reject-with tcp-reset
iptables -A INPUT -p udp -i ppp0 -j REJECT --reject-with icmp-port-unreachable
Reply to: