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


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


Archivio: Novembre 2005 ml@sikurezza.org
Soggetto: Re: [ml] icmp e checksum
Mittente: billiejoex
Data: Thu, 24 Nov 2005 02:39:01 +0100 (CET)
Anzitutto grazie per le tempestive ed esaudienti risposte. Esistono
pochissime community italiane su cui poter fare affidamento in casi
particolari come questo.

Dario Lombardo wrote:
In ip e icmp checksum = header checksum.

Ok, devo quindi implementare a mano l'algoritmo di checksum e inserirne il valore nel payload di ICMP. Spero di non avere troppe difficoltà e che l'algoritmo sia semplice come dici.

Questo e' piu' difficile... A naso direi che lo stack lo cestina > senza
dire nulla, ma mi riservo di controllare e di rispondere
con certezza.

A questo punto, sapendo che i ckecksum si applicano a tutti e tre i protocolli, il discorso comincia a farsi complicato dato che devo gestire 3 possibili errori + 1 rappresentato dal payload di icmp. Uhm, uhm, uhm... Cosa mi converrebbe fare? Creare manualmente una funzione di checksum applicata all'intero pacchetto (eth+ip+icmp) ed integrarla nel payload di icmp? Non sapendo come si comportano i 2 strati in caso di checksum pervenuto errato mi pare la soluzione più sensata, anche se non sono sicuro sia fattibile nella pratica. E' possibile disabilitare i flag inerenti il checksum di ethernet ed ip? So che con ICMP è possibile farlo.

Devi anche tenere conto che aumentando oltre 1500 la dimensione
del pacchetto icmp esso verra' frammentato da IP, quindi
giungera' a destinazione come un burst di pacchetti frammentati e > non
come 1 pacchetto singolo

Questo cosa non la sapevo e mi complicherebbe di molto la vita. Vada per 1500
bytes fissi per pacchetto, allora.




Can't dig that daddy wrote:
"The ICMP messages typically report errors in the processing of datagrams.
To
avoid the infinite regress of messages about messages etc., no ICMP
messages
are sent about ICMP messages." --RFC792, pg1

Niente messaggio di ritorno allora. Meglio cosi. Gestisco la cosa manualmente lato server.

Scherzi a parte vai pure sui 1500 byte... ma non aspettarti nessun grado
di affidabilità.

Che ne pensi della mia idea espressa nel secondo quoting?
ICMP non garantisce alcuna sicurezza di integrità dei dati, è vero, ma si potrebbe
sempre implementarla manualmente...
Per creare una spartana forma di controllo sul recapito, ad esempio, ho
sfruttato con successo i pacchetti di ritorno generati da un ICMP_ECHO. Il
problema rimane quindi solamente uno e apparentemente, almeno per ora, mi
pare risolvibile, mediante qualche sotterfugio.






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

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