Regreso + Búsqueda pasiva de XSS mediante Python !

Así es , vuelvo a los ruedos por aquí de mi querido blog. Las vacaciones se demoraron unos 17 días, asi que estoy plenamente desactualizado, ya que me ocupe de recuperar todas las energías gastadas durante el año.

Y, que mejor que volver con algo de Python, ¿ no ?  Ésta vez de la mano de StateX les traigo una forma de realizar un parseo de vulnerabilidades XSS utilizando como referencia el sitio XSSposed.

Hace tiempo que os hablé de XSSpose, un repositorio de vulnerabilidades XSS y hasta hice un script en Python para buscar en las diferentes paginas. Pero no servia para nada ya que era demasiado lento y tenias que escribir la pagina web perfecta para que lo encontrara.

Así que me he puesto a crear un script que utilizara la barra de búsqueda de la pagina y me lo guarde todo en un .txt por lineas la mar de mono. Ademas, lo he preparado para cuando conozca algún otro repositorio similar pueda hacer el parseo correspondiente.

Espero que os guste, os dejo el código aquí, OJO esta escrito en Python 3.4:

import urllib.request
import re

def XSSearch(query):
data = “https://www.xssposed.org/search/?search=”+ query +”&type=host”
web = urllib.request.urlopen(data)
d = str(web.read())
d1 = re.search(r”</h3>(.*)XSS mirror”, d)
d2 = re.search(r””,d)
print (“–> ” + d1.group(1) + “Vulnerabilidades encontradas en “+”%s” % query)
print (” + ” + data + “\n”)
reporte = open(“VXss.txt”, “a+”)
reporte.write(“XSSposed:”)
reporte.write(“–> ” + d1.group(1) + “Vulnerabilidades encontradas en “+”%s” % query)
reporte.write(” + ” + data + “\n”)

if __name__ == “__main__”:

webs = []
while True:
busqueda = input(“Web a buscar: “)
webs.append(busqueda)
if busqueda == “”:
print (“XSSposed:”)
for web in webs:
if not web == “”:
XSSearch(web)
input(“El resultado de estas busquedas tambien ha sido guardado en VXss.txt, dale a [Enter] para salir:”)
break

print (“Listado de Webs a buscar: “)
print (webs)

Seguro que se podría mejorar y lo primero que se me ocurre es añadirle webs que vayamos recopilando desde un .txt, que lea las filas y las añada a la lista para ser buscadas a luego.

Algo así:

webs = []
webd = open(“Webdic.txt”,”r”)
lineas = webd.readlines()
webd.close()
for line in lineas:
print (line)
webs.append(line)
print (webs)

 

¡ Gracias por leer !

DynamicSec.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s