¿Cómo utilizar VB para escribir un programa para descifrar contraseñas de Word?
¿Cómo descifrar la contraseña de Word?
Descargue el software para descifrar contraseñas digitales: mon controles -2.5 (sp2)" para que pueda usar controles de ajuste fino en el diseño de formularios.
Bien, ahora puede comenzar a programar Agregue un control de marco en el lado izquierdo del formulario FrmMain y agregue un cuadro de lista de unidades, un cuadro de lista de directorios y un control de cuadro de lista de archivos al control. Agregue dos botones de comando en el lado inferior derecho del formulario FrmMain. Agregue tres controles de etiqueta, dos controles de cuadro de texto y un control giratorio en el lado superior derecho. Puede consultar la imagen adjunta para diseñar. Luego, establezca la propiedad Título del marco en "Seleccione el documento de Word que debe descifrarse". "; mantenga el cuadro de lista de la tabla de contenido. Los nombres predeterminados de, cuadro de lista de unidades, cuadro de lista de archivos, cuadro de texto y control giratorio no son
Craqueo por fuerza bruta
Establezca el Propiedad de patrón del cuadro de lista de archivos en "*.DOC" con el propósito de mostrar solo archivos de Word en el directorio; establezca la propiedad Título del primer control de etiqueta en "Este programa descifra la contraseña de un documento de Word que consta de números puros; debajo de ocho dígitos", establezca la propiedad Título del control de la segunda etiqueta en "Progreso de descifrado" y establezca la propiedad Título del control de la segunda etiqueta en "Progreso de descifrado". Establezca la propiedad Título de las tres etiquetas en "Seleccione el número de dígitos para descifrar la contraseña"; establezca la propiedad Texto del segundo cuadro de texto en "4", que es el número predeterminado de dígitos de la contraseña; establezca la propiedad BuddyControl del botón giratorio en Texto2. Asociado con el segundo cuadro de texto, cambie BuddyProperty en Texto, establezca las propiedades Max y Min en "8" y "1" respectivamente, indicando los dígitos de contraseña más largos y los dígitos de contraseña más cortos, establezca la propiedad Wrap en True y establezca la propiedad Increment en "1" para que que cada clic aumenta o disminuye en 1; cambie los nombres de los dos botones de comando a "cmdopendoc" y "cmdquit" respectivamente, y establezca las propiedades del Título en "Abrir archivo" y "Salir del sistema" respectivamente. Se ha configurado anteriormente y no es difícil escribir el código.
El siguiente es el programa fuente completo. Los comentarios apropiados lo ayudarán a comprender el programa. Utilice puntos de interrupción para rastrear la parte de generación de contraseñas y ver cómo se programa. obras.
Private Sub cmdopendoc_Click()
Atenuar wd como nueva palabra.Aplicación
Atenuar strpath como cadena
Atenuar pasar como cadena
Atenuar paso como cadena
p>
p>
Dim J, K, Pass_long como entero
Dim Max_num, Min_num, I As Long
strpath = File1.Path amp "\" amp; File1.FileName
En caso de error, reanudar siguiente
'El programa se inicia
Pass_long = Val(Text2.Text)
Max_num = 10 ^ Val(Texto2 .Texto)
Núm_mínimo = 10 ^ (Val(Texto2.Texto) - 1)
Bandera = 0
Para K = 0 Para Pass_long - 1
Max_num = 10 ^ (Pass_long - K)
Min_num = 10 ^ (Pass_long - (K 1))
Para J = 0 A Pass_long - 1
cmdopendoc.MousePointer = 11
Para I = IIf(Pass_long - K = 1, 0, Min_num) J A Max_num Paso Pass_long
Text1.Text = pasar
Text1.Refresh
pass = String(K, "0") amp I
Flag = wd.Documents.Open( FileName:=strpath, passworddocument:=pass)
'Si el descifrado se realiza correctamente, abra el documento, muestre la contraseña y salga del proceso
If Flag lt;
Label1.Caption = "Contraseña del documento"
Label1.Refresh
Text1.Text = pasar
wd.Visible = True
cmdopendoc.MousePointer = 0
Salir Sub
Finalizar si
Siguiente I
Siguiente J
Siguiente K
MsgBox "Dígitos de contraseña incorrectos, vuelva a ingresar"
Fin Sub
Sub privado cmdquit_Click()
Fin
Fin Sub
Sub privado Dir1_Change()
File1.Path = Dir1.Path
Fin Sub
Sub unidad privada1_Change()
Dir1.Path = Unidad1.Drive
Fin Sub
>
Sub File1_DblClick() privado
Llamar a cmdopendoc_Click
End Sub
Tres, algunas notas
Lo que debe ser Como se explica, el descifrado exhaustivo consume recursos del sistema de manera muy alarmante; es mejor no ejecutar otras aplicaciones durante el proceso de descifrado. En vista de su enorme consumo de recursos, utilicé un pequeño truco en el programa, que consiste en utilizar el número de dígitos de la contraseña como el tamaño del paso del bucle a sondear. Es decir, si tu contraseña es de 3 dígitos, entonces el programa probará 100, 103, 106...997, 101, 104...998, 102, 105...999 y finalizará, acelerando la búsqueda de contraseña. (Expansión Oriental: De hecho, puedes hacer algunos cálculos para ver si es mucho más rápido, un poco más rápido o nada ^_^).
El programa pasó la prueba en el entorno Win98/NT+VB6.0. El autor probó aleatoriamente una contraseña de 5 dígitos en una máquina con PⅡ300 y 128 MB de memoria, se puede desbloquear en aproximadamente 10 minutos. . Por supuesto, el programa no es muy completo. Por ejemplo, también puede agregar interrupciones durante el proceso de descifrado y guardar el progreso del descifrado después de las interrupciones. Los lectores interesados pueden mejorarlo ellos mismos.