26/12/10

¿Por que mi wifi es tuya?



Hoy, por fín, después de mucho tiempo, tuve un rato para "jugar", siempre que esto pasa, ya se sabe, que algo malo ocurre. Esta vez, me encontré que en mi wifi, jugábamos más de los permitidos. Y eso me dio que pensar, ¿Cómo podria saber quien está pasando un buen rato, si lo único que conozco es que se llama “Raul-PC”, y este no es precisamente ningún amiguito mio (ni tampoco me ayuda a pagar las cuotas).

Solución Previa: ¡Cain!

Para sacar más información, pensé en utilizar mi “servidor”, para capturar con CAIN, todo lo que estaba ocurriendo, bien ¡buena idea! El problema es que él (Raúl), no esta siempre que estoy yo. ¡Mala idea! No puedo pedirle que se conecte cuando yo supervise.

Solución segunda: ¡Wireshark!

Como no podia hacer nada con CAIN, preparé wireshark para capturar todo desviando las conexiones a mi “servidor”, pero… Como no todo es tan bello al dibujarlo, me encontré que el trafico generado era demasiado para estar controlandolo constantemente mucho ruido y pocas nueces.

Solución tercera: ¡¡ Ahora sí ¡!

Desactivando el DHCP de mi router, podría indicar por donde tendrían que pasar todas las conexiones, así, me evitaba tener que estar pendiente de CAIN, para envenar ARP.

Para ello, busqué una utilidad que en Windows XP (sí, cada uno usa de servidor lo que quiere), la aplicación se llama: “Simple DNS plus”, esta me permite configurar a mi antojo la configuración DHCP, y así indicar que la puerta de enlace será el mismo y de paso, ¿Por qué no controlar también las solicitudes DNS?

Para poder permitir que Windows XP actúe como router, es decir, permita que las conexiones pasen por el y reenvíe los datos a la puerta de enlace predeterminada (el router original). Hay que modificar en el registro la clave:

HKEY_LOCAL_MACHINE
\SYSTEM
\CurrentControlSet
\Services
\Tcpip
\Parameters

IPEnableRouter == 1

Hasta aquí tenemos, que nuestro equipo nos gestionará DHCP, DNS, y reenviará a la puerta de enlace predeterminada las comunicaciones (todas y de forma transparente). Tan solo nos queda levantar una sesión de cain, ya no es necesario envenenar nada, por que están pasando las conexiones por nosotros. Si es necesario levantar cain, por dos motivos.

1º Para envenenar certificados, y así, nos lleguen las contraseñas en texto plano.

2º Por que nos facilita el trabajo de buscar entre la paja, soy consciente que registra mucho ruido, y no obstante captura también los datos del servidor, pero simplifica mucho.

Tan solo nos queda la prueba de fuego, realizar todo en real, para ello, estoy usando mi portátil como cliente de la wifi.

Lo primero que he comprobado es que el servidor me entrega una dirección ip, es un poco canteo que la puerta de enlace no es una tipica 192.168.0.1, si no que pasa directamente a la nº 6 (192.168.0.6).

Lo segundo es que en el portátil tengo conectividad.

Y por último, que el sistema que he montado realmente captura las contraseñas y por supuesto que funciona perfectamente y de forma transparente para todo aquel que quiera pagar conmigo las cuotas del ADSL.





PD: A pesar de no encontrarme envenenando ARP, si el botón no está pulsado, no falsea los certificados. Nos capturaría el trafico, pero no podríamos ver nada.

Esta solución funciona perfectamente con FIRESHEEP, captura las sesiones y nos permite reimplantarlas en el navegador.

Pd2: Esto nos recuerda que tenemos que tener mucho cuidado con donde nos conectamos, con los avisos de certificados falsos (sí, usando cain los da). Trataré de efectuar cambios y exponer percepciones, usando SSLTrip en vez de cain y también expondré un articulo sobre como defenderse. Conectarnos a redes potencialmente inseguras sin “riesgo”.

15/5/10

Pupe: Parcheador Universal de Procesos en Ejecucion

Sé que hacia algún tiempo que no escribía, son muchos los proyectos en los que me gusta meter la cabeza, y para mí escribir es algo complicado, soy más de leer, y leer. Esta vez quiero hacer pública una herramienta, que en más de una ocasión me ha facilitado la vida...

Se trata de un parcheador de procesos en ejecución, quiere decir, permite realizar modificaciones en los offsets, busca que información se encuentra, ahí, pero tambien nos permite modificarlo en caliente...

En esta versión sólo permite matar al proceso de una forma muy simple, me gustaría tratar de ampliar el programa y utilizar multiples formas de finalizar los procesos. Si tengo tiempo, tambien trataré de modificar la aplicación para que fuerze la lectura de los procesos. Quiero decir, si un proceso no permite la lectura de ese offset, por X razón ( no tenga permisos de lectura, tenga restricciones X), pues forzar que el programa lea y escriba a pesar de todo.

Por último aclarar que está basado en la versión original de PUPE, creada en el 2002, por "the pupe's team" su web: http://welcome.to/craaaack ; He copiado el nombre, únicamente. El resto está programado integramente por mí, espero que trás más de 6 años sin actualizar, no se sientan ofendidos por esto, si no alagados de que alguien contine lo que ellos empezaron. Si no fuese así, siempre podrán ponerse en contacto para modificar el nombre.

Como siepre, ideas y sugerencias en el buzón (comentarios).

LinkDescarga