Sunteți pe pagina 1din 34

INSTITUTO POLITCNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA


UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Prctica nmero 1

Anlisis de los protocolos ICMP, TCP y DNS con Wirwshark.

Programa acadmico: Ingeniera en Comunicaciones Y Electrnica.

Unidad de aprendizaje: Redes Convergentes.

Profesor: Flores Garca Vctor.

Alumno: Lpez Franco Juan Pablo.

Grupo: 9CV2.

1
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Objetivo

El objetivo de esta prctica es aprender a utilizar un conjunto de programas, la mayora de


ellos accesibles en forma de comandos u rdenes, que nos permitirn realizar diversas tareas
relacionadas con las comunicaciones en un host. Muchos de estos programas estn
disponibles con nombres iguales o muy parecidos en otros sistemas operativos. Las opciones
disponibles varan con las implementaciones y a veces una misma tarea puede llevarse a
cabo mediante diferentes comandos.

El objetivo de esta prctica es profundizar en el conocimiento de algunos de los protocolos


vistos en la asignatura (DNS, ARP, TCP, ICMP,...), empleando diversas aplicaciones del
sistema operativo que las implementan, as como el analizador de paquetes
(http://www.wireshark.org/).

Acreditar la materia de Redes Convergentes (n_n).

2
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Introduccin

Wireshark: Herramienta de sniffing y analizador de protocolos.

Un sniffer es una herramienta que se emplea para observar los mensajes que intercambian
dos entidades en comunicacin a travs de una red. El sniffer (literalmente "olfateador")
captura las tramas a nivel de enlace que se envan/reciben a travs de los interfaces de red
de nuestra computadora. Un dato importante es que un "sniffer" es un elemento pasivo:
observa los mensajes que intercambian aplicaciones y protocolos, pero ni genera informacin
por s mismo, ni es destinatario de sta. Las tramas que captura son siempre una copia
(exacta) de las que en realidad se envan/reciben en nuestra computadora personal. Un
analizador de protocolos es un sniffer al que se le ha dotado de funcionalidad suficiente como
para entender y traducir los protocolos que se estn hablando en la red. Es de utilidad para
desarrollar y depurar protocolos y aplicaciones de red. Permite al ordenador capturar diversas
tramas de red para analizarlas, ya sea en tiempo real o despus de haberlas capturado.

Por analizar se entiende que el programa puede reconocer que la trama capturada pertenece
a un protocolo concreto (HTTP, TCP, ICMP,...) y mostrar al usuario la informacin
decodificada. De esta forma, el usuario puede ver todo aquello que en un momento concreto
est circulando por la red que se est analizando. Esto ltimo es muy importante para un
programador que est desarrollando un protocolo, o cualquier programa que transmita y
reciba datos en una red, ya que le permite comprobar lo que realmente hace el programa.
Adems de para los programadores, estos analizadores son muy tiles para todos aquellos
que quieren experimentar o comprobar cmo funcionan ciertos protocolos de red, analizando
la estructura y funcionalidad de las unidades de datos que se intercambian. Tambin, gracias
a estos analizadores, se puede ver la relacin que hay entre diferentes protocolos, para as
comprender mejor su funcionamiento. Wireshark es un analizador de protocolos de red, con
interfaz grfico, que nos permitir capturar las tramas que entran y salen de nuestro
ordenador para luego "diseccionarlas" y estudiar el contenido de las mismas. Adems es un
software de libre distribucin que puede correr en distintas plataformas (Windows, Linux/Unix,
y Mac). Pero, probablemente, lo ms destacable sea su interfaz grfica y la potente capacidad
de filtrado que presenta.

3
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura1. Sniffer del programa Wireshark.

Protocolo ICMP

ICMP (Internet Control Message Protocol, Protocolo de Mensajes de Control de Internet) es


considerado como parte de la capa de red IP. ICMP es un protocolo empleado por los routers
(encaminadores) y por los hosts (clientes, servidores, etc) para comunicar la informacin de
control o de error de la red.

4
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura 2. Red de datos compuesta por Routers y Hosts.

Adems de los fallos en las lneas de comunicacin, IP tiene fallos en la entrega de


datagramas cuando la mquina destino est desconectada, cuando el tiempo de vida se
acaba o cuando existe congestin en los encaminadores. El protocolo IP no puede controlar
estas situaciones y los diseadores de TCP/IP crearon ICMP como mecanismo de informe de
errores y/o situaciones anmalas en la red. Una consideracin a tener en cuenta es que ICMP
informa de errores, pero no los corrige.

Los mensajes ICMP requieren dos niveles de encapsulacin. ICMP es transmitido en el


interior de datagramas IP, estructuras que viajan en la trama de cada red fsica:

Figura 3. Encapsulacin de protocolo ICMP.

5
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Aunque cada mensaje ICMP tiene su propio formato, todos comienzan con los mismos tres
campos; un campo TYPE (tipo) de mensaje, de 8 bits, que identifica el mensaje; un campo
CODE (cdigo) de 8 bits, que aporta ms informacin sobre el tipo de mensaje, y un campo
de verificacin SVT, de 16 bits. Los siguientes 32 bits despus del campo SVT tienen un
propsito que vara y depende tipo y cdigo del paquete ICMP considerado.

Figura 4. Esquema general de mensaje ICMP.

Un error ICMP enviado contiene siempre la cabecera IP y los 8 primeros octetos de datos del
datagrama que lo provoc. Ello permite al mdulo ICMP asociar el mensaje recibido a un
protocolo particular (TCP o UDP en funcin del campo protocolo de la cabecera IP) y a un
proceso de usuario determinado (mediante los nmeros de puerto de TCP o UDP).

Las situaciones expuestas a continuacin no generan mensajes de error ICMP:

Un mensaje de error ICMP. Un mensaje de error ICMP puede, a pesar de todo, ser generado
como respuesta a una solicitud ICMP.

Un datagrama destinado a una direccin IP de broadcast.

Un datagrama enviado como broadcast de la capa de enlace.

Un datagrama fragmentado que no sea el primero de la secuencia.

Un fragmento recibido fuera de secuencia.

Un datagrama cuya direccin fuente no est asociada a una nica mquina. Esto significa
que la direccin fuente no puede valer 0, ni ser el bucle local, ni una direccin broadcast.

Tabla 1. Tipos de mensajes ICMP.

6
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Mensaje ICMP Tipo


Respuesta de Eco. 0
Destino inaccesible. 3
Disminucin de origen. 4
Redireccin. 5
Solicitud de Eco. 8
Tiempo excedido para un datagrama. 11
Problema de parmetros de un datagrama. 12
Solicitud de timestamp. 13
Respuesta de timestamp. 14
Solicitud de informacin. 15
Respuesta de informacin. 16
Solicitud de mscara de direccin. 17
Respuesta de mscara de direccin. 18

Existe en los sistemas Unix, Linux, Windows 9X, NT, 2000, XP o Vista, un programa de
aplicacin denominado ping que presenta una serie de posibilidades que lo convierten en una
herramienta muy valiosa a la hora de depurar y localizar errores. Formalmente ping
proporciona una prueba de accesibilidad y estado de un destino. Ping se basa en el protocolo
ICMP, o protocolo de control de transmisin. A diferencia del resto de aplicaciones TCP/IP, no
utiliza ninguno de los protocolos de transporte TCP o UDP. Se apoya directamente sobre IP.
Este aspecto debe tenerse en cuenta, dado que la recepcin de una respuesta al comando
ping indica que la mquina remota est activa a nivel IP, pero no asegura que el
funcionamiento de su capa TCP o UDP sea el correcto.

ping utiliza un mensaje de peticin de echo (tipo 8) para enviar un datagrama a su


destinatario y espera el retorno de un mensaje echo reply (tipo 0) del destinatario. De este
modo, es capaz de evaluar tiempos de respuesta promedios. Dispone de varias opciones,
entre las que cabe destacar la posibilidad de modificar el tamao del paquete enviado, el
registro de ruta, y el control del nmero de paquetes enviados.

La respuesta que ping proporcionada en pantalla corresponde a una serie de lneas donde se
indica el tiempo de respuesta del echo ICMP y el nmero de secuencia. Despus de ejecutar
el comando, queda reflejado el nmero de paquetes perdidos, los tiempos mnimos, mximos
y medios de respuesta (ida y vuelta). Nos permitir conocer la tasa de error de un enlace as
como la velocidad real de transmisin de forma experimental.

Protocolo TCP

7
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

TCP (que significa Protocolo de Control de Transmisin) es uno de los principales protocolos
de la capa de transporte del modelo TCP/IP. En el nivel de aplicacin, posibilita la
administracin de datos que vienen del nivel ms bajo del modelo, o van hacia l, (es decir, el
protocolo IP). Cuando se proporcionan los datos al protocolo IP, los agrupa en datagramas IP,
fijando el campo del protocolo en 6 (para que sepa con anticipacin que el protocolo es TCP).
TCP es un protocolo orientado a conexin, es decir, que permite que dos mquinas que estn
comunicadas controlen el estado de la transmisin.
Las principales caractersticas del protocolo TCP son las siguientes:

TCP permite colocar los datagramas nuevamente en orden cuando vienen del
protocolo IP.

TCP permite que el monitoreo del flujo de los datos y as evitar la saturacin de la red.

TCP permite que los datos se formen en segmentos de longitud variada para
"entregarlos" al protocolo IP.

TCP permite multiplexar los datos, es decir, que la informacin que viene de diferentes
fuentes (por ejemplo, aplicaciones) en la misma lnea pueda circular simultneamente.

Por ltimo, TCP permite comenzar y finalizar la comunicacin amablemente.

El objetivo de TCP

Con el uso del protocolo TCP, las aplicaciones pueden comunicarse en forma segura (gracias
al sistema de acuse de recibo del protocolo TCP) independientemente de las capas inferiores.
Esto significa que los routers (que funcionan en la capa de Internet) slo tienen que enviar los
datos en forma de datagramas, sin preocuparse con el monitoreo de datos porque esta
funcin la cumple la capa de transporte (o ms especficamente el protocolo TCP).

Durante una comunicacin usando el protocolo TCP, las dos mquinas deben establecer una
conexin. La mquina emisora (la que solicita la conexin) se llama cliente, y la mquina
receptora se llama servidor. Por eso es que decimos que estamos en un entorno Cliente-
Servidor.
Las mquinas de dicho entorno se comunican en modo en lnea, es decir, que la
comunicacin se realiza en ambas direcciones.

Para posibilitar la comunicacin y que funcionen bien todos los controles que la acompaan,
los datos se agrupan; es decir, que se agrega un encabezado a los paquetes de datos que
permitirn sincronizar las transmisiones y garantizar su recepcin.

8
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Otra funcin del TCP es la capacidad de controlar la velocidad de los datos usando su
capacidad para emitir mensajes de tamao variable. Estos mensajes se llaman segmentos.

Figura 5. Mensaje de TCP.

Significado de los diferentes campos:

Puerto de origen (16 bits): Puerto relacionado con la aplicacin en curso en la


mquina origen

Puerto de destino (16 bits): Puerto relacionado con la aplicacin en curso en la


mquina destino

Nmero de secuencia (32 bits): Cuando el indicador SYN est fijado en 0, el nmero
de secuencia es el de la primera palabra del segmento actual.
Cuando SYN est fijado en 1, el nmero de secuencia es igual al nmero de secuencia
inicial utilizado para sincronizar los nmeros de secuencia (ISN).

Nmero de acuse de recibo (32 bits): El nmero de acuse de recibo, tambin llamado
nmero de descargo se relaciona con el nmero (secuencia) del ltimo segmento
esperado y no el nmero del ltimo segmento recibido.

Margen de datos (4 bits): Esto permite ubicar el inicio de los datos en el paquete. Aqu,
el margen es fundamental porque el campo opcin es de tamao variable.

Reservado (6 bits): Un campo que actualmente no est en uso pero se proporciona


para el uso futuro.

Indicadores (6x1 bit): Los indicadores representan informacin adicional:

9
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

URG: Si este indicador est fijado en 1, el paquete se debe procesar en forma


urgente.

ACK: Si este indicador est fijado en 1, el paquete es un acuse de recibo.

PSH (PUSH): Si este indicador est fijado en 1, el paquete opera de acuerdo


con el mtodo PUSH.

RST: Si este indicador est fijado en 1, se restablece la conexin.

SYN: El indicador SYN de TCP indica un pedido para establecer una conexin.

FIN: Si este indicador est fijado en 1, se interrumpe la conexin.

Ventana (16 bits): Campo que permite saber la cantidad de bytes que el receptor desea
recibir sin acuse de recibo.

Suma de control (CRC): La suma de control se realiza tomando la suma del campo de
datos del encabezado para poder verificar la integridad del encabezado.

Puntero urgente (16 bits): Indica el nmero de secuencia despus del cual la
informacin se torna urgente.

Opciones (tamao variable): Diversas opciones

Relleno: Espacio restante despus de que las opciones se rellenan con ceros para
tener una longitud que sea mltiplo de 32 bits.

La funcin multiplexor

TCP posibilita la realizacin de una tarea importante: multiplexar/demultiplexar; es decir


transmitir datos desde diversas aplicaciones en la misma lnea o, en otras palabras, ordenar la
informacin que llega en paralelo.

10
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura 6. Transmisin de diferentes mensajes en una misma lnea (multiplexaje).

Estas operaciones se realizan empleando el concepto de puertos (o conexiones), es decir, un


nmero vinculado a un tipo de aplicacin que, cuando se combina con una direccin de IP,
permite determinar en forma exclusiva una aplicacin que se ejecuta en una computadora.

Considerando que este proceso de comunicacin, que se produce con la transmisin y el


acuse de recibo de datos, se basa en un nmero de secuencia, las mquinas originadora y
receptora (cliente y servidor) deben conocer el nmero de secuencia inicial de la otra
mquina.

La conexin establecida entre las dos aplicaciones a menudo se realiza siguiendo el siguiente
esquema:

Los puertos TCP deben estar abiertos.

La aplicacin en el servidor es pasiva, es decir, que la aplicacin escucha y espera una


conexin.

La aplicacin del cliente realiza un pedido de conexin al servidor en el lugar donde la


aplicacin es abierta pasiva. La aplicacin del cliente se considera "abierta activa".

Las dos mquinas deben sincronizar sus secuencias usando un mecanismo comnmente
llamado negociacin en tres pasos que tambin se encuentra durante el cierre de la sesin.

Este dilogo posibilita el inicio de la comunicacin porque se realiza en tres etapas, como su
nombre lo indica:

11
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

En la primera etapa, la mquina originadora (el cliente) transmite un segmento donde el


indicador SYN est fijado en 1 (para indicar que es un segmento de sincronizacin),
con nmero de secuencia N llamado nmero de secuencia inicial del cliente.

En la segunda etapa, la mquina receptora (el servidor) recibe el segmento inicial que
viene del cliente y luego le enva un acuse de recibo, que es un segmento en el que el
indicador ACK est fijado en 1 y el indicador SYN est fijado en 1 (porque es
nuevamente una sincronizacin). Este segmento incluye el nmero de secuencia de
esta mquina (el servidor), que es el nmero de secuencia inicial para el cliente. El
campo ms importante en este segmento es el de acuse de recibo que contiene el
nmero de secuencia inicial del cliente incrementado en 1.

Por ltimo, el cliente transmite un acuse de recibo, que es un segmento en el que el


indicador ACK est fijado en 1 y el indicador SYN est fijado en 0 (ya no es un
segmento de sincronizacin). Su nmero de secuencia est incrementado y el acuse
de recibo representa el nmero de secuencia inicial del servidor incrementado en 1.

Figura 7. Negociacin en tres pasos

Despus de esta secuencia con tres intercambios, las dos mquinas estn sincronizadas y la
comunicacin puede comenzar.

Cmo terminar una conexin

El cliente puede pedir que se termine una conexin del mismo modo que el servidor.
Para terminar una conexin se procede de la siguiente manera:

12
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Una de las mquinas enva un segmento con el indicador FIN fijado en 1, y la


aplicacin se auto-coloca en estado de espera, es decir que deja de recibir el segmento
actual e ignora los siguientes.

Despus de recibir este segmento, la otra mquina enva un acuse de recibo con el
indicador FIN fijado en 1 y sigue enviando los segmentos en curso. Despus de esto, la
mquina informa a la aplicacin que se ha recibido un segmento FIN y luego enva un
segmento FIN a la otra mquina, que cierra la conexin.

Confiabilidad de las transferencias

El protocolo TCP permite garantizar la transferencia de datos confiable, a pesar de que usa el
protocolo IP, que no incluye ningn monitoreo de la entrega de datagramas. De hecho, el
protocolo TCP tiene un sistema de acuse de recibo que permite al cliente y al servidor
garantizar la recepcin mutua de datos.

Cuando se emite un segmento, se lo vincula a un nmero de secuencia. Con la recepcin de


un segmento de datos, la mquina receptora devolver un segmento de datos donde el
indicador ACK est fijado en 1 (para poder indicar que es un acuse de recibo) acompaado
por un nmero de acuse de recibo que equivale al nmero de secuencia anterior.

Figura 8. El segmento llega de forma correcta al destino.

13
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Adems, usando un temporizador que comienza con la recepcin del segmento en el nivel de
la mquina originadora, el segmento se reenva cuando ha transcurrido el tiempo permitido, ya
que en este caso la mquina originadora considera que el segmento est perdido.

Figura 9. El segmento no llega al destino y se retransmite.

Sin embargo, si el segmento no est perdido y llega a destino, la mquina receptora lo sabr,
gracias al nmero de secuencia, que es un duplicado, y slo retendr el ltimo segmento que
lleg a destino.

DNS

Domain Name System (DNS) es un sistema globalmente distribuido, escalable y jerrquico.


Ofrece una base de datos dinmica asociando direcciones IP de computadoras, servicios o
cualquier recurso conectado a internet o red privada con informacin de diverso tipo. Soporta
tanto IPv4 como IPv6, y la informacin se almacena en forma de registros Resource Records
(RR) de distintos tipos los cuales pueden almacenar direcciones IP u otro tipo de informacin.
Esta informacin se agrupa en zonas, que corresponden a un espacio de nombres o dominio
y que son mantenidas por el servidor DNS autoritativo de la misma. Fundamentalmente, DNS
se encarga de traducir direcciones IP de recursos de red a nombres fcilmente legibles y
memorizables por las personas, y viceversa. A esta accin se la conoce como resolucin
DNS. De esta forma, se establece un mecanismo amigable para la localizacin e
identificacin de recursos. Comnmente se usa la analoga de una gua de telfonos donde se
puede localizar a partir de un nombre su nmero asociado, o a la inversa. En este smil, los
nmeros representaran direcciones IP y los nombres, registros del espacio de dominios.

14
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

DNS usa para las comunicaciones el puerto 53, tanto para datagramas UDP como paquetes
TCP. Generalmente, en la actividad DNS se usan datagramas UDP ya que requieren menos
recursos de proceso y de red. Cuando el tamao de una respuesta supera el mximo
especificado en el estndar DNS para un paquete UDP (512 bytes, sin contar cabeceras IP o
UDP) y no se usa ENDS04 (que permite extender la consulta DNS hasta 4Kb) se pasa a
utilizar TCP por la necesidad de tener un control sobre en la capa de transporte, para asegurar
una correcta transmisin. En este caso, el servidor responde con el flag truncated (TC) y el
cliente reintenta la respuesta sobre TCP. Otras operaciones como las de transferencia de zona
se usan directamente TCP.

La implementacin de DNS tomando UDP como base principal para sus comunicaciones
supone el origen de multitud de amenazas relacionadas con la falta de fiabilidad intrnseca a
las transmisiones de este protocolo. Al no haber un control sobre los datos transmitidos por
UDP, se da por sentado que la fuente es fiable y que la respuesta siempre es recibida por el
solicitante. Esto tiene gran impacto en la seguridad de las comunicaciones y constituye un
vector de ataque fcilmente explotable. Sobre esto se discutir ms adelante en relacin a la
seguridad del protocolo.

Todas las comunicaciones en el protocolo DNS siguen un formato estndar llamado mensaje.
El mensaje se divide en una cabecera HEADER y 4 secciones: QUESTION, ANSWER,
AUTHORITY y ADITTIONAL. Dependiendo del tipo de mensaje alguna seccin puede ser
nula. La cabecera HEADER siempre est presente pues contiene importante informacin
sobre el contenido mensaje.

Tabla 2. Formato genrico de Mensaje DNS .

Seccin Descripcin
HEADER Contiene informacin sobre el tipo de mensaje. Incluye campos que
informan sobre el nmero de entradas en otras secciones del mensaje.
QUESTION Contiene una o ms solicitudes de informacin que se envan al servidor
DNS
ANSWER Contiene una o ms solicitudes de informacin que se envan al servidor
DNS
AUTHORITY Contiene uno o ms registros que apuntan al servidor autoritativo del
dominio en cuestin
ADDITIONAL Contiene uno o ms registros que apuntan al servidor autoritativo del
dominio en cuestin

La seccin HEADER de un mensaje DNS consta de 16 bytes que se desglosan en los


siguientes campos: ID:(16 bits octetos). Los dos primeros bytes se destinan al ID del mensaje.

15
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Este campo es especialmente importante ya que identifica el paquete y ser el objeto a atacar
cuando se intenta falsificar un mensaje.

QR (1 bit): Utilizado para indicar si se trata de una consulta (0) o una respuesta (1).

Opcode (4 bits): Indica el tipo de query, consulta estndar, consulta inversa, notificacin,
actualizacin dinmica o estado servidor.

Flags (4 flags de 1 bit). AA: Respuesta autoritativa. T

C: Truncation. Indica que el mensaje est truncado al haberse superado la longitud mxima
permitida en la transmisin.

RD:Recursion Desired, especifica que se solicita una consulta recursiva.

RA: Recursion Available. Denota en una respuesta que se ofrece la posibilidad de recursin. Z
(3 bits): Reservado para futuros usos.

RCODE (4 bits): Campo fijado en las respuestas informado del estado de la misma: No Error,
Error de formato, error del servidor, rechazada.

QDCOUNT,ANCOUNT,NSCOUNT,ARCOUNT (16 bits) Campos destinados a especificar el


nmero de entradas o registros en las secciones query, answer, authority y additional.

Figura 10. Seccin Header en mensaje DNS.


Campo ID, identificador del mensaje. Fuente: RFC1035

DNS est compuesto por un espacio de nombres de dominio organizados en jerarqua de


rbol donde se enlazan nodos, cada uno representando un nivel del espacio de dominios. El
nivel ms alto de toda la jerarqua es el dominio raz o root, representado por . (punto). Justo
un nivel por debajo se encuentran los Top Level Domains o TLDs. stos, a su vez, son nodos
padre de otros niveles inferiores que se conocen como TLDs de segundo nivel.
Sucesivamente, la jerarqua contina hasta llegar a un nodo final que representa un recurso.

16
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

El nombre formado por toda la cadena se conoce como Fully Qualified Domain Name (FQDN).
Una zona es una porcin del espacio de dominio de nombres cuya administracin es
delegada a un servidor DNS que ejerce como autoridad de esa porcin o dominio. A este
servidor se le conoce como servidor autoritativo de la zona.

La jerarqua comienza en la zona raz . siendo el nivel ms alto. Aunque normalmente no es


mostrado, todo dominio completo termina en un punto final . que indica el final del espacio
en la zona raz. Por ejemplo www.ejemplo.com realmente es www.ejemplo.com., donde el
punto final ms a la derecha representa la zona raz. Este dominio completo es lo que se
denomina Fully Qualified Domain Name (FQDN).

Figura 11. Jerarqua del espacio de nombres .

En DNS se utiliza el dominio in-addr.arpa para definir el espacio de direcciones IP. Mediante
este domino se garantiza la resolucin inversa de una direccin IP a su correspondiente
nombre y as facilitar su bsqueda en Internet.

Los subdominios en in-addr.arpa tienen una estructura de hasta 4 etiquetas (IP versin 4),
cada una de las cuales representara un octeto de una direccin IP. As por ejemplo la
informacin de la direccin IP 213.4.108.69 se localizara en el dominio 69.108.4.213.in-
addr.arpa. Obsrvese como se sigue el criterio jerrquico. Dominio 69.108.4.213.in-addr.arpa

17
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura 12. Dominio 69.108.4.213.in-addr.arpa.

Desarrollo

En esta prctica, hacer ping de una PC a una pgina WEB y capturar solicitudes y respuestas
de los protocolos DNS, ICMP y TCP en Wireshark. Tambin ver dentro de las tramas
capturadas para obtener informacin especfica. Este anlisis debe ayudar a aclarar de qu
manera se utilizan los encabezados de paquetes para transmitir datos al destino.

Debemos conocer la direccin IP de la PC y la direccin fsica de la tarjeta de interfaz de red


(NIC), que tambin se conoce como direccin MAC. Abrir una ventana de comandos,
escriba ipconfig /all y luego presione Entrar. Observar la direccin IP y la direccin MAC
(fsica) de la interfaz de la PC.

18
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura 13. Direccin fsica y direccin IP.

Escribir ipconfig /renew y luego presione Entrar. Observar la direccin IP y la direccin MAC
de la interfaz de la PC.

19
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura 14. Estado de los dispositivos de comunicacin de la PC.

Escribir nuevamente ipconfig /all y luego presione Entrar.

Figura 15. Muestra toda la informacin disponible en el adaptador.

Concesiones (Anlisis de los resultados obtenidos con el comando ipconfig/all)

Para optimizar los recursos de red, las direcciones IP se asignan con una fecha de inicio y de
vencimiento para su validez. Esto es lo que se conoce como "concesin". Un cliente que
detecta que su concesin est a punto de vencer, puede solicitarle al servidor una extensin
de la misma por medio de un DHCPREQUEST. Del mismo modo, cuando el servidor detecta
20
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

que una concesin va a vencer, enviar un DCHPNAK para consultarle al cliente si desea
extenderla. Si el servidor no recibe una respuesta vlida, convertir la direccin IP en una
direccin disponible.

Esta es la efectividad de DHCP: se puede optimizar la asignacin de direcciones IP


planificando la duracin de las concesiones. El problema es que, si no se liberan direcciones,
en un momento determinado no se podr cumplir con nuevas solicitudes DHCP debido a que
faltarn direcciones que puedan distribuirse.

En una red en la cual muchos equipos se conectan y desconectan permanentemente (redes


de escuelas o de oficinas de ventas, por ejemplo), es aconsejable ofrecer concesiones por
perodos cortos. En cambio, para una red compuesta principalmente por equipos fijos que se
reinician rara vez, las concesiones por perodos largos son ms que suficientes. No se olvide
que DHCP trabaja principalmente por transmisin y que puede ocupar ancho de banda en
redes pequeas con alta demanda.

Iniciar Wireshark y comenzar a capturar datos

Abrir el programa Wireshark y seleccionar la interfaz para analizar.

21
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura 16. Wireshark.

Mientras el programa Wireshark analiza la red en la ventana de comandos hacer pin y tracert
a www.youtube.com y ver qu pasa en el sniffer de Wireshark.

Con intervalos regulares (predeterminados por segundo), la PC origen (la que ejecuta el
comando ping) enva una "solicitud de eco" a la PC destino. Cuando se recibe el paquete
"respuesta desde", la PC origen muestra una lnea que contiene cierta informacin. En caso
de no recibir una respuesta, aparecer una lnea indicando que "el tiempo de espera agotado
para esta solicitud ".

22
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura 17. Ping y tracert a www.youtube.com.

Escriba icmp en el cuadro Filter (Filtro) que se encuentra en la parte superior de Wireshark y
presione Entrar o haga clic en el botn Apply (Aplicar) para ver solamente PDU de ICMP
(ping).

Figura 18. Olfateada de ICMP a www.youtube.com.


Ping depende del protocolo ICMP, el cual permite diagnosticar las condiciones de transmisin.

23
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

En el sniffer se puede apreciar que las direcciones origen y destino son las mismas que se
muestran en la ventana de comandos, esto indica que al hacer ping y tracert. Adems de
indicar cul es la direccin fsica o MAC de su adaptador de Red de la NIC origen y destino
(Ver figura 13).

Figura19. Direcciones MAC de la NIC origen y destino.

El tipo 0, corresponde a un comando " reply" enviado por la mquina fuente.

Figura 20. Solicitud de eco.

El tipo 8, corresponde a un comando "request" enviado por la mquina destino.

24
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura 21. Repuesta de eco.

Traceroute funciona gracias al campo TTL en los paquetes IP. Cada paquete IP posee un
campo de vida til (TTL) el cual se reduce cada vez que pasa por un router. Cuando este
campo llega a cero, el router determina que el paquete estuvo viajando en crculos, finaliza
este paquete y enva una notificacin ICMP al remitente.

Por esta razn, Traceroute enva paquetes a un puerto UDP sin privilegios, el cual se cree que
no est en uso, con un TTL configurado en 1. El primer router encontrado eliminar el paquete
y enviar un paquete ICMP que incluye la direccin IP del router y la demora del bucle. Luego,
el Traceroute aumenta el campo TTL de a 1 por vez para obtener una respuesta de cada
router en la ruta, hasta que obtiene la respuesta "puerto ICMP inalcanzable" de la PC destino.

En ocasiones y por diferentes motivos (problemas lgicos o fsicos) el paquete se pierden el


camino, por lo cual los routers generan colisiones para eliminar ese paquete y solicitar de
nuevo al remitente que se retransmita el paquete. Tambin el paquete puede ser enrutado
correctamente, pero la PC destino se desconect o se encuentra inalcanzable.

25
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura 22. Destino inalcanzable y tiempo agotado para que el paquete llegue al destino.

En las casillas de color verde se muestras direcciones origen y destino, estas direcciones son
la de los ruteadores que forman la trayectoria del paquete de origen a destino, durante el
proceso los ruteadores se hacen ping y tracert para determinar si la trayectoria est en
ptimas condiciones para transmitir el paquete. Curiosamente en las direcciones en donde se
mostraron problemas en el sniffer coinciden con las direcciones en las cuales no se muestra el
tiempo uno o ms de los tiempos de trayectoria del paquete.

26
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura 23. Errores en el enrutamiento de paquetes.

Anlisis TCP

En esta parte deje reproduciendo el video https://www.youtube.com/watch?v=ZwOxM0-byvc


mientras el sniffer se estaba ejecutando, solo fueron unos cuantos segundos de video, detube
la captura al darme cuenta que aparecian [ACK] y [SYN].

27
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura 24. Inicio del enlace de tres vas.

En la trama 583 es el inicio del protocolo de enlace de tres vas entre la PC y el servidor Web
de www.youtube.com . En el panel de la lista de paquetes seleccione la trama. La lnea se
resalta, y en los dos paneles inferiores se muestra la informacin decodificada proveniente de
ese paquete. Se puede apreciar que la direccin fsica es la misma del a Figura 13, de su
GATEWAY, mi idea es que YOUTUBE tiene un determinado nmero de equipos con diferentes
IP y MAC para una cantidad de videos y, para diferente contenido multimedia.

Figura 25. Interfaces destino.

La informacin es la siguiente:

Una suma de verificacin o checksum es una funcin hash que tiene como propsito principal
detectar cambios accidentales en una secuencia de datos para proteger la integridad de
estos, verificando que no haya discrepancias entre los valores obtenidos al hacer una
comprobacin inicial y otra final tras la transmisin. La idea es que se transmita el dato junto
con su valor hash, de esta forma el receptor puede calcular dicho valor y compararlo as con
el valor hash recibido. Si hay una discrepancia se pueden rechazar los datos o pedir una
retransmisin.

A las funciones hash (adopcin ms o menos directa del trmino ingls hash function) tambin
se les llama funciones picadillo, funciones resumen. Una funcin hash H es una funcin
computable mediante un algoritmo.

28
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura 26. Ejemplo de funcin de hash.

Seleccione otro paquete, cuando se estaba reproduciendo el video.

Figura 27. Informacin sobre la trama TCP para www.youtube.com.

Ya saba que TCP no era tan confiable, pero como no se trata de informacin valiosa, solo e
un video tal vez por eso la verificacin esta desactivada y adems los campos de urgente,
reestablecer conexin o de fin de conexin no estn con el bit 1 para corregir problemas, pero
tal vez en una ocasin en la que sea una transmisin en vivo de estos campos contengan otro

29
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

valor, adems de que la suma de verificacin este activada para que alguien ajeno a la
transmisin no altere la informacin o realice actos que perjudiquen a la conexin.

Figura
28. Puertos origen y destino.

Otra parte importante es el control de flujo (stream index). Relacionndolo con las clases
desincronizacin y multiplexaje, este sistema es plesiocrono, porque los paquetes no se
procesan al mismo tiempo que se reciben, o sea el equipo origen, en este caso YOUTUBE
enva ms paquetes (a veces, cuando no se traba el video) de los que una PC puede
procesar. Entonces las PCs necesitan de una memoria temporal para almacenar datos o
buffer, para despus procesar los paquetes recibidos.

Figura 29. Mi idea de buffer.

Anlisis DNS

En esta parte, est seleccionada la trama 264 de la captura de Wireshark en la lista de


paquetes para su anlisis. Los protocolos en esta consulta se muestran en el panel de
detalles del paquete de la ventana principal. Las entradas del protocolo estn resaltadas en
gris.

30
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura 30. DNS de youtbe, primer paquete .

En el panel de detalles del paquete, la trama 264 tiene 73 bytes de datos, tal como se muestra
en la primera lnea. Esta es la cantidad de bytes para enviar una consulta DNS a un servidor
de nombres que solicita direcciones IP de www.youtube.com.

En la lnea Ethernet II, se muestran las direcciones MAC de origen y destino. La direccin
MAC de origen proviene de la PC local, ya que esta origin la consulta DNS. La direccin
MAC de destino proviene del GATEWAY de salida de mi proveedor de servici.,

En la lnea Internet Protocol Version 4, la captura de Wireshark de paquetes IP indica que la


direccin IP de origen de esta consulta DNS es 192.168.1.70 y la direccin IP de destino es
192.168.1.254, el router es el GATEWAY predeterminado en esta red.

En este ejemplo, la longitud de este segmento UDP es de 39 bytes. De los 39 bytes, 24 bytes
se utilizan como encabezado. Los otros 15 bytes los utilizan los datos de la consulta DNS.
Estos 15 bytes estn resaltados en la Figura 31 en el panel de bytes del paquete de la
ventana principal de Wireshark.

31
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Figura 31. Campos de consultas DNS.

El valor de checksum se usa para determinar la integridad del paquete despus de haber
atravesado Internet. El encabezado UDP tiene una sobrecarga baja, porque UDP no tiene
campos asociados con el protocolo de enlace de tres vas en TCP por lo que no aparecen los
campos de la figura 27. Cualquier problema de confiabilidad de transferencia de datos que
ocurra debe solucionarse en la capa de aplicacin o por la capa 8.

Tamao de trama: 73 bytes.

Direccin MAC de origen: 90:48:9A:08:D8:77

Direccin MAC de destino: 68:8F:84:1C:49:EE

Direccin IP de origen: 192.168.1.70

Direccin IP de destino: 192.168.1.254

Puerto de origen: 51111

Puerto de destino: 53

32
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Conclusiones

La vida til del paquete (TTL). El campo de vida til permite conocer la cantidad de
routers por los que pas el paquete mientras viaj de una mquina a otra. Cada paquete IP
posee un campo TTL con un valor relativamente alto. Cada vez que pasa por un router, se
reduce el valor. Si alguna vez este nmero es cero, el router interpretar que el paquete est
viajando en crculos, por lo tanto, finaliza el proceso.

Durante el anlisis de ICMP los paquetes enviados desde www.youtube.com [216.58.193.14]

Eran dirigidos hacia el GATEWAY de la compaa que me proporciona el servicio se internet,


pero como soy el nico que espera el paquete y adems dentro de la trama de se encuentra
mi direccin, as que el reuter ms cercano a mi router (el que est en mi casa) se encarga de
mandarme el paquete para completar el proceso.

Habitualmente, las aplicaciones necesitan que la comunicacin sea fiable y, dado que la capa
IP aporta un servicio de paquetes no fiable (sin confirmacin), TCP aade las funciones
necesarias para prestar un servicio que permita que la comunicacin entre dos sistemas se
efecte libre de errores y sin prdidas. Tales conexiones pueden existir a travs de una serie
de conexiones punto a punto, por lo que estas conexiones extremo-extremo son llamadas
circuitos virtuales.

Tambin proporciona un mecanismo para distinguir distintas aplicaciones dentro de una


misma mquina, a travs de puertos.

Referencias

33
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD PROFESIONAL ZACATENCO
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Bibliografa:

Redes de computadoras, 5ta Edicin Andrew S. Tanenbaum y David J. Wetherall.

Bibliografa electrnica:

http://manualwireshark.blogspot.mx/

https://www.nebrija.es/~cmalagon/seguridad_informatica/Lecturas/TCP-V_ICMP_hxc.pdf

https://www.incibe.es/extfrontinteco/img/File/intecocert/ManualesGuias/guia_de_seguridad_en
_servicios_dns.pdf

https://www.incibe.es/extfrontinteco/img/File/intecocert/ManualesGuias/guia_de_seguridad_en
_servicios_dns.pdf

http://ecovi.uagro.mx/ccna1/course/files/7.2.1.8%20Lab%20-%20Using%20Wireshark%20to
%20Observe%20the%20TCP%203-Way%20Handshake.pdf

34

S-ar putea să vă placă și