6 de agosto de 2012
TooLs: Buscar direcciones de correos
Hace un tiempo estaba probando una librería en Python llamada urllib2 que me permite entre tantas cosas realizar una conexión HTTP y consultar una pagina web.
La idea de hoy es realizar un script donde el usuario ingrese una dirección de pagina web y el motor pueda determinar todas las direcciones de correo electrónicas que hay.
La idea es muy simple y el script es aún mucho más, gracias a urllib2, una vez que podamos realizar la conexión con la URL indicada, solo quedará realizar un macheo con expresiones regulares a todo el código interpretado.
Se me ocurrió hacer este código, donde seguramente faltarán muchos controles y restricciones, pero sin embargo podemos ver el poder de Python como lenguaje de programación.
import re
import urllib2
url = raw_input("Ingrese una URL (http://): ")
web = urllib2.urlopen(url)
html = web.read()
mailExp = re.compile(r'[\w\-][\w\-\.]+@[\w\-][\w\-\.]+[a-zA-Z]{1,4}')
mailList = mailExp.findall(html)
print "Mail scaneados %s" % (list(set(mailList)))
print "En total son: %s" % (len(list(set(mailList))))
Como para explicar el código de forma simple y rápida aunque no tiene ningún secreto, en las dos primeras líneas importo las librerías re y urllib2, la primera para trabajar con expresiones regulares y la otra para trabajar con peticiones http a páginas web.
Luego le solicito al usuario que ingrese una URL, luego intento realizar una conexión con la librería urllib2, almaceno el código html en una variable, luego creo mi expresión regular para buscar direcciones de correo y finalmente comienzo a buscar en el código html almacenado.
Finalmente muestro las direcciones de correos sin repetir y la cantidad encontrada.
Vean como en 9 líneas de código fuente, pudimos hacer el principio de una poderosa herramienta, que podemos programar para que recorra recursivamente la página, o saltar de una a otros enlaces, vean con que facilidad podemos buscar cadenas o fragmento de código gracias a las expresiones regulares.
Observen de que manera los spammers comienzan a recopilar información y generar sus bases de datos con cientos y miles de cuentas de correos, esperando para inundar la red.
Gente, si hay alguien que quiera colaborar o ir mejorando este código para luego compartirlo y seguir creciendo en GitHub, por favor no dejen de contactarme, les prometo ir publicando en este espacio muchos más TooLs para que comiencen a preparar y elaborar su laboratorio de herramientas.
Saludos!
Descarga | TooLs en GitHub
Etiquetas:
Correos
,
Herramientas
,
HTTP
,
Python
,
TooLs
Suscribirse a:
Comentarios de la entrada (Atom)
Entradas populares
-
Lamento que te enteres por este medio pero tu pareja te engaña. Hace tiempo estoy saliendo con alguien y me engaño diciendo que no tenia ...
-
El Análisis Forense de computadores y sistemas es una de la rama fascinantes de la seguridad informática que año tras año va tomando más fu...
-
En algún momento hablamos lo simple y práctico que es contactar con reportes reportes web, completos analizadores de Logs que nos permiten m...
-
La idea de este post es dejarle una lista de gente que realmente se dedica a Seguridad Informática y sus temas relacionados, gente apasio...
-
Luego de un par de semanas de programacion y algunos commits en los repositorios de GitHub , les quería anunciar la version 1.0 de WPHarde...
-
Hoy les quiero compartir un nuevo Webcast parte de la segunda temporada de ElevenPaths Talks . Para esta sesión nos encontramos con Diego Es...
-
Esto es parte de las nuevas tecnologías con la que hoy contamos. Solo basta con leer un par de líneas para saber de que estas ideas son las ...
-
Figura 1: 4 consejos para proteger SSH en RouterOS Hace algunos días publiqué un Dork en Google y en Shodan donde nos permite encontra...
-
Excelente investigación por parte de Sheila Berta ( @UnaPibaGeek ) sobre un mecanismo de vulnerar un Android y que dió nombre a su confere...
-
No quería dejar pasar esta oportunidad para celebrar junto a todos los lectores de este, mi pequeño espacio donde me gusta hablar ( escribir...
No hay comentarios.:
Publicar un comentario