[despammed] [PLUTO-security] Firewall bucato?

Valentino Squilloni - OuZ ouz a people.it
Mer 25 Feb 2004 22:43:06 CET


On Tue, 24 Feb 2004, Stefano Callegari wrote:

[...]
> > Potresti postare tutte le regole che riguardano la chain INPUT che non ho
> > capito molto bene come funziona la cosa...

Devo dirti la verita`, ci ho messo un po` di tempo a rimettermi in chiaro
le idee che leggendo tutti questi messaggi (oggi non ne avevo avuto la
possibilita`) non capivo piu' di cosa stessimo parlando e quale era il tuo
firewall e quale quello di Salvatore :-D

> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 1024:65535 --dport 20:21
> -j ACCEPT  # ftp
> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 1024:65535 --dport 22 -j
> ACCEPT  # ssh
> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 1024:65535 --dport 25 -j
> ACCEPT  # smtp
> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 1024:65535 --dport 80 -j
> ACCEPT  # http
> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 1024:65535 --dport 110
> -j ACCEPT  # pop3
> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 1024:65535 --dport 3306
> -j ACCEPT  # mysql

Ok, questi sono tutti i servizi che offri, all'esterno giusto?

> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 20:21 -j allowed       #
> ftp
> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 22 -j allowed          #
> ssh
> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 23 -j allowed          #
> telnet
> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 25 -j allowed          #
> smtp
> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 53 -j allowed          #
> dns
> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 80 -j allowed          #
> http
> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 110 -j allowed         #
> pop3
> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 443 -j allowed         #
> https
> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 113 -j allowed         #
> authentication service

Questi sono tutte le porte alla quali permetti di entrare, e che poi fai
passare sono se solo ESTABLISHED,RELATED e se passano la chain syn-flood
Forse metterei prima il controllo sullo stato (che tu fai dopo nella chain
allowed) e dopo il controllo sulle porte e magari ci guadagni qualcosa in
prestazioni, ma bisognerebbe analizzare meglio la situazione.

> $IPTABLES -A tcp_packets -p TCP -j not_allowed  #  cattivi pacchetti
>
> #
> # se non è filtrato prima è OK
> #
>
> $IPTABLES -A tcp_packets -p TCP -s 0/0 --sport 1024:65535 -j allowed  #

Quest'ultima non serve, nessun pacchetto arrivera' qui visto che
matcheranno tutti la regola precedente e andranno in not_allowed

> Come prima, la linea inizia con $IPTABLES. A parte i servizi offerti
> dal server, ho tagliato tutto il resto.

Mi sono fatto un'idea migliore del tuo firewall e mi sembra abbastanza a
posto, forse e` solo un po` troppo complesso da debuggare visto che non ha
una struttura proprio lineare :-)

Riguardano i log che avevi postato nella prima mail direi che la
situazione e' ancora piu' tranquilla.  I bad packets sono semplicemente
pacchetti provenienti dalle porte che non hai definito fra quelle qui
sopra che buttano in allowed, quindi finivano in not_allowed e venivano
loggati e droppati.  I alw_packet vengono invece da porte ``permesse'' ma
che non superavano il test di established related e venivano anch'essi
loggati e droppati.

Cose che capitano spesso, anche con connessioni lecite.  Spesso a me
arrivano pacchetti dal mio newsserver che il firewall considera INVALID,
probabilmente sono duplicati di roba che hai gia' ricevuto, o altro...

Secondo me non devi preoccuparti.  Una volta che in INPUT accetti solo
established e related (anche se non facessi il controllo sulle porte) puoi
ritenerti gia' abbastanza tranquillo.

Ciao,
 Valentino.

-- 
>avendo accesso come root ad un server remoto, come potrei fare a rendere
>il sistema non utilizzabile ma in modo sottile ?
Se NT puo' installarsi via FTP, e' la tua risposta.
                -- Leonardo Serni


Maggiori informazioni sulla lista pluto-security