# Modo promiscuo

En informática, el modo promiscuo es aquel en el que una computadora conectada a una red compartida, tanto la basada en cable de cobre como la basada en tecnología inalámbrica, captura todo el tráfico que circula por ella.
Este modo está muy relacionado con los sniffers que se basan en este modo para realizar su tarea.

## ¿Cómo funciona?

En las redes de ordenadores, la información se transmite en una serie de paquetes con la dirección física (o dirección MAC) de quien lo envía y quien lo tiene que recibir, de manera que cuando transmitimos un fichero, éste se divide en varios paquetes con un tamaño predeterminado y el receptor es el único que captura los paquetes evaluando si llevan su dirección.
En el modo promiscuo, una máquina intermedia captura todos los paquetes, que normalmente desecharía, incluyendo los paquetes destinados a él mismo y al resto de las máquinas. Resulta a destacar que las topologías y hardware que se usen para comunicar las redes, influye en su funcionamiento, ya que las redes en bus, redes en anillo, así como todas las redes que obliguen a que un paquete circule por un medio compartido, al cual todos tienen acceso, los modos promiscuos capturarán muchos más paquetes que si están en una red con topología en árbol. Para completar el modo, las máquinas en modo promiscuo suelen simplemente copiar el paquete y luego volverlo a poner en la red para que llegue a su destinatario real (en el caso de topologías que requieran de retransmisión).

## ¿Para qué sirve?

El modo promiscuo resulta muy útil para ver qué paquetes atraviesan tu red. Su utilidad se basa en que todos los paquetes que pasan por una red tienen la información de a qué protocolo pertenece y las opciones de reensamblado. Incluso, si están cifrados, tienen la información en claro, es decir, que es posible saber qué contiene el paquete.
Es especialmente útil en los routers que unen varias redes, ya que con herramientas que analizan los paquetes podemos detectar errores, ataques, pérdida de paquetes, sobrecargas, etc. Al capturar todo el tráfico que atraviesa un router, se pueden determinar también, usos, servicios que tienen que recibir ancho de banda prioritario, accesos no permitidos a equipos o protocolos, etc.
También es usado en el lado contrario: para realizar ataques contra redes. Últimamente, este término es muy usado para tratar de atacar redes WIFI cifradas así como el Wardriving que es la detección de redes WIFI.

### Sniffers

Se refiere a las aplicaciones o programas que tienen la capacidad de analizar el tráfico de la red.

## Modo promiscuo y redes wi-fi

Esto resulta especialmente útil para determinar los rangos de IPs de las máquinas de la red, o realizar ataques contra los cifrados WEP que se basan en capturar, básicamente, todos los paquetes necesarios para romper el cifrado.
Gran parte de las tarjetas Wi-Fi tiene la posibilidad de capturar tráfico, es decir, trabajar en modo promiscuo.

## Activar modo promiscuo en una tarjeta de red

* FreeBSD/Linux: ifconfig <interfaz> promisc (-promisc para quitar el modo promiscuo)
* Windows: Mediante drivers y software especializado. También mediante el protocolo de monitor de red.

## Detección de máquinas en modo promiscuo en la red

Existen herramientas para la detección de interfaces de red que se encuentren en modo promiscuo. Se basan en el envío de paquetes que nadie responderá, salvo por equipos en modo promiscuo.
* Detección de Latencia en paquetes ICMP: Este método lanza muchas peticiones, TCP erróneas para que ningún equipo las tenga en consideración. Tras esto, se manda ping a todas las máquinas. La máquina en modo promiscuo tardará en responder ya que está ocupando procesando los paquetes. El atacante podría bloquear la entrada de peticiones ICMP en el cortafuegos de su equipo para evitar ser descubierto.
* Detección mediante paquetes ping ICMP: Se lanza un ping a una máquina sospechosa, con la MAC del paquete errónea. Si la máquina está en modo promiscuo, responderá sin comprobar que la MAC es errónea. El atacante podría bloquear la entrada de peticiones ICMP en el cortafuegos de su equipo para evitar ser descubierto.
* Detección mediante paquetes ARP: Se envía un paquete de petición ARP con destino a la dirección IP de la máquina sospechosa y a una dirección MAC inexistente. Si el equipo está en modo promíscuo, procesará dicha consulta ARP y responderá. Este proceso se suele repetir para todas las IPs válidas en el rango de la red local para comprobar todos los equipos. El atacante podría usar una distribución de Linux modificada para que no responda a este tipo de consultas y evitar así ser descubierto por este método.
* Detección sobre la base de resoluciones DNS: Muchos programas de captura de tramas de red que funcionan en modo promíscuo suelen tener por defecto activada la opción de resolver las IP de los equipos remitentes y destinatarios de los paquetes capturados. Un programa de detección puede enviar paquetes desde una IP inexistente a otra para comprobar si posteriormente se realizan las correspondientes resoluciones DNS. El atacante podría deshabilitar las resoluciones DNS en el programa de captura de tramas para evitar ser descubierto.

### Software para detección

* Red de máquinas Windows: PromqryUI 1.0
* Red de máquinas Linux: SniffDET