SNIFFERS - By AcidBorg


INTRODUCCIÓN A LAS REDES ETHERNET

Entre todo el abanico de sniffers existentes para cada tipo de red me voy a centrar en los que se utilizan en las redes Ethernet,ya que considero que son las redes más utilizadas en todo el mundo debido a su bajo coste y facilidad de montaje.

Las redes Ethernet suelen estar montadas en topología de BUS, es decir, todos los ordenadores están conectados a un mismo cable a través del cual envían y reciben los datos. Este cable puede estar conectado a dispositivos como HUBS o SWITCHES, pero nosotros vamos a centrarnos en la red Ethernet más primitiva: un cable al que se conectan todos los ordenadores y un ROUTER al final de este cable que conecte la red local (LAN - Local Area Network) con internet.

La transferencia de datos en este tipo de redes se realiza de la siguiente forma: cuando un ordenador quiere enviar un paquete, comprueba que el BUS esta libre y lo envía. Si varios ordenadores envían un paquete por el BUS al mismo tiempo, se produce una colisión, por lo que los ordenadores esperan un tiempo aleatorio antes de volver a enviar el paquete.

Para que los ordenadores puedan enviar y recibir paquetes a través de la red necesitan una tarjeta de red Ethernet. Esta tarjeta contiene en su memoria una dirección MAC (Media Access Control) única que la distingue de las demás tarjetas de la red (algo así como el DNI en los humanos), por lo que no puede haber 2 tarjetas con la misma MAC.

Las direcciones MAC tienen 48 bits de longitud y su representación en hexadecimal es la siguiente: XX:XX:XX:XX:XX:XX (Siendo cada X un valor entre 1 y F). Cada paquete que se manda a través de la red contiene la MAC del ordenador que lo originó,la MAC del ordenador al que va dirigido, el tipo de datos que contiene, los datos en sí y un CHECKSUM para comprobar que la transferencia fue correcta.

Pese a que todos los paquetes pasan a través del mismo cable, cada ordenador sólo es capaz de escuchar los paquetes que vayan dirigidos a él (los que contengan su MAC) o los que estén dirigidos a todos los ordenadores a la vez (los que contengan la MAC FF:FF:FF:FF:FF:FF que es la MAC de BROADCAST).

Alguno ya estará diciendo: -Todo esto es muy bonito, pero si yo utilizo el protocolo TCP/IP para conectarme a internet y para el resto de programas en mi LAN, ¿de que me sirve toda esta charla?. Todo a su debido tiempo.

Recordemos que las direcciones IP son de 32 bits del estilo XXX.XXX.XXX.XXX (con valores entre 1 y 255 en cada campo),así que para utilizar protocolos basados en IP (como TCP/IP) es necesario asociar a cada dirección IP su correspondiente dirección MAC. Esto se soluciona mediante el protocolo ARP (Address Resolution Protocol). Para saber a qué dirección MAC corresponde una determinada IP, este protocolo manda un paquete BROADCAST, es decir, con dirección MAC FF:FF:FF:FF:FF:FF (para todos los ordenadores) preguntando quién es el dueño de dicha IP. Todos los ordenadores reciben dicho paquete, pero únicamente responde el dueño de dicha IP, con lo que el protocolo ARP guarda la relación entre las direcciones IP y MAC en el caché ARP para usarla posteriormente.

Es en este punto donde entran en acción nuestros amigos los sniffers...

¿QUÉ ES UN SNIFFER?

Después del rollo teórico, pero necesario no obstante para poder seguir el hilo de la explicación, voy a pasar a explicar qué es un sniffer. Un sniffer es un programa (también puede ser un componente hardware pero no vamos a tratar esa opción aquí) que configura la tarjeta de red en MODO PROMISCUO, es decir, que en vez de escuchar únicamente los paquetes que contengan su MAC, escucha TODOS los paquetes que pasan por la red. Esto no quiere decir que responda a todos los paquetes que le lleguen, sino simplemente que los lee.

¿Y para qué me sirve a mi esto? Bueno, quizás os interesa más si os digo que con un sniffer instalado en una red se pueden capturar los nombres de ususario/contraseñas de toda la red, así como información confidencial de los usuarios y comprometer con todo ello la seguridad de cualquier sistema conectado a la red. Basta con analizar todos los paquetes que recibe la tarjeta de red en modo promiscuo con algún tipo de filtro que busque contraseñas o protocolos concretos que tengan un nivel de seguridad deficiente como telnet, ftp, http, etc... La mayoría de los sniffers guardan en un log todo los paquetes que leen,pero se pueden configurar de tal forma que solo guarden determinadas partes de un paquete (normalmente los nombres de usuario y contraseña se encuentran en los primeros 300 bytes del paquete) o los paquetes que cumplan determinadas condiciones (dirigidos a los puertos telnet, ftp, pop3, etc).

¿CÓMO PROTEGERSE DE LOS SNIFFERS?

Como ya mencioné antes, los sniffers se dedican a configurar la tarjeta de red en modo promiscuo. Existen infinidad de programas para detectar este tipo de configuraciones (algunos vienen incluidos en los propios sistemas operativos), así que buscad un poco por la red que no será difícil dar con uno. Los sniffers generan logs MUY grandes si están mal configurados o si se instalan en redes muy utilizadas, por lo que fijándose un poco en los procesos en ejecución y en los tamaños de los directorios (suelen instalarse en directorios ocultos), no debería ser difícil dar con ellos.

Para prevenir los ataques con sniffers es recomendable utilizar programas y protocolos basados en sistemas criptográficos seguros como SSL. Estos programas encriptan la información que se transmite por la red, por lo que si alguien monta un sniffer en un ordenador,no verá más que un archivo de texto sin sentido cuando vaya a revisar el log. También es recomendable utilizar un sistema de segmentación mediante HUBS o SWITCHES. Estos sistemas dividen la red en segmentos separados convirtiendola en una red segmentada, por lo que si alguien utiliza un sniffer para espiar las conexiones, sólo tendrá accesso a los datos que atraviesen su mismo segmento de red (los sniffers también funcionan cuando hay HUBS, por lo que recomiendo el uso de SWITCHES en la segmentación de la red).

Espero que al terminar este artículo ya estéis como locos instalando sniffers en vuestros propios ordenadores para probar todo lo que habéis aprendido porque será una muestra de que os ha interesado toda esta parrafada. Dedico este artículo a todos aquellos que no saben que alguien les vigila...


[INICIO] [ARTÍCULOS] [PROGRAMAS] [ENLACES]

OTROS ARTICULOS: [TELNET1] [TELNET2] [COOKIES] [ARP SPOOFING]


Todos los contenidos de esta web están bajo una licencia de Creative Commons salvo que se indique expresamente lo contrario.