tool: Geoedge

geoedge una herramienta que sirve para ubicar geograficamente una ip de un objetivo, es “Desarrollada por Edge-security” Su modo de uso es bastante simple, pues solo necesitamos descargar el script desarrollado en Python y desde la línea de comandos ejecutar la consulta. Para que esta sea reflejada enGoogleMaps y MapQuest.

este es el scrip

#!/usr/bin/env python
#Geoedge v0.1
#Coded by laramies
#cmartorella@edge-security.com
#Remember that maxmind allows just 25 queries per day. Don't abuse ;)

import sys
import re
import httplib

def banner():
	print "*************************************"
        print "*Geoedge         v0.2               *"
        print "*Coded by Christian Martorella      *"
        print "*cmartorella@edge-security.com      *"
        print "*************************************"

def usage():
	banner()
        print "\n"
        print "Usage:"
        print "       python geoedge.py host/ip\n"
        return

if len(sys.argv) < 2:
        usage()
        sys.exit()

host=sys.argv[1]
cmd=sys.argv[1]

banner()
body="ips="+host
print "\nSearching in Maxmind....\n"
try:
	h = httplib.HTTP("www.maxmind.com")
	h.putrequest('POST',"/app/locate_ip" )
	h.putheader('content-type',"application/x-www-form-urlencoded")
	h.putheader('content-length', str(len(body)))
	h.endheaders()
	h.send(body)
	errcode, errmsg, headers = h.getreply()
	response=h.file.read()

	limit=re.compile("reached.*")
	if limit.findall(response)!=[]:
		print "Limit reached in maxmind :(\n"
	else:
		res=re.compile("<td><font size=\"-1\">.*</font>")
		results=res.findall(response)
		res=[]
		for x in results:
			x=x.replace("<td><font size=\"-1\">","")
			x=x.replace("</font>","")
			res.append(x)

		print "Information for "+host+ " by Maxmind"
		print "===========================================\n"
		print "IP/Host: "+host
		country=re.sub("<.*nk>\">","",res[1])
		country2=country.replace("</a>","")
		country=re.sub("<.*middle\" >","",country2)
		print "Country: " +country  +","+res[2]
		print "City: " + res[4] +","+res[5]
		print "Coordinates: "+ res[7] + "," + res[8]
		print "Provider: "+ res[9] + "," + res[10]
		print "Google Maps Link: " + "http://maps.google.com/maps?q="+res[7]+", "+res[8]
		print "Mapquest Link: " + "http://www.mapquest.es/mq/maps/latlong.do?pageId=latlong&latLongType=decimal&txtLatitude="+res[7]+"&txtLongitude="+res[8]
		print "\n"
except:
	print "Connection error...\n"

print "Searching in Geoiptool....\n"
try:

	h = httplib.HTTP("www.geoiptool.com")
	h.putrequest('GET',"/es/?IP="+host )
	h.putheader('Host', 'www.geoiptool.com')
	h.putheader('User-agent', 'Internet Explorer 6.0 ')
	h.endheaders()
	returncode, returnmsg, headers = h.getreply()
	response=h.file.read()

	res=re.compile("<td align=\"left\" class=\"arial_bold\">.*</td>")
	results=res.findall(response)
	res=[]

	for x in results:
		x=x.replace("<td align=\"left\" class=\"arial_bold\">","")
		x=x.replace("</td>","")
		res.append(x)

	print "Information by Geoiptool"
	print "========================\n"
	print "IP/Host: "+res[0]
	country=re.sub("<.*nk\">","",res[1])
	country=country.replace("</a>","")
	country=re.sub("<.*middle\" >","",country)
	print "Country: " + country + ","+ res[2]
	city=re.sub("<.*nk\">","",res[3])
	city=city.replace("</a>","")
	print "City: " + city + ","+ res[4]
	print "Coordinates: " + res[8] + ","+res[7]
	print "\n"
except:
	print "Connection error..\n"
################################

Como vemos en la imagen es muy simple de usar  solo guardamos el scrip

Anterior en un archivo de texto y le colocamos de nombre “geoedge.py”

y luego lo ejecutamos de la siguiente manera “python geoedge.py

IP” como se ve en la imagen resaltado con rojo  y con amarillo se ve el resultado



Luego en Google Maps o Eoogle Earth colocamos las coordenadas de  localización

Obviamente los resultados pueden no ser completamente precisos, pues existen muchas variables que inciden sobre estos. espero que les sirva 🙂

Anuncios
  1. alan
    noviembre 8, 2012 en 10:18 pm

    pregunta ehm como abro eso de shell es un prog?

    o cmd?

    • noviembre 8, 2012 en 10:34 pm

      Tienes que instalar una version de Python en tu pc y luego en un blog de notas copias el script y lo guardas con extension .py cualquier nombre ejemplo geo.py y luego ya lo podras ejecutar 🙂
      Un saludo y gracias por comentar.

  2. David
    agosto 7, 2013 en 9:42 pm

    y para ubuntu

  3. Brody55
    agosto 7, 2013 en 9:53 pm

    Buen código…pero sería mejor que explicaras cada línea de codigo (cómo funciona? para que sirve? etc.)

  4. agosto 8, 2013 en 1:44 am

    A mi no me sale!!! Me sale Error sintax.. xD!! en los “textos” ya tengo instalado el python he incluso ya lo guarde como indicas .. pero no ejecuta :/

  1. No trackbacks yet.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: