[ Home | Liste | F.A.Q. | Risorse | Cerca... ]


[ Data: precedente | successivo | indice ] [ Argomento: precedente | successivo | indice ]


Archivio: Settembre 2004 ml@sikurezza.org
Soggetto: Re: [ml] Ftp in modalità passiva
Mittente: Antonio Anselmi
Data: Fri,  3 Sep 2004 16:14:49 +0200 (CEST)
...forse un po' lungo e didascalico, ma e' mia opinione che tu ne abbia
bisogno.
Da quello che indichi il comportamento e' del tutto normale, conoscendo
le particolarita' del protocollo FTP: ovvero due connessioni usate, una
di controllo e l'altra per i dati.
Infatti la porta 4575 (detta effimera) e'quella che verra' usata come
end-connenction sul lato server per il trasferimento dei dati, ed e'
scelta dal tuo server stesso in virtu' del modo passivo richiesto e poi
accordato (come quasi di norma):
> 234.891422 69.xxx.xxx.xx -> Ip_server FTP Request: PASV

Il tuo server esegue una passive open su questa porta (ovvero ci rimane
in ascolto) e la comunica al client:
> 234.892022 Ip_server -> 69.xxx.xxx.xx FTP Response: 227 Entering Passive
> Mode (xxx,xxx,xxx,xxx,xx,xxx).

- rinominando i 6 byte del pacchetto qui sopra con Mode
(xxx,yyy,zzz,www,ss,ttt) dovresti vedere che 4575 e' il risultato del
calcolo ss x 250 + ttt, mentre xxx,yyy,zzz,www e' l'IP del tuo server -

Il client esegue a sua volta una active open dalla porta 64641 sulla
porta 4575 indicatagli:
> 235.002371 69.xxx.xxx.xx -> Ip_server TCP 64641 > 4575 [SYN] Seq=4168976254
> Ack=0 Win=64240 Len=0

ed il tuo server non ha quindi motivo di rifiutarla (e' nello stato di
passive open su quella porta - l'ha indicato lui stesso!):
> 235.002571 Ip_server -> 69.xxx.xxx.xx TCP 4575 > 64641 [SYN, ACK] Seq=3609198380
> Ack=4168976255 Win=65535 Len=0
> 235.112897 69.xxx.xxx.xx -> Ip_server TCP 64641 > 4575 [ACK] Seq=4168976255
> Ack=3609198381 Win=64240 Len=0

quindi inizia il trasferimento dei dati sulla connessione TCP che ha
come estremi le porte 64641 (sul lato client) e 4575 (sul lato server).

> Non è un comportamento fortemente insicuro questo? 
E' un comportamento conseguente al supporto della modalita' passiva,
ma...
Ora, se e' certamente poco elegante disattivare il supporto del server
alla modalita' PASV (puo' essere un problema per quei client FTP che si
trovino dietro a un firewall brutalotto) allora occorre prendere
precauzioni altrove: configurazione del servizio e firewalling.

Da una lettura di quello che scrivi il firewall accetta i SYN alla
'Moana Pozzi' (buonanima), ovvero su n-porte!
Se proprio si deve mantenere il supporto alla modalita' passiva allora
occorre cercare nel file di configurazione del servizio FTP il modo per:

- definire un range ristretto di porte allocabili per la modalita'
passiva e sul quale poi applicare le opportune politiche di firewalling

oppure

- fissare sempre e comunque la porta 20 (o una qualsiasi altra) e li'
filtrare

e comunque

- accertarsi sul firewall che l'IP dal quale proviene la connessione
sulla porta 21 sia il medesimo dal quale proviene il SYN sulla porta
effimera (20 o compresa nel range che sia).

Se il firewall e' un po' dozzinale (non consente tante fantasie al di
fuori di apri/chiudi) dovrai lavorare molto sulla configurazione del
servizio.
 
> Ogni 3 pacchetti di transmissione dei dati però appare una connessione dal client verso la
> porta 4575 del server. 

Durante la sessione FTP la connessione di controllo (quella sulla porta
TCP 21) rimane sempre aperta mentre la connessione dati (quella aperta
sulla porta effimera) puo' essere aperta e chiusa dinamicamente.
Comunque dovresti vedere che pacchetti sono (scrivi "connessioni"):
magari sono pacchetti vuoti, ovvero contengono il solo flag ACK? se si,
allora si tratterrebe di keep-alive ...anche se inusuali, vista la
esigua distanza di tempo. 

Quanto alla provenienza asiatica degli IP non saprei dirti ...forse sono
tenativi di individuare server FTP vulnerabili da usare come teste di
ponte per attacchi ad altre macchine. 
> 
> ______________________________________________________________________
> ________________________________________________________
> http://www.sikurezza.org - Italian Security Mailing List
-- 
                                             
  Antonio Anselmi                           
                                            
  www.blogin.it/                           
                                        
  ansanto@xxxxxxxxxx                
  ansanto@xxxxxxxxxxxx              
                                                   
                       






[ Home | Liste | F.A.Q. | Risorse | Cerca... ]

www.sikurezza.org - Italian Security Mailing List
(c) 1999-2005