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


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


Archivio: Novembre 2005 ml@sikurezza.org
Soggetto: [ml] icmp e checksum
Mittente: billiejoex
Data: Wed, 23 Nov 2005 02:25:03 +0100 (CET)
Salve a tutti. Volevo addentrarmi nella scrittura di un applicativo in grado
di spedire file binari per mezzo di ICMP e a tale proposito necessito di
documentarmi riguardo alcuni aspetti fondamentali per portare a termine con
successo il mio piccolo esperimento.
L'idea di base (gia applicata con successo in un applicativo analogo di
shell tunneling over ICMP pecedentemente creato) consiste nel mandare un
file binario spezzettato all'interno di pacchetti ICMP successivamente
intercettati dalla controparte server che li ricompporrà su disco rigido. A
tal proposito necessito ovviamente di una certa sicurezza nel recapito e
nell'integrità dei dati spediti. Parto con le domande.

1 - in un pacchetto icmp generico come può essere quello generato da un
ping, quanti checksum ci sono in tutto? Solo quello applicato a icmp o anche
altri applicati ai protocolli inferiori ovvero ip ed ethernet?

2- nel caso di ip ed ethernet il checksum può essere applicato al solo
header in quanto il payload è rappresentato dall'header del protocollo
immediatamente superiore? E' esatto?

3 - la funzione di checksum di icmp si riferisce al solo header icmp o anche
al suo payload?

4 - cosa accade se il checksum di A spedito a B non collima? Se il checksum
controlla l'integrità del dato chi controlla checksum?

5 - conoscendo natura e algoritmo del checksum si potrebbe affermare che il
meccanismo sia infallibile? Può capitare che un insieme di dati venga preso
per corrotto quando non lo è e vice versa?

6 - Nel caso in cui i dati del pacchetto siano corretti e la parte "mal
trasmessa" sia proprio il valore di checksum cosa accade?

7 - In caso di checksum errato come gestisce la cosa icmp? Manda indietro un
pacchetto di  avviso? Se si di che tipo?

8 - la differenza tra checksum e hash riguarda la sola accuratezza di
verifica? A leggere le varie definizioni di checksum non mi è parsa lampante
alcuna differenza tra hash e checksum a parte quella sopra menzionata.

Due domande riguardo ICMP generico:

9 - ho effettuato delle prove provando a pingare differenti host con
pacchetti ICMP aventi buffer variabili abbastanza grandi (1000, 5000, 10000,
20000 bytes e oltre) e ho notato che ogni host si comporta in modo
differente. Ad esempio google risponde solo a pings con buffer < 1500 bytes,
altri hosts arrivano a rispondere anche a ping da 10000 bytes. Tale blocco
chi lo applica? Un eventuale firewall posto sulla macchina remota o il kernel della
macchina stessa?


10 - sparsi in giro per internet posso incappare in determinati routers che
negano il passaggio di pacchetti icmp aventi un buffer superiore a un certo
numero di bytes?  Esiste uno "standard internet" secondo cui un icmp non
debba superare una certa soglia?


Ringraziamenti anticipati all'intera ml.
billiejoex






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

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