[LACNIC/Seguridad] Análisis de seguridad del pr otocolo IP

Fernando Gont fernando en gont.com.ar
Jue Ago 21 02:26:27 BRT 2008


At 10:38 p.m. 20/08/2008, you wrote:

>>Si el modulo IPv4 encuentra que el campo 
>>Version de un paquete que está procesando 
>>contiene por ejemplo el valor "6", entonces 
>>quiere decir que por ejemplo el campo "Protocol 
>>Type" del paquete Ethernet indicaba IPv4 
>>(mediante el valor 0x0800), mientras que el 
>>campo Version del IP header indica IPv6. Esto 
>>es un error, y por ello el paquete debería ser descartado.
>>
>>Lo que vos decís es que el texto parece indicar 
>>que en la link layer *siempre* se utiliza el valor 0x0800 para indicar IPv4?
>
>La verdad me cuesta generalizar, acordate que 
>mismo en Ethernet lo que se usa generalmente es 
>Ethernet II, pero existe 802.3, con LLC, existe 
>tocken ring, etc, habria que chequear todas las 
>implementaciones. Nunca he disenado stacks a 
>este nivel, pero esa frase me llamo la atencion.

El argumento del documento es que, para versiones 
distintas del protocolo IP (es decir, IPv6 vs. 
IPv6), siempre se usan valores distintos de 
"Protocol Type" a nivel link-layer. Por ello, los 
paquetes se demultiplexarán a distintos modulos 
de nivel software de la capa de red.

Si el modulo de IPv4 termina procesando un 
paquete IPv6, es simplemente porque el campo 
"Protocol Type" de la link layer estaba 
falsificado (es decir, se puso un 0x0800 en vez 
de 0x86DD (que es lo que se debería haber puesto).

Se entiende? (O es que me pasé algo por alto?)

Saludos,

--
Fernando Gont
e-mail: fernando en gont.com.ar || fgont en acm.org
PGP Fingerprint: 7809 84F5 322E 45C7 F1C9 3945 96EE A9EF D076 FFF1



------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <https://mail.lacnic.net/pipermail/seguridad/attachments/20080821/6b1fe483/attachment.html>


Más información sobre la lista de distribución Seguridad