Capturar usuarios y contraseñas de red
Llevo varios años comentando a mis estudiantes que existe la posibilidad de capturar las contraseñas de cualquiera que utilice nuestra propia red (también conocida como intranet) pero nunca me decidí, por motivos de seguridad, a indicar cómo se hacía por mi propia integridad (y la de mis datos privados) ya que en el propio instituto en el que trabajo contar con ésta información (con la de personas que se conectan diariamente a sus cuentas de correo) podría ser una temeridad.
Creo que es interesante conocer cómo hacerlo, sobre todo para demostrar que las conexiones a Internet no son tan seguras como algunos podrían pensar y sentar la base para tratar una serie de artículos en los que ayudar a tomar precauciones ante los ataques de seguridad más habituales.
Quizás de este modo se comprenda que no es buena idea permitir que el vecino acceda a nuestra wifi alegremente… o quizás si
Instalar Ettercap
Utilizaremos la técnica de ARP Poisoning (también conocida como ARP Spoofing) y por su simplicidad usaremos el programa Ettercap que puede ser instalado directamente desde Synaptic o lanzando un
sudo apt-get-install ettercap-gtk
Una vez instalado editamos el fichero /usr/local/etc/etter.conf; para ello ejecuta en la terminal un
sudo nano /usr/local/etc/etter.conf
Busca las entradas
# redir_command_on = “iptables -t nat -A PREROUTING -i %iface -p tcp -dport %port -j REDIRECT -to-port %rport”
# redir_command_off = “iptables -t nat -D PREROUTING -i %iface -p tcp -dport %port -j REDIRECT -to-port %rport”
Y quita los comentarios (#) que hay al comienzo de cada una de ellas.
Guarda (CTRL+O) y sal del editor de textos (CTRL+X)
Iniciar Ettercap
Aunque tras instalar ettercap aparecerá una entrada en el menu Aplicaciones > Internet te recomiendo que lo invoques desde la terminal del siguiente modo
sudo ettercap --gtk
Si lo haces desde el menú no se invocará el programa como root y por tanto lo más probable es que no te permita seleccionar la tarjeta de red a utilizar para capturar paquetes.
“Snifar” paquetes de red
Realmente es sencillo
- Seleccionamos nuestra tarjeta de red activa (la que estamos utilizando actualmente) pulsando Mayus+U
- Pulsamos CTRL+S para buscar posibles víctimas en la red (equipos que estén utilizando nuestra conexión a Internet)
- Comenzamos el ataque por ARP Poisoning
- Parametrizamos el ataque (para que escanee los equipos que no son el nuestro)



Eso es todo amigos
Ahora sólo queda esperar que alguno de nuestros “visitantes” se conecte, utilizando la misma red que nosotros a alguna página que requiera usuario y clave.
Independientemente del tipo de conexión (las https también caen) verás como las claves y los usuarios comienzan a aparecer en la ventana de Ettercap junto con la URL de la página en las que han sido utilizados.
Espero que con este artículo comprendáis lo importante que es asegurar nuestras conexiones de red y lo fácil que puede resultar para gente, con pocos conocimientos de seguridad, acceder a información sensible de sus víctimas (cuentas de correo, bancos, …).
33 comentarios hasta ahora
Replica







Antes de nada felicitarte por tu blog. Lo conocí recientemente y me parece de gran utilidad.
Leyendo tu articulo, cuando comentas que “las https también caen”, quieres decir que es posible obtener el tráfico pero entiendo que la clave y el usuario van cifrados ¿no?
Saludos.
sudo apt-get install ettercap-gtk
Se te escapo un guión -.-
Muy buen articulo!
Otra cosilla, en las nuevas versiones la configuración de etter.conf viene en /etc/etter.conf
Jose, cuando digo que “las https también caen” me refiero que incluso aunque usen protocolo http+ssl=https podrás obtenerlas.
Probando con Gmail no he tenido ningún problema… si te quedan dudas pruebo con la del banco [ pero descuida que no te daré los datos salvo que quieras hacer una aportación económica jeje
]
Gracias por los “avisos” Alberto (la línea estaba completamente mal) y por visitarme.
Te tengo en mis feeds desde hace tiempo aunque he de reconocer que me tienes loco con tanto cambio de dominio; incluso el comentario en este post no ayuda puesto que has utilizado una web de las antiguas (¿estás haciendo experimentos de nuevo?)
Imagino que la buena es DiarioDeUnLinux3ro.es
Un saludo y enhorabuena por el trabajo que vienes haciendo desde hace tiempo
Joder macho vaya ritmo de publicación que llevas! ademas post de nivel. Felicidades y gracias por el comentario
P.D: sigo esperando tu screenshoot
a ver si te das por aludido y te estiras
Algunos de tus posts tampoco están nada mal ( espero que no los hayas robado
) pero tengo implementado un filtro en el cerebro que me impide ver publicaciones del tipo “Nuevo …”. De todos modos no abusas de ellos lo cual es de agradecer.
Me alegra que te parezca bueno el ritmo de publicación, espero poder mantenerlo aunque lo tengo francamente difícil a partir de ahora (se acaban las vacaciones) al estar solo en esto.
Respecto a la captura de pantalla que llevas un tiempo pidiéndome y que me empeño en ignorar
es simplemente que mi escritorio no tiene nada de particular que merezca la pena enseñar (para mi entorno de trabajo soy minimalista al máximo)
Si aun así quieres ver lo hortera que soy con el wallpaper no tienes más que insistir una vez más y es tuyo.
Pues si lo siento, la verdad es que ya no pienso cambiar más, eso espero vamos… fue solo un tema de DNS por el .es ya que estaba en un subdominio y no podía comprarme un .es y me tuve que mover, una lastima pero me apetecía re-empezar.
Con respecto a mi link, no se como poder cambiar lo de albertjh.wordpress.com
No veo la opción de darlo de baja, y si me doy de baja no puedo comentar así que lo dejo así, siempre me da mucha pereza ^^
saludos!
Me temo que está relacionado con el OpenID asociado a WordPress.
A bote pronto se me ocurren dos soluciones (ninguna me gusta):
1. Abrir otro navegador en el que no estemos logado (apesta)
2. Cerrar tu sesión de WordPress cuando no estés trabajando en el blog (si eres capaz de ello y a pesar de lo incómodo que resulta tener que meter los datos)
Al final lo que dices…da pereza; si encuentro alternativa te doy un toque campeón que todo no va a ser aportar a la Comunidad
Realmente un aporte el blog.
Me alegra que te guste Mauricio, si lo recomiendas a los amigos mejor que mejor
[...] sabemos cómo obtener sus contraseñas, veamos ahora a qué dedican su tiempo libre y de qué [...]
Estupendo post. Solo una pregunta… A mi me deja los pc’s de la red sin conexión… ¿Que es lo que pasa?
Cuando inicio el proceso de ARP Poison, el PC que está conectado a la red, se queda sin internet… ¿Alguna sugerencia?
Un saludo y excelente blog, seguir así!
Siento oír eso Roberto, ¿todos los pc’s se quedan sin conexión? ¿incluido el que inicia el ataque?
Si te parece (por no ensuciar demasiado este post) lo vemos vía soporte técnico.
Un saludo y gracias por comentar el tema
Hubiese sido bueno tener una respuesta sobre el comentario de Robert, ya que a mi me sucede lo mismo y en vista que a otras personas les suceda, poder encontrar la solucion dentro del mismo Post!
El problema Slack es que Roberto no se ha puesto en contacto aun para tratar de solucionar el tema y en mi equipo (por fortuna o por desgracia) no se produce.
Si te parece podemos investigar el tema (aprovechando que te sucede igual) para como bien dices, tratar de ofrecer una solución al mismo.
Hola, se que estas descansando pero si es posible ¿podrias responderme unas cositas? Me gustaría saber dos cosas:
1. ¿Qué se intenta lograr con las ediciones de la configuración? ¿Me lo podrías explicar?
2. ¿Cómo se puede descifrar un ssl?
Muchas gracias por tus aportes.
Descuida #Tcaos, realmente debería estar ya con el “arado” al cuello y tirando del “carro” peerooo….
Respecto a las preguntas que formulas indicarte que con la configuración se está redireccionando el tráfico en el firewall convenientemente para que pase por nuestro equipo.
Descifrar SSL requiere en si mismo un artículo y, a día de hoy creo no ser la persona más capacitada para “impartirlo” (aunque todo es cuestión de proponérselo y estudiar el tema
)
Muchas gracias por la respuesta.
Haciendo las cosas tal y como dices me sale continuamente el siguiente mensaje:
SEND L3 ERROR: 40 byte packet (0800:06) destined to xxx.xxx.xxx.xxx was not forwarded (libnet_write_raw_ipv4(): -1 bytes written (Operación no permitida)
)
Este error aparece variando la ip de destino. Y no aparece nada más: ni páginas ni na’.
Muchas gracias otra vez.
Una pregunta rápida por descartar lo “evidente”: ¿estás lanzando el comando con permisos de administración con sudo?
Si, incluso el wireshark me muestra que el envenenamiento funciona.
Por otro lado he descubierto que cuando inicio el “snifeo” del ethercap la consola me marca lo siguiente:
(:10851): Gtk-CRITICAL **: gtk_text_layout_real_invalidate: assertion `layout->wrap_loop_count == 0′ failed
Y cuando cierro el ettercap la consola me muestra el siguiente error repetidas veces:
iptables v1.3.8: can’t initialize iptables table `nat’: Permission denied (you must be root)
Perhaps iptables or your kernel needs to be upgraded
Tanto el wireshark como el ettercap lo lanzo desde la consola. Luego desde el modo gráfico selecciono las interfaces y scaneo los hosts que agrego a los target 1 y 2, etc.
Un saludo.
Por descartar cosas: prueba a hacer un su para convertirte en root (física y moralmente) y luego lanza un ettercap --gtk
NOTA: observa que en el ettercap no he usado sudo porque ya somos root.
Hola, siento la tardanza pero he estado trasteando a ver si descubría el fallo. Lo he lanzado desde “su” (o sea cambiando de personalidad) y sigue con los mismos fallos. Estos surgen al descomentar las lineas en el etter.conf. Si no es molestia ¿me podrías especificar un poco más que relación tiene eso del ssl con la redirección de puertos? Tal vez así pueda ahondar más en el fallo que muestra o mejor porque no me muestra nada de la navegación de la “víctima” envenenada.
Gracias
@Tcaos, por lo general SSL suele ir asociado al puerto 443
¿Se te ocurre alguna idea de dónde vienen los fallos? En realidad me gustaría saber porqué no veo nada de la actividad de la “víctima”.
Gracias
Es que se ha dejado cosas, y me he vuelto loco para averiguarlas…a ver si lo completas, porque vas a traer loco a mas de uno.
Lo primero es que si no usas el fragrouter para hacer un IP forwarding, las victimas se quedaran sin internet. Lo mas sencillo es abrir la consola y picar “fragrouter -B1″ siendo root (no me funciona si lo hago con el comando sudo, no se porque razon.
Lo segundo es que no veras nada en la pantalla si no le das a start sniffing, lo cual te quedarias horas y horas mirando a la pantalla sin que ocurriese nada.
Lo tercero, y aun no resuelto es que no es capaz de coger usuarios y contraseñas de servidores SSL, aun habiendo quitado esas dos # tal y como dice. Y me toca los huevos porque odio compilar y no hay un RPM del ettercap para mi opensuse con todos los plugins activados.
Nada, que compilo el programita y errores como de puta costumbre, aun habiendo instalado los devel que me pide. Siempre la misma mierda. Alguien que haya hecho un RPM ara opensuse con los plugins habilitados? que lo cuelgue porfavor…
¿Has probado a usar Alien para convertir los paquetes? (no es muy elegante pero suele funcionar)
Supongo que para que funcione, tengo que seleccionar en objetivo 1 el equipo a trabajar y en objetivo 2 el router.
Cualquier otra ayuda seria bien recivida.
Gracias por el tuto amigo.
En mi consola me aparece el siguiente error, y también he probado y algo estoy haciendo mal porque no consigo capturar las contraseñas de otro puesto conectado a la red.
Error mencionado :
:4941): Gdk-CRITICAL **: gdk_window_set_geometry_hints: assertion `GDK_IS_WINDOW (window)’ failed
(:4941): Gdk-CRITICAL **: gdk_window_move: assertion `GDK_IS_WINDOW (window)’ failed
^C
saludos
Parece un error con el entorno gráfico, ¿qué gestor de ventanas utilizas?
tambien me he dado cuenta que desde un equipo que no sea root no accede a Internet y cuando salgo del programa me aparece los siguientes errores :
Perhaps iptables or your kernel needs to be upgraded.
iptables v1.4.1.1: can’t initialize iptables table `nat’: Permission denied (you must be root)
Hola!
Se me han quitado las ganas de hecer cualquier operación
del banco desde la red.A ver . yo se que se pueden sacar
datos y todo eso, pero por ejemplo en BBVA en vez de poner
los numeros con el teclado(que es mas facil que te vean las claves)te sale un teclado en pantalla y lo haces con el ratón.Es más seguro esto? no crees Jesus?
Un Saludo.
Pues no te falta razón @Alatriste aunque a mi personalmente el único sistema que me gusta es el implementado por la Caixa (creo recordar pues no trabajo con ellos y se lo ví a mi hermano).
Utilizan una tarjeta con una matriz de claves; cada vez que quieres acceder al servicio te preguntan una de modo aleatorio.
Tampoco es infalible pero parece mejor que muchas de las que montan los bancos actuales