Cómo descubrir contraseñas y e-mails enviados con Wireshark Si estamos conectados a una red local, sea por cable o vía inalámbrica, podemos vigilar el tráfico HTTP para descubrir el contenido de correos electrónicos o incluso contraseñas de cuentas de usuario en páginas webs o servicios de mensajería instantánea. Para eso tenemos que usar determinados filtros. Primero habría que saber la dirección MAC o dirección IP del equipo a través del cual entra y sale la información que queremos obtener. Para eso usaríamos uno de estos dos filtros: ip.addr == 10.22.21.226 También podríamos indicar si la información entra: ip.src = 10.22.21.226 O si sale: ip.dst == 10.22.21.226 Por último para filtrar por dirección mal sería algo así: eth.src == 00:1d:60:6b:ec:83 1 Ahora que sabemos aplicar ese filtro podemos conjuntarlo con otro que nos muestre solo el tráfico http o las acciones GET y POST en este protocolo, es decir: http.method.request == "GET" | http.method.request == "POST" El primer filtro nos indicaría la información que la dirección IP recibe en el tráfico HTTP, y el segundo filtro nos serviría para ver qué información inyecta esa dirección IP en el tráfíco HTTP. De modo que ambos filtros se podían combinar del siguiente modo: ip.addr == 10.22.21.226 and http.request.method == "POST" También podríamos hacer excepciones. Por ejemplo, si ponemos un filtro dentro de un signo de exclamación y unos paréntesis eso omitiría los resultados obtenidos de ese filtro en la salida del Wireshark. Por ejemplo ! (http.request.method == "GET" ) omitiría todos los resultados del tráfico correspondientes. También podríamos omitir determinadas direcciones IP o MAC. Ahora que sabemos esto vamos a crear una cuenta de correo de ejemplo en Gmail, para ver cómo podemos obtener tanto la contraseña como las direcciones de e-mail del emisor, los destinatarios y el contenido de los mensajes enviados desde ahí. También lo registraremos en Windows Live ID para ver cómo podemos descubrir la contraseña una vez esa persona se haya conectado a algún medio de mensajería instantánea on-line como eBuddy. Ahora que tenemos la cuenta creada ([email protected]) y registrada para usarla en la red del Windows Live Messenger vamos al programa y aplicamos el siguiente filtro: ip.addr == 10.22.21.226 and http.request.method == "POST" Y probamos a enviar un e-mail a alguien. 2 Le damos al botón enviar y vamos al Wireshark. Veremos una entrada de tráfico en la que ponga POST /mail/?ui=… en la información del paquete. Hacemos clic con el botón derecho sobre él y escogemos Follow TCP Stream. 3 Nos empezará a filtrar los trazos TCP y nos saldrá una ventana como ésta: Aquí si bajamos más o menos a la mitad veremos lo siguiente (en color rojo): 4 Veremos cómo donde pone Content-Disposition: form-data; name="from" pone la dirección de e-mail del que envía el correo, así como más abajo aparecen las direcciones de e-mail del o los destinatarios (Content-Disposition: form-data; name="to") el asunto del email (Content-Disposition: form-data; name="subject") y el cuerpo del mensaje (Content-Disposition: form-data; name="msgbody"). Ahora supongamos que esa persona se conecta al Messenger por eBuddy o algún medio similar que no de la protección suficiente. Veríamos lo siguiente: 5 Si debajo en la información desplegáramos la sección Line-based text data veríamos los siguientes parámetros de envío: En donde se ve perfectamente la contraseña (password=PepePerez), y más a la izquierda el nombre de la cuenta de correo a la que corresponde (&username= victima.wireshark%40 gmail.com…). 6 Por último, también podríamos copiar y pegar el contenido de las cookies. En la sección Hypertext Transfer Protocol si desplegamos donde pone Cookie y le damos a Follow TCP Stream obtenemos la información necesaria. Después en Firefox, con un editor de cookies, podríamos insertar la información de la cookie que hemos capturado y acceder a cualquier sitio como la persona que entró en determinada página web o servicio web. 7
© Copyright 2024