[Python] Como fazer um Bruteforce em Python?

Discussão em 'Python' iniciado por Stack, Setembro 30, 2024.

  1. Stack

    Stack Membro Participativo

    Estou tentando criar um programa Bruteforce que possa gerar senhas com um tamanho x de caracteres. O problema é que eu não consigo desenvolver uma lógica para isso. Veja o meu código abaixo:

    chars = getAllChars() # Obtém caracteres [A-z 0-9]

    password = "pato34" # Senha que deverá ser encontrada

    c1, c2, c3, c4, c5, c6 = "", "", "", "", "", ""

    def checks(*chars, show = True):
    global password
    string = ""

    for char in chars:
    string += char

    if show: print(string)
    if string == password: return True

    def bruteForce():
    global c1,c2,c3,c4,c5,c6

    for c1 in chars:
    if checks(*getChars()): return getChars()

    for c2 in chars:
    if checks(*getChars()): return getChars()

    for c3 in chars:
    if checks(*getChars()): return getChars()

    for c4 in chars:
    if checks(*getChars()): return getChars()

    for c5 in chars:
    if checks(*getChars()): return getChars()

    for c6 in chars:
    if checks(*getChars()): return getChars()

    def getChars():
    return c1, c2, c3, c4, c5, c6

    print(bruteForce())


    Esse código basicamente tenta todas as combinações possíveis com todas as letras e números até achar uma senha de 6 dígitos. O problema é que se eu quiser fazer um Bruteforce para senhas de 20 dígitos, eu deveria escrever 20 blocos for.

    Dá para reduzir isso de forma que não precise escrever mais linhas de código para um tamanho maior de senha ?

    Continue reading...

Compartilhe esta Página