APORTE. Analizador de diccionarios

Iniciado por rakanishux, Diciembre 17, 2018, 12:13:20 PM

Tema anterior - Siguiente tema

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

Diciembre 17, 2018, 12:13:20 PM Ultima modificación: Diciembre 17, 2018, 01:20:12 PM por ANTRAX
Buenas, soy muy novato en Python pero he logrado crear un analizador de diccionarios para saber si es viable para ataques WPA y para saber el tipo de passwords que contiene, realmente no encontre uno por la red asi que pense que seria util. Son bienvenidos a mejorarlo y eficientizarlo si asi lo desean.

Espero sus opiniones y mejoras

Código: python
from io import open
import string


grande=0
grande2=0
grande3=0
grande4=0
grande5=0
grande6=0
palabras=0
mayu=0
alfa=0
letras=0
signo=0
digit=0
peque=0
f = open("dic.txt","r",errors = 'ignore')
invalidChars = set(string.punctuation.replace("_", ""))
for line in f.readlines():
    palabras+=1
    if line[-1] == "\n":
        line = line[:-1]
        if len(line)<=7:
            peque+=1
        if len(line)== 8:
            grande+=1
        if len(line)== 9:
            grande2+=1
        if len(line)== 10:
            grande3+=1
        if len(line)== 11:
            grande4+=1
        if len(line)== 12:
            grande5+=1
        if len(line)> 12:
            grande6+=1
        if line.islower() == False:
            mayu+=1
        if line.isalpha() == True:
            letras+=1
        if line.isdigit() == True:
            digit+=1
        if (line.isdigit() == False) and (line.isalpha()) == False:           
            alfa+=1
        if any(char in invalidChars for char in line):
            signo+=1
print("ANALISIS DEL DICCIONARIO")
print("---------------------------------------")
print("Cantidad de Passwords-> ",palabras)
print("---------------------------------------")
print("Con menos de 8 caracteres-> {:.2f}".format((peque/palabras)*100),"%")
print("Con de 8 caracteres-> {:.2f}".format((grande/palabras)*100),"%")
print("Con de 9 caracteres-> {:.2f}".format((grande2/palabras)*100),"%")
print("Con de 10 caracteres-> {:.2f}".format((grande3/palabras)*100),"%")
print("Con de 11 caracteres-> {:.2f}".format((grande4/palabras)*100),"%")
print("Con de 12 caracteres-> {:.2f}".format((grande6/palabras)*100),"%")
print("Con mas de 12 caracteres-> {:.2f}".format((grande5/palabras)*100),"%")
print("---------------------------------------")
print("Solo letras-> {:.2f}".format((letras/palabras)*100),"%")
print("Solo numeros-> {:.2f}".format((digit/palabras)*100),"%")
print("Alfanumerico-> {:.2f}".format((alfa/palabras)*100),"%")
print("Con mayusculas-> {:.2f}".format((mayu/palabras)*100),"%")
print("Con signo-> {:.2f}".format((signo/palabras)*100),"%")
if ((peque/palabras)*100) > 20:
    print("NOTA: DICIONARIO NO ES RECOMENDADO PARA ATAQUE WPA")
else:
print("NOTA: DICIONARIO PUEDE USARSE PARA ATAQUE WPA")
print("---------------------------------------")
print("FIN DEL ANALISIS")

f.close()
input("Press enter to exit ")


Link: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

bueno yo tambien estoy empezando en py y por lo visto el diccionario tiene que estar en el mismo directorio con el nombre dic.txt para usar python y obtener los resultados en la misma shell.