viernes, 11 de abril de 2008

Troyano VS firewall, a mi señal, ira y fuego


Tuve una triste época, donde el lado oscuro ganó la batalla y en la que yo mismo usaba troyanos como mi ocio particular, infectaba a gente en el IRC o a algunos amigos por el messenger, y le tomaba luego el pelo, les abría el lector de CD, les abría páginas de contenido alegre, o les cerraba el messenger, cosas por el estilo. Luego se lo decía y hay acababa todo, lo borraba para que nadie más le hiciera el mal, y muchas veces por pardillo me tocaba instalarle antivirus, firewall, service pack, etc.

Hace ya bastante de eso, por aquel entonces nadie usaba firewall, y muchos ni siquiera usaban antivirus, gracias al blaster y al sasser eso cambió. Pronto comprendí que aquello no estaba bien, a pesar de no hacer nada grave, como espiar, sacar contraseñas o cosas por el estilo. Aveces incluso rastreaba ips infectadas y las desinfectaba, pues los troyanos suelen tener esa opción.

Pero ¿que es un troyano?, un troyano es una programa que se ejecuta en el ordenador de la víctima y nos da acceso completo a su ordenador, podemos ver lo que ella ve, podemos verle por la webcam, si es que tiene, podemos enviarle o cogerle archivos, podemos saber que emails escribe, podemos saber con quien y que habla, podemos cerrarle o abrirle programas, etc. Muchos tienen opciones divertidas como cambiarle los clicks del ratón, para que el derecho sea el izquierdo, o desactivar algunas teclas del teclado, o cosas así. Desde luego, que un adolescente como yo fuera capaz de hacer eso, debería quitarnos el sueño. Ese suele ser el perfil de estos lammers, gente de corta edad, no me imagino a alguien con mas de 25 años haciendo esto, normalmente suele ser un juego para ellos, suelen ser aficionados a los ordenadores y tienen unos conocimientos altos para su edad.

conexión¿Cómo funciona un troyano?, los troyanos tienen dos partes, una parte es la que se instala en la maquina de la víctima, y por otra parte el cliente que es el que pide las cosas. Supongamos que la víctima ya tiene el troyano y el antivirus no se ha enterado de nada. ¿Ya esta todo hecho?, nada de eso, pues ahora los firewall hacen bastante bien su trabajo, el problema como veremos es que la gente que los maneja puede que no.

¿Qué pasa si le doy a conectar en el cliente?.
Algo como lo que vemos en el dibujo, el cliente se conecta a internet, e intenta conectarse con el ordenador de la víctima. Pero ya esté en casa, en la uni, o en trabajo, habrá un firewall que controle el tráfico. Un firewall es un programa que dice que conexiónes son aceptadas y cuales son rechazadas. En el caso que nos ocupa. El firewall ve que alguien se quiere conectar desde fuera por el puerto 12345, por ejemplo, y dice: Eh!!!, que esto me huele muy mal, lo corto.

 Normalmente cortan todas las conexiones que no conozcan.
conexiónUna posibilidad sería usar como puerto para conectarse el puerto 4662, que es el puerto que usa el emule y que todo el mundo tiene abierto en el firewall. Con esto conseguimos lo siguiente: Al llegar el firewall, este cree que es el emule el que quiere entrar y le deja pasar, ya estamos dentro. Pero es posible que el puerto del emule no este disponible, así que habrá que seguir dándole vueltas al coco. El problema principal es que el firewall es muy quisquilloso con las conexiones entrantes, porque en principio son las que nos vienen de fuera, mientras que con las de dentro tiene más manga ancha, pues se supone que el usuario sabe lo que hace.
Todos los troyanos que yo probé, la mayoría en local, pues eran tan conocidos que todos los antivirus los conocían, usaban este tipo de acceso, y por eso los firewall les hacían mucho daño.
conexiónPero, ¿qué pasaría si es la víctima la que se conecta con nosotros?, El firewall podría pensar que quieres ver una página web o que quieres bajar un archivo por FTP, y no pondría mayor problema a esa conexión. En el caso del firewall de windows, como mucho nos avisaría de que tal programa desea salir a internet, y con un poco de astucia, podemos poner de nombre messenger, o explorer y mano de santo, ¿que loco iba a no dejar conectarse al messenger.exe?. Estamos dentro. Esto en principio podría valer para casa, trabajo, etc.

Aquí se me plantea un interrogante, ¿como sabe la víctima con quien tiene que conectarse?, pues en los casos anterior anteriores la ip de la víctima se conseguía mandándole algo por el messenger, o incluso el propio troyano tiene opciones para mandarte su ip por correo, etc. Pero en este caso la cosa cambia, así a bote pronto se me ocurren unas cuantas ideas, la primera y más obvia sería usar no-ip para tener un ip fija, de tal forma que siempre se conecta al mismo dominio (haxor.no-ip.com). Otras opciones mucho menos efectivas y más chapuceras serían por ejemplo tener una web donde tengas un archivo con la ip actual por ejemplo, y que la víctima la lea, y se conecte.

Este sistema de conexión nunca lo vi en un troyano pero creo que podría funcionar muy bien, igual algún troyano ya lo posee, sino ahí esta la idea, pues dudo mucho que me ponga a ello. Lo único que no tengo claro es si los motores heurísticos de los antivirus son capaces de detectar troyanos nuevos, nunca he leído nada sobre eso.

No hay comentarios:

Publicar un comentario