Red de conocimiento informático - Material del sitio web - ¿Cómo utilizar VB para escribir un programa para descifrar contraseñas de Word?

¿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.