elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  [TUTORIAL] Generador de diccionarios.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [TUTORIAL] Generador de diccionarios.  (Leído 2,770 veces)
79137913


Desconectado Desconectado

Mensajes: 1.169


4 Esquinas


Ver Perfil WWW
[TUTORIAL] Generador de diccionarios.
« en: 13 Abril 2012, 15:57 pm »

HOLA!!!

Este tutorial lo arme para explicar como hacer un generador de diccionarios como mi BruteForceDicctionaryCreator o BFDC7913.

Empecemos...

Suponiendo que tenes esta cadena de posibles caracteres:
Código:

"ABCDEFGHIJKLMNOPQRSTUVWXYabcdefghijklmnopqrstuvwxyz0123456789"

Es la mas comun y tiene 26+26+10 osea 62 caracteres correcto?
Eso yo recomendaria guardarlo en un Vector (array).

Para eso yo uso la funcion:
Código

Código
  1. Private Function CharSplit7913(expression As String) As String()
  2.    Dim lExp     As Long
  3.    Dim ExpB()   As Byte
  4.    Dim AuxArr() As String
  5.    ExpB = expression
  6.    lExp = UBound(ExpB)
  7.    ReDim AuxArr(lExp)
  8.    For X = 0 To lExp Step 2
  9.        AuxArr(X / 2) = ChrW(ExpB(X))
  10.    Next
  11.    ReDim Preserve AuxArr(Int(lExp / 2))
  12.    CharSplit7913 = AuxArr
  13. End Function


El vector resultante suponete que lo llamamos Chars() queda compuesto asi:
Chars(0 to 61) : "A","B","C",...,"7","8","9".
Espero que hasta ahi me sigas.

En este punto solo tenemos en un Vector (array) guardados todos los caracteres que vamos a usar.

Ahora, solicitamos la longitud en este caso la guardaremos en la variable Tam (de tamaño)

Ahora vamos a crear un vector donde guardaremos la cadena actual, su index maximo sera tam-1.

Suponiendo que tam = 3

hacemos asi:

Código

Dim Palabra() as integer
'dentro del proceso de creacion de diccionario
Redim Palabra(Tam-1)


Aca lo que hicimos es hacer que Palabra quedara (0 to 2) inicializandose asi:
Palabra(0 to 2): 0,0,0

aca empieza el proceso de creacion de strings...

Código

Código
  1. Dim AuxPalabra As String
  2. Do
  3.    AuxPalabra = 0
  4.    For X = 0 To tam - 1
  5.        AuxPalabra = AuxPalabra & chars(palabra(X)) ' aca concatenamos todas las letras
  6.    Next
  7.    Print AuxPalabra ' aca imprimo la palabra resultante.
  8.    palabra(0) = palabra(0) + 1 ' aca muevo un caracter
  9.    For X = 0 To UBound(palabra) - 1
  10.        If palabra(X) = UBound(chars) + 1 Then
  11.            'aca verificamos que ninguna casilla quede con un numero mayor a los
  12.            'caracteres que hay y si pasa eso aumenta la siguiente casilla
  13.            'y la actual se vuelve a 0
  14.            palabra(X + 1) = palabra(X + 1) + 1
  15.            palabra(X) = 0
  16.        End If
  17.        'esto de abajo es para ver cuando se termino el proceso
  18.        'osea cuando se han hecho todas las combinaciones.
  19.        If palabra(UBound(palabra)) = UBound(chars) + 1 Then Exit Do
  20.    Next
  21. Loop
  22.  

Entonces como te quedaria todo el codigo completo...

Código

Código
  1. Dim Diccionario As String
  2. Dim chars() As String
  3. Dim Tam As Integer
  4. Dim Palabra() As Integer
  5. Private Sub Form_Load()
  6. 'aca en diccionario pone lo que quieras
  7. Diccionario = "ABCDEFGHIJKLMNOPQRSTUVWXYabcdefghijklmnopqrstuvwxyz0123456789"
  8. chars = CharSplit7913(Diccionario)
  9. Tam = InputBox("inserte cantidad de caracteres")
  10. ReDim Palabra(Tam - 1)
  11. End Sub
  12.  
  13.  
  14. Private Sub InicioDeProceso()
  15. Dim AuxPalabra As String
  16.    Do
  17.        AuxPalabra = 0
  18.        For X = 0 To Tam - 1
  19.            AuxPalabra = AuxPalabra & chars(Palabra(X)) ' aca concatenamos todas las letras
  20.        Next
  21.        Debug.Print AuxPalabra ' aca imprimo la palabra resultante.
  22.        Palabra(0) = Palabra(0) + 1 ' aca muevo un caracter
  23.        For X = 0 To UBound(Palabra) - 1
  24.            If Palabra(X) = UBound(chars) + 1 Then
  25.                'aca verificamos que ninguna casilla quede con un numero mayor a los
  26.                'caracteres que hay y si pasa eso aumenta la siguiente casilla
  27.                'y la actual se vuelve a 0
  28.                Palabra(X + 1) = Palabra(X + 1) + 1
  29.                Palabra(X) = 0
  30.            End If
  31.            'esto de abajo es para ver cuando se termino el proceso
  32.            'osea cuando se han hecho todas las combinaciones.
  33.            If Palabra(UBound(Palabra)) = UBound(chars) + 1 Then Exit Do
  34.        Next
  35.    Loop
  36.    MsgBox "Proceso Terminado"
  37. End Sub
  38.  
  39. Private Function CharSplit7913(expression As String) As String()
  40.    Dim lExp     As Long
  41.    Dim ExpB()   As Byte
  42.    Dim AuxArr() As String
  43.        ExpB = expression
  44.        lExp = UBound(ExpB)
  45.        ReDim AuxArr(lExp)
  46.        For X = 0 To lExp Step 2
  47.            AuxArr(X / 2) = ChrW(ExpB(X))
  48.        Next
  49.        ReDim Preserve AuxArr(Int(lExp / 2))
  50.        CharSplit7913 = AuxArr
  51. End Function
  52.  

GRACIAS POR LEER!!!


En línea

"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

 79137913                          *Shadow Scouts Team*
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[APORTE] Generador de Diccionarios VB.NET « 1 2 »
.NET (C#, VB.NET, ASP)
kub0x 15 16,981 Último mensaje 13 Septiembre 2012, 18:36 pm
por .oZONo.
Algun generador de diccionarios para Orange-xxxxx
Hacking Wireless
Distorsion 3 6,184 Último mensaje 3 Agosto 2012, 18:58 pm
por jonycusac
Generador de Diccionarios del Wifislax de 64 Bits - Dudas
Hacking Wireless
Miguell64x 0 2,832 Último mensaje 6 Agosto 2012, 06:39 am
por Miguell64x
Generador de Diccionarios BS-Crunch
Hacking Wireless
nicosilver 0 4,022 Último mensaje 25 Diciembre 2012, 03:44 am
por nicosilver
Generador Diccionarios a medida
Seguridad
Hirochi3D 0 2,164 Último mensaje 21 Enero 2014, 11:08 am
por Hirochi3D
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines