Zumbe.net

De cómo hackear y después arrepentirse

codigo.jpgSí, lo confieso. Hoy me he comportado como un auténtico hacker (aunque tampoco querría dármelas).

Tras recibir una sugerencia para almacenar la procedencia de los visitantes de GStat, con el fin de obtener información aún más específica, me puse a investigar cómo obtener una geolocalización a partir de una IP.

Mi sorpresa fue que no existía apenas software con este fin, y menos aún libre. El servicio más eficaz, que daba una infromación muy certera y específica, tenía como medida anti-robots un sistema de registro mediante e-mail, con lo que obtenias 50 oportunidades al día.

Esto me interponía dos barreras: 50 al día no puede sincronizarse con los 30.000 registros diarios de GStat. Además el sistema de registro mediante mail obligaría a hacerlo a mano, cada día, y olvidarse de un robot.

Sin embargo, donde podría ver barreras, yo ví desafíos.

Sin más dila(ta)ción me puse a crear un pequeño programa que realizara el registro, exprimiera las 50 oportunidades y se pusiera en marcha para repetir la tarea, indefinidas veces.

En primer lugar analicé los pasos que habría de seguir el robot:

  1. Crear una cuenta de correo distinta
  2. Registrar una cuenta con nombres aleatorios y el correo recién creado
  3. Revisar la bandeja de entrada del correo
  4. Ejecutar la página de confirmación de cuenta
  5. Hacer login con mail y contraseña (especificada en el mail que te envian)
  6. Ponerse a realizar las peticiones, almacenándolas en la base de datos.

Una vez aclarados todos los pasos, no hubo más que explotar las capacidades de CURL, la extensión de PHP.

Con esta extensión podemos crear un proxy, con muchísimas opciones.

También me hice servir de mailinator.com para crear cuentas de correo al vuelo, de usar y tirar.

Tras muchas horas de programación (unas 7 horas seguidas, sin parar a comer/beber/respirar…) había creado mi precioso robot, que se saltaba sistemas anti-bot, y exprimía los recursos del servicio.

Finalmente, tras almacenar varios miles de geolocalizaciones he comprendido que esto no es viable. Con este sistema no podría superar las 30.000 localizaciones diarias, mucho menos requiriendo un ordenador encendido las 24 horas.

Pero la experiencia me ha enseñado mucho. Ahora quisiera compartir el código con mis fieles lectores.

Si conoces PHP, esta herramienta puede servirte de mucho. Sólo pido que la aprecies, y la respetes. Licencio el código bajo Dominio Público.

Enlace: Set From en Soft Zumbe 

11 comentarios | tags: Código, Software libre, General

11 Comentarios para “De cómo hackear y después arrepentirse”

  1. GnDx Ha dicho:
    19 de Agosto del 2007 a las 9:54

    Muy buena información, =) me gustaria colaborar en algo contigo, hata en mirrors o lo que pueda aportar
    saludos

  2. Alex Barros Ha dicho:
    19 de Agosto del 2007 a las 10:00

    Muchas gracias, GnDx, aprecio tu entrega.

    En el momento que necesite cualquier tipo de apoyo lo haré saber por el blog; espero que entonces me podáis echar un par de manos!

  3. Perro Viejo Ha dicho:
    20 de Agosto del 2007 a las 9:00

    Hola Alex.
    Como consejo para averiguar el país de procedencia de una ip, te diré que la mayoría de herramientas comerciales o no, emplean una base de datos estática. Piensa que descargar 1 mega a la semana es mucho más barato que hacer una consulta de al menos 5 kb cada vez que se genera un registro.
    En el siguiente enlace encontrarás la base de datos. Ahora solo necesitas dedicar 30 minutos a implantar una aplicación para que se sirva de dichos datos.
    http://software77.net/cgi-bin/ip-country/geo-ip.pl
    En cuanto al programa que incluye este post, creo que deberías encaminar tus esfuerzos en otra dirección, puesto que vulnera muchos principios. Habría sido más fácil por ejemplo acceder al servicio web por medio de servidores proxy públicos, o incluso hacer que el propio cliente tradujera su dirección y te la volviera a pasar (igual que si quieres averiguar el tamaño de sus escritorio…)
    Por otro lado te diré que tienes unas muy buenas/brillantes ideas, y eso es lo más importante de un programa.
    Un Saludo

  4. Alex Barros Ha dicho:
    20 de Agosto del 2007 a las 9:13

    Muchas gracias, Perro Viejo.

    Ya imaginaba el sistema de una base de datos para discernir la procedencia de una ip, y además que esta información necesitara ser actualizada periódicamente. Pero no encontraba ninguna base de datos de este tipo, pública o privada.

    La que me pasas tiene buena pinta, y me plantearé usarla; pero la precisión es de país, y ip-adress te decía la comunidad y hasta la ciudad, con mucha exactitud.

    Muchas gracias por comentar, un saludo.

  5. Tolito Ha dicho:
    20 de Agosto del 2007 a las 11:21

    Conocía el curl, pero no sabía que se le pudiera sacar tanto jugo…me has dado algunas ideas muy buenas…enhorabuena por tu “hackeo”!

    Un saludo.

  6. Tolito Ha dicho:
    20 de Agosto del 2007 a las 11:25

    Una duda, para obtener la localización de una IP ¿no sirve el whois?

    http://www.arin.net/whois/

    Un saludo.

  7. Alex Barros Ha dicho:
    20 de Agosto del 2007 a las 11:39

    Mediante procedimientos similares al WHOIS se llegan a obtener datos ligeramente dudosos del país, pero no esperes mucho más.

    Lo que se necesita para esto es una pedazo de base de datos, muy completa y exhaustiva, actualizada a diario.

    Espero que le saques el máximo partido a CURL. Lo único malo de CURL es que muchos servidores no lo traen instalado. Pero si tienes accso a él, es una maravilla.

  8. Alex Barros Ha dicho:
    20 de Agosto del 2007 a las 13:08

    En realidad con la tonteria, me estoy fijando y almacené 12,904 geolocalizaciones en GStat.

  9. yerson Ha dicho:
    7 de Marzo del 2008 a las 5:26

    oe amn un favor pues kiero entrar a la bandeja de un amio para ver sus emnsajes nose si me puedes ayudar su correo es kenyi_2004_6 porfa te lo agradeceria de todo corazon oiala y me ayudes men!

  10. yerson Ha dicho:
    7 de Marzo del 2008 a las 5:27

    porfa man ayudame a ver los mensajes de un amio es de suma importacia espro k me ayudes su correo es kenyi_20004_6 oial y me puedas ayudar man solo kiero ver los emnajes si men dame una manito bye cuidate

  11. Alex Barros Ha dicho:
    7 de Marzo del 2008 a las 17:35

    Lo siento, yerson. No es sólo ilegal, sinó que es cuanto menos imposible. Sin la clave de acceso, las técnicas para acceder al correo son súmamente complejas, y varían con el sistema de correo utilizado.

Deja un comentario

Zumbe.net es administrado por WordPress
Puedes suscribirte a las Entradas (RSS) o los Comentarios (RSS).
Esta obra se encuentra bajo una licencia de Creative Commons.