send
Grupo de Telegram
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Search2audit. Deja que Bing haga el trabajo sucio

  • 0 Respuestas
  • 1584 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5267
  • Actividad:
    48.33%
  • Reputación 26
  • ANTRAX
    • Ver Perfil
    • Underc0de
    • Email
  • Skype: underc0de.org
  • Twitter: @Underc0de
« en: Julio 18, 2014, 08:21:22 am »

En el mundo de las auditorías son siempre los pequeños detalles los que te separan de un trabajo bien hecho (y con resultados) de otro mas bien mediocre.

No importa el número de horas ni tampoco las herramientas que se usen, al final son los trucos los que te pueden hacer llegar un paso más o quedarte en el camino.

Sucedió que, en un par de ocasiones en las que estaba un tanto 'atascado' revisando pruebas, tests, pantallas y mas pantallas le pedí ayuda a mi compañero Alejandro Ramos para que me diera su opinión de un site web. Al cabo de 10 minutos me contestaba: Aquí tienes un SQLI

Sorpresa ! ni Zaps, ni Burps, ni acunetixs habían encontrado nada y resulta que había un SQLI ¿?

Los dos SQLIs apuntaban a partes de la web 'obsoletas' de esas que no aparecen en un spidering normal, secciones que siguen ahí porque nadie las ha borrado pero no son, a priori, visibles a simple vista.

La magia de los buscadores y el parámetro site: para localizar contenido que no es fácil de encontrar haciendo un simple 'spidering'

Pensando en cómo poder hacer esto de una forma no manual hice un script que hoy comparto con vosotros llamado search2audit. El script hace uso de BING para lanzar búsquedas site: e insertar lo que va encontrando en tu herramienta de auditoría favorita.

Lo primero que has de hacer para usar el script es hacerte con una You are not allowed to view links. Register or Login, nada difícil ya que BING da acceso gratuito a 5.000 peticiones x mes

Una vez hecho eso, lanzas Burp o Zap y desactivas la intercepción de peticiones. Esto pondrá a la escucha el proxy en localhost 8080

Y ejecutas el script tal que así

Código: Python
  1. python search2audit.py tu-api-key www.security-projects.com

Lo que hace el script es ir extrayendo las URLs que le proporciona BING y navegando hacia ellas usando como proxy la herramienta de auditoría

Esto hará que la ventanita de Burp o Zap se empiece a llenar con los enlaces que ha encontrado vía Bing dejando una buena semilla para luego lanzar el spidering desde la herramienta, obteniendo de esa forma mejores resultados que si simplemente lanzas el spidering tomando como base un dominio.

El código fuente del script, que es tan solo una versión Beta que hay que pulir y mejorar bastante, es este:

Código: Python
  1.     import urllib2
  2.     import json
  3.     import sys
  4.     import getopt
  5.     import os
  6.     import pycurl
  7.      
  8.     if len(sys.argv) < 3:
  9.             print "Search2Audit 1.0 by @YJesus\n"
  10.             print "www.securitybydefault.com\n"
  11.             print "Usage search2audit.py <API KEY> <URL>\n"
  12.             sys.exit(0)
  13.      
  14.      
  15.     siteurl= sys.argv[2]
  16.     key= sys.argv[1]
  17.      
  18.      
  19.     c = pycurl.Curl()
  20.     c.setopt(c.PROXY, '127.0.0.1:8080')
  21.     c.setopt(pycurl.WRITEFUNCTION, lambda x: None)
  22.     c.setopt(pycurl.SSL_VERIFYPEER, 0)
  23.     c.setopt(pycurl.SSL_VERIFYHOST, 0)
  24.      
  25.     c.setopt(pycurl.USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20100101 Firefox/8.0')
  26.      
  27.     c.setopt(pycurl.HTTPHEADER, ["Proxy-Connection:"])
  28.      
  29.      
  30.     user_agent = 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; FDM; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 1.1.4322)'
  31.     creds = (':%s' % key).encode('base64')[:-1]
  32.     auth = 'Basic %s' % creds
  33.      
  34.     request = urllib2.Request('https://api.datamarket.azure.com/Data.ashx/Bing/Search/Composite?Sources=%27web%27&Query=%27site:'+siteurl+'%27&$format=json')
  35.      
  36.     request.add_header('Authorization', auth)
  37.     request.add_header('User-Agent', user_agent)
  38.      
  39.     requestor = urllib2.build_opener()
  40.     result = requestor.open(request)
  41.      
  42.     search_results = result.read()
  43.            
  44.     results = json.loads(search_results)
  45.      
  46.     total = results['d']['results'][0]["WebTotal"]
  47.      
  48.     print "Num total links", int(total)
  49.      
  50.     offset = int(total)/50
  51.     offset=offset+1
  52.      
  53.     index = 0
  54.      
  55.      
  56.     for i in range(offset):
  57.      
  58.             request = urllib2.Request('https://api.datamarket.azure.com/Data.ashx/Bing/Search/Web?Query=%27site:'+siteurl+'%27&$skip='+str(index)+'&$format=json')
  59.             request.add_header('Authorization', auth)
  60.             request.add_header('User-Agent', user_agent)
  61.      
  62.             requestor = urllib2.build_opener()
  63.             result = requestor.open(request)
  64.      
  65.             search_results = result.read()
  66.            
  67.             results = json.loads(search_results)
  68.            
  69.            
  70.             for result in results['d']['results']:
  71.                    
  72.                     urltoadd= result.get(u'Url')
  73.                    
  74.                     print urltoadd
  75.                    
  76.                     urltoadd=str(urltoadd)
  77.                    
  78.                     c.setopt(c.URL, urltoadd)
  79.                     c.perform()
  80.            
  81.             index+=50

Fuente: SBD
« Última modificación: Julio 18, 2014, 09:03:16 am por blackdrake »


 

¿Te gustó el post? COMPARTILO!



Dorks links Grabber (Bing Version)

Iniciado por Xt3mP

Respuestas: 0
Vistas: 3596
Último mensaje Abril 13, 2012, 06:04:13 pm
por Xt3mP