Red de conocimiento informático - Material del sitio web - Cómo escribir un programa para descifrar rar cifrado por fuerza bruta en Python

Cómo escribir un programa para descifrar rar cifrado por fuerza bruta en Python

A veces, el software rar cifrado a menudo olvida la contraseña, pero la posibilidad de recordarla es muy alta, por lo que usamos Python para escribir un programa para descifrarla por fuerza bruta:

En primer lugar, debemos averiguarlo. cómo usar la línea de comando Descomprima, después de investigar, el software rar se descomprime usando unrar.exe, copie este programa a C: \ windows, luego ingrese a la carpeta donde se encuentra el paquete cifrado y ejecute el siguiente comando desde la línea de comando :

unrar.exe e -pabcd La carpeta donde se encuentra el paquete cifrado, use la línea de comando para ejecutar el siguiente comando:

unrar.exe e -pabcd 123.rar

El programa se copió previamente en C:\ windows y el parámetro e se refiere a la ruta relativa. Si ejecuta este comando en una carpeta, puede hacer clic directamente en el nombre del archivo. La contraseña es el campo después de -p, suponiendo que sea abcd, y el último es -p.

A continuación, resolveremos cómo ejecutar la línea de comando usando Python en Windows

importar subproceso

command = 'unrar.exe e -n -pabcd 123 .rar'

subprocess.call( comando)

Esto también puede completar la descompresión. En este caso, hagamos esto y escribamos un bucle violento. Por ejemplo, las letras no se agregan, pero se pueden agregar según corresponda cuando realmente se usan

lista1 = ['a', 'b', 'c', 'd']

lista2 = ['a', 'b', 'c', d' ]

lista3=['a', 'b', 'c', 'd']

list4=[ 'a', 'b', 'c', 'd']

para i1 en el rango(0, len(lista1), 1):

para i2 en rango( 0, len(lista2).1):

para i3 en rango(0, len(lista3), 1):

para i4 en rango(0, len(lista4), 1):

contraseña=lista1[i1] lista2[i2] lista3[i3] lista4[i4]

imprimir(contraseña)

comando = ' unrar.exe e -n -p' contraseña ' 123.rar'

niño = subcess.call(comando)

si niño == 0:

print('La contraseña de descompresión es:', contraseña)

break

child es el valor de retorno, 0 significa que la descompresión se realizó correctamente, puede seleccionar el bucle e imprimir la contraseña, la probé, 4 puros números o letras, solo tarda una docena de segundos en salir, muy simple

child = subprocess.call(command)

child = ' contraseña 123.rar'