aboutsummaryrefslogtreecommitdiffstats
path: root/commands/revip
blob: b4920f52deb6000441f62287ef1abb6ffa60f1b1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#!/usr/bin/python
# fork from darkb0t v0.4
# modularized and extended 
import sys
import os
import json
import socket
import httplib
from urlparse import urlparse
try:
  target = sys.argv[1]
except:
  print "Usage: %s [target]" % sys.argv[0]
  exit(0)

print "Reverse IP Search"
print "Target: ",target
try:
  hostname,aliases,ip = socket.gethostbyaddr(target)
except:
  print "Cannot resolve `%s`!" % target
  exit (1)
print "IP: ",ip[0]
sites = {target : "", hostname : ""} # make entries unique
for a in aliases:
  sites[a] = ""
offset = 0
appid = os.environ.get("BING_APPID",'7A0B8DA3E913BE5ECB4AF11C7BC398B43000DC1C')
while offset < 300:
  url ="/json.aspx?AppId=%s&Query=ip:%s&Sources=Web+RelatedSearch+News+Image+Video&Version=2.2&Market=en-us&Web.Count=50&Web.Offset=%s&Web.Options=DisableQueryAlterations" % (appid,  ip,  offset)
  conn = httplib.HTTPConnection("api.bing.net")
  conn.request("GET", url)
  res = conn.getresponse()
  doc = json.load(res)
  try:
    results = doc["SearchResponse"]["Web"]["Results"]
    conn.close()
    for res in results:
      sites[urlparse(res['Url'])[1]] = ""
    offset += 50
  except:
    break
print "Total: ", len(sites), " dns name(s)\n"
num = 1
for s in sites:
  print "["+str(num)+"/"+str(len(sites))+"] : "+s
  num += 1