Underc0de - Hacking y seguridad informática

Programación General => C# - VB.NET => Mensaje iniciado por: 79137913 en Junio 06, 2017, 10:41:39 am

Título: Crea tu propio Creador de Diccionarios por Fuerza Bruta en VBNet en solo 3 Pasos
Publicado por: 79137913 en Junio 06, 2017, 10:41:39 am
HOLA!!!

Hoy veremos como crear un Creador de Diccionarios con VB.NET!

1)Primero crearemos el proyecto
(http://i.imgur.com/umafS5w.png)

2)Luego en el Form1 Realizar la siguente interfaz (respetando los nombres de los controles):
(http://i.imgur.com/kwGADcR.png)
2.b) si queremos les ponemos los .Text para que quede asi:
(http://i.imgur.com/DDJbEtA.png)

3)Codigo:
3.a)Arriba de la clase Form1 ponemos lo siguiente:
Código: vb.net
  1. Imports System.IO 'importamos esta libreria para poder trabajar con archivos

3.b)Dentro de la clase Form1 ponemos lo siguiente:
Código: vb.net
  1.     Const Sym As String = "/\!·$%&/()='""¡¿?<>., :;-_*+" 'Simbolos
  2.     Const Num As String = "0123456789"                   'Numeros
  3.     Const Min As String = "abcdefghijklmnopqrstuvwxyz"   'Letras Minusculas
  4.     Const May As String = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"   'Letras Mayusculas
  5.     Const SpL As String = "áéíóúàèìòùâêîôûäëïöüçñ"       'Letras Especiales Minusculas
  6.     Const SpU As String = "ÁÉÍÓÚÀÈÌÒÙÂÊÎÔÛÄËÏÖÜÇÑ"       'Letras Especiales Mayusculas

3.c)Una vez esta listo el formulario y los controles le damos doble click a btnIniciar y dejamos este codigo dentro:
Código: vb.net
  1.         'by 79137913 for Underc0de.org
  2.         'creamos secuencia de caracteres a utilizar
  3.         Dim Letras As String = "" 'string que contendra todos los caracteres a combinar para hacer el diccionario
  4.         If checkNumeros.Checked Then Letras = Letras & Num 'si Numeros esta tildado agregamos eso a la cadena
  5.         If checkSimbolos.Checked Then Letras = Letras & Sym 'si Simbolos esta tildado agregamos eso a la cadena
  6.         If checkMinusculas.Checked Then Letras = Letras & Min 'si Letras Minusculas esta tildado agregamos eso a la cadena
  7.         If checkMayusculas.Checked Then Letras = Letras & May 'si Letras Mayusculas esta tildado agregamos eso a la cadena
  8.         If checkEspMin.Checked Then Letras = Letras & SpL 'si Letras Especiales Minusculas esta tildado agregamos eso a la cadena
  9.         If checkEspMay.Checked Then Letras = Letras & SpU 'si Letras Especiales Mayusculas esta tildado agregamos eso a la cadena
  10.         If checkAddMore.Checked Then Letras = Letras & txtAddMore.Text 'si Agregar Siguientes Caracters esta tildado agregamos eso a la cadena
  11.  
  12.         Dim CantLet As Long = Letras.Length - 1 'cantidad de letras
  13.         Dim BufferPalabras As Long = 10000
  14.         Dim Palabras(BufferPalabras) As String 'aqui se guardaran las combinaciones mientras las vamos generando en este ejemplo iremos guardando de a 10000 combinaciones
  15.         Dim CT As Long = 0 'este contador nos dira cuantas palabras estan pendientes de guardar en el archivo
  16.         Dim UbicacionArchivo As String = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) & "\Diccionario.txt" 'ubicacion del archivo de salida (en mis documentos)
  17.         Dim CantPos As Long = 0 'Cantidad de letras palabra actual
  18.         Dim Desde As Long = CInt(txtD.Text) 'desde que cantidad de caracteres
  19.         Dim Hasta As Long = CInt(txtH.Text) 'hasta que cantidad de caracteres
  20.         Dim Posiciones() As Long
  21.  
  22.  
  23.         MsgBox("Se iniciara el proceso, puede tardar mucho, para detener cierre la aplicacion con el Administrador de Tareas.",, "ATENCION")
  24.  
  25.         Dim fs As FileStream = File.Create(UbicacionArchivo) 'creamos o sobreescribimos el archivo
  26.         fs.Close() 'cerramos el archivo para que se pueda escribir
  27.  
  28.         For y = 0 To Hasta - Desde
  29.             CantPos = Desde + y - 1 'establecemos el tamañode la combinacion actual
  30.             ReDim Posiciones(CantPos)
  31.             Do
  32.  
  33.                 For x = 0 To CantPos 'una vez por cada posicion que tenga que tener la palabra
  34.                     Palabras(CT) = Palabras(CT) & Letras(Posiciones(x)) 'armamos una combinacion uniendo los caracteres de la cadena letras
  35.                 Next x
  36.  
  37.                 CT += 1 'incrementamos CT en 1
  38.                 Posiciones(0) += 1 'incrementamos la primera letra de posiciones (para que pase de "a" a "b" por ejemplo)
  39.  
  40.                 For x = 0 To CantPos - 1 'nos fijamos si alguna posicion es mayor a la cantidad de letras si es asi volvemos a 0 esa posicion e incrementamos la siguiente
  41.                     If Posiciones(x) > CantLet Then Posiciones(x) = 0 : Posiciones(x + 1) += 1
  42.                 Next
  43.  
  44.                 If CT = BufferPalabras + 1 Then
  45.                     File.AppendAllLines(UbicacionArchivo, Palabras) 'escribimos nuestro buffer de palabras en el archivo linea por linea
  46.                     CT = 0 'volvemos el contador a 0
  47.                     ReDim Palabras(BufferPalabras) 'borramos el buffer de palabras
  48.                 End If
  49.             Loop Until Posiciones(CantPos) = CantLet + 1
  50.         Next y
  51.         If CT > 0 Then 'si hay palabras pendientes de escribir
  52.             ReDim Preserve Palabras(CT - 1)
  53.             File.AppendAllLines(UbicacionArchivo, Palabras) 'escribimos nuestro buffer de palabras en el archivo linea por linea
  54.             CT = 0
  55.         End If
  56.         MsgBox("Terminado, mira en " & UbicacionArchivo & " , y encontraras el diccionario.",, "ATENCION")

El codigo Completo del proyecto quedaria asi:
Código: vb.net
  1. Imports System.IO 'importamos esta libreria para poder trabajar con archivos
  2.  
  3. Public Class Form1
  4.     Const Sym As String = "/\!·$%&/()='""¡¿?<>., :;-_*+" 'Simbolos
  5.     Const Num As String = "0123456789"                   'Numeros
  6.     Const Min As String = "abcdefghijklmnopqrstuvwxyz"   'Letras Minusculas
  7.     Const May As String = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"   'Letras Mayusculas
  8.     Const SpL As String = "áéíóúàèìòùâêîôûäëïöüçñ"       'Letras Especiales Minusculas
  9.     Const SpU As String = "ÁÉÍÓÚÀÈÌÒÙÂÊÎÔÛÄËÏÖÜÇÑ"       'Letras Especiales Mayusculas
  10.  
  11.     Private Sub btnIniciar_Click(sender As Object, e As EventArgs) Handles btnIniciar.Click
  12.         'by 79137913 for Underc0de.org
  13.         'creamos secuencia de caracteres a utilizar
  14.         Dim Letras As String = "" 'string que contendra todos los caracteres a combinar para hacer el diccionario
  15.         If checkNumeros.Checked Then Letras = Letras & Num 'si Numeros esta tildado agregamos eso a la cadena
  16.         If checkSimbolos.Checked Then Letras = Letras & Sym 'si Simbolos esta tildado agregamos eso a la cadena
  17.         If checkMinusculas.Checked Then Letras = Letras & Min 'si Letras Minusculas esta tildado agregamos eso a la cadena
  18.         If checkMayusculas.Checked Then Letras = Letras & May 'si Letras Mayusculas esta tildado agregamos eso a la cadena
  19.         If checkEspMin.Checked Then Letras = Letras & SpL 'si Letras Especiales Minusculas esta tildado agregamos eso a la cadena
  20.         If checkEspMay.Checked Then Letras = Letras & SpU 'si Letras Especiales Mayusculas esta tildado agregamos eso a la cadena
  21.         If checkAddMore.Checked Then Letras = Letras & txtAddMore.Text 'si Agregar Siguientes Caracters esta tildado agregamos eso a la cadena
  22.  
  23.         Dim CantLet As Long = Letras.Length - 1 'cantidad de letras
  24.         Dim BufferPalabras As Long = 10000
  25.         Dim Palabras(BufferPalabras) As String 'aqui se guardaran las combinaciones mientras las vamos generando en este ejemplo iremos guardando de a 10000 combinaciones
  26.         Dim CT As Long = 0 'este contador nos dira cuantas palabras estan pendientes de guardar en el archivo
  27.         Dim UbicacionArchivo As String = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) & "\Diccionario.txt" 'ubicacion del archivo de salida (en mis documentos)
  28.         Dim CantPos As Long = 0 'Cantidad de letras palabra actual
  29.         Dim Desde As Long = CInt(txtD.Text) 'desde que cantidad de caracteres
  30.         Dim Hasta As Long = CInt(txtH.Text) 'hasta que cantidad de caracteres
  31.         Dim Posiciones() As Long
  32.  
  33.  
  34.         MsgBox("Se iniciara el proceso, puede tardar mucho, para detener cierre la aplicacion con el Administrador de Tareas.",, "ATENCION")
  35.  
  36.         Dim fs As FileStream = File.Create(UbicacionArchivo) 'creamos o sobreescribimos el archivo
  37.         fs.Close() 'cerramos el archivo para que se pueda escribir
  38.  
  39.         For y = 0 To Hasta - Desde
  40.             CantPos = Desde + y - 1 'establecemos el tamañode la combinacion actual
  41.             ReDim Posiciones(CantPos)
  42.             Do
  43.  
  44.                 For x = 0 To CantPos 'una vez por cada posicion que tenga que tener la palabra
  45.                     Palabras(CT) = Palabras(CT) & Letras(Posiciones(x)) 'armamos una combinacion uniendo los caracteres de la cadena letras
  46.                 Next x
  47.  
  48.                 CT += 1 'incrementamos CT en 1
  49.                 Posiciones(0) += 1 'incrementamos la primera letra de posiciones (para que pase de "a" a "b" por ejemplo)
  50.  
  51.                 For x = 0 To CantPos - 1 'nos fijamos si alguna posicion es mayor a la cantidad de letras si es asi volvemos a 0 esa posicion e incrementamos la siguiente
  52.                     If Posiciones(x) > CantLet Then Posiciones(x) = 0 : Posiciones(x + 1) += 1
  53.                 Next
  54.  
  55.                 If CT = BufferPalabras + 1 Then
  56.                     File.AppendAllLines(UbicacionArchivo, Palabras) 'escribimos nuestro buffer de palabras en el archivo linea por linea
  57.                     CT = 0 'volvemos el contador a 0
  58.                     ReDim Palabras(BufferPalabras) 'borramos el buffer de palabras
  59.                 End If
  60.             Loop Until Posiciones(CantPos) = CantLet + 1
  61.         Next y
  62.         If CT > 0 Then 'si hay palabras pendientes de escribir
  63.             ReDim Preserve Palabras(CT - 1)
  64.             File.AppendAllLines(UbicacionArchivo, Palabras) 'escribimos nuestro buffer de palabras en el archivo linea por linea
  65.             CT = 0
  66.         End If
  67.         MsgBox("Terminado, mira en " & UbicacionArchivo & " , y encontraras el diccionario.",, "ATENCION")
  68.     End Sub
  69. End Class
  70.  

Cuando ya colocamos el codigo solo queda iniciar (apretar F5) y empezar a usarlo, tildan los caracteres que quieren usar o ponen sus caracteres a eleccion en  el cuadro de texto y tildan el checkAddMore,luego presionan Button1 y la magia comienza:
(http://i.imgur.com/DDJbEtA.png)

Notas: Puede tardar mucho tiempo, pero los diccionarios siempre tardan mucho en generarse, para mejorar la performance pueden incrementar la variable BufferPalabras, pero el programa consumira mas memoria RAM.

Descargar Source: http://www.mediafire.com/file/tu7oqinqnvo9ltx/BFDCBY79137913.rar/file

Hecho y redactado por 79137913

Agradecimientos @ANTRAX

Brute Force Dictionary Creator VBNET

GRACIAS POR LEER!!!
Título: Re:Crea tu propio Creador de Diccionarios por Fuerza Bruta en VBNet en solo 3 Pasos
Publicado por: Anonimo501 en Agosto 31, 2019, 10:24:53 am
Gracias Buen trabajo.
El link esta caído: Descargar Source: http://www.mediafire.com/file/3y27q78e782xzd8/BruteForceDictionaryCreator.rar
Título: Re:Crea tu propio Creador de Diccionarios por Fuerza Bruta en VBNet en solo 3 Pasos
Publicado por: 79137913 en Septiembre 03, 2019, 10:57:38 am
HOLA!!!

Link Resubido!
http://www.mediafire.com/file/tu7oqinqnvo9ltx/BFDCBY79137913.rar/file

GRACIAS POR LEER!!!