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

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Expresiones Regulares y wordlist.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Expresiones Regulares y wordlist.  (Leído 2,139 veces)
AngelFire

Desconectado Desconectado

Mensajes: 118


WTF :)


Ver Perfil WWW
Expresiones Regulares y wordlist.
« en: 5 Junio 2018, 04:06 am »

Analizando y leyendo sobre el tema de fuerza bruta y cediendo al final como muchos cuando se entiende las limitantes para contraseñas a partir de los 8 caracteres con 10 numeros+26minusculas+26mayusculas+33caracteres especiales opto por pasar mejor a diccionarios o los conocidos wordlist  ;D.  Donde me encuentro 2 claros problemas entre muchos, la mayoría de las contraseñas contenida en los wordlist corresponde al ingles por lo que aplicarlo a contraseñas pensadas en español lo convierten en algo inútil, segundo al irnos a las innumerable fuentes de Internet la cantidad de contraseñas a manipular es tan grande como deseemos  y contener gran cantidad de repetidas es algo que reduce la eficiencia aunque en estadísticas sirve para organizar por frecuencia de uso.
Por dicho motivo he decidido fragmentar y filtrar la información ya que trabajar con grandes ficheros de contraseñas q no es algo que este muy difundido en Internet o al menos no encuentro nada relacionado.

Sin dudas python es la herramienta ideal para gestionar esta big data.
Comparto parte de mi código con el objetivo que algunos de los cerebros que andan en este foro sugieran modificaciones para hacerlo mas eficiente ya que eso de un for dentro de otro y asi no creo que sea la mejor forma aunque de momento medio funciona.

Estoy claro que es algo muy básico y no hace ni la mitad de lo que debería pero de comienzo se me ocurre clasificar todo en alphanumericos, symbols para los caracteres especiales y numeros para las contraseñas de solo números.

Sin mas aqui una version muy alpha de lo que quiero

Código:
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import re

#Criterio de fragmentacion.
#0 1 2 3 4 5 6 7 8 9

#a b c d e f g h i j
#k l m n o p q r s t
#u v w x y z

#A B C D E F G H I J
#K L M N O P Q R S T
#U V W X Y Z

#! " # $ % & ' ( ) *
#+ , - . / : ; < = >
#? @  [ \ ] ^ _ ` { |
#} ~

#FIX
#\$ \' \( \) \* \+ \. \? \[ \\\\ \^ \|

char = ['0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','!','"','#','\$','%','&','\'','\(','\)','\*','\+',',','-','\.','/',':',';','<','=','>','\?','@','\[','\\\\',']','\^','_','`','{','\|','}','~', ' ']



#Solicitud de wordlist a fragmentar segun criterio de fragmentacion.
v = raw_input('Introduce el fichero a procesar: ')
f = open(v,'r')
lineas = f.readlines()
f.close()

i=0
d=0

#Eliminar lineas en blanco en el fichero a fragmentar.
f = open(v,'w')

for linea in lineas:
if len(linea) > 1:
f.write(linea)
 
#Eliminar duplicado en el fichero a fragmentar.
content = open(v,'r').readlines()
content_set = set (content)
cleandata = open (v,'w')

for line in content_set:
cleandata.write(line)

cleandata.close()

f = open(v,'r')
lineas = f.readlines()
f.close()
 
#Clasificar en (Numeros [0-9],26 minusculas [a-z], 26 mayusculas [A-Z],Symbols 33 caracteres especiales [!- ]).
for i in range (95):
patterns = [char[i]]
for pattern in patterns:
for linea in lineas:
if re.match(pattern,  linea):
if i > 36:
if i < 62:
fn = open(char[i]+'_','a')
fn.writelines(linea)
else:
f = open('Symbols','a')
f.writelines(linea)
else:
f = open(char[i],'a')
f.writelines(linea)
else:
d=d+1

Igual lo iré mejorando ya que la idea es irle pasando wordlist y que se fragmente organizadamente para posterior uso en los diferentes programas de fuerza bruta. Evitar duplicados, poder buscar si contienen una contraseña en especifico sino agregarla etc. Como pueden ver no solo necesito mejoras de programación sino ademas mejoras de ideas para finalmente hacernos de nuestro potente wordlist.

Saludos.





« Última modificación: 5 Junio 2018, 06:41 am por AngelFire » En línea

Avispon99

Desconectado Desconectado

Mensajes: 82



Ver Perfil WWW
Re: Expresiones Regulares y wordlist.
« Respuesta #1 en: 9 Junio 2018, 02:39 am »

Buen aporte man, especialmente por dedicar tu tiempo a algo tan dispendioso como lo es el brute force, cosa que yo no haria por que ya de por si es un metodo poco eficiente en el mundo real, a menos que seas la CIA o la KGB y tengas salones llenos de poder de computo, e incluso así creo que optarian por metodos mas eficientes como la vieja y confiable backdoor insertada "accidentalmente" en productos comerciales con keylogging filtrado... :v


En línea

AngelFire

Desconectado Desconectado

Mensajes: 118


WTF :)


Ver Perfil WWW
Re: Expresiones Regulares y wordlist.
« Respuesta #2 en: 9 Enero 2019, 04:38 am »

Buen aporte man, especialmente por dedicar tu tiempo a algo tan dispendioso como lo es el brute force, cosa que yo no haria por que ya de por si es un metodo poco eficiente en el mundo real, a menos que seas la CIA o la KGB y tengas salones llenos de poder de computo, e incluso así creo que optarian por metodos mas eficientes como la vieja y confiable backdoor insertada "accidentalmente" en productos comerciales con keylogging filtrado... :v

Esta claro pero quizas te sorprendan los resultados obtenidos a traves de rockyou o wordlist probable v2 basado en mas de 350 gb de fugas de contraseñas reales de internet. Por otro lado tienes a https://wpa-sec.stanev.org/ que al subir los handshake igual haciendo uso de sus basicos diccionarios obtiene optimos resultados. Quizas las wifi que me rodean son mas descuidados que los que te rodean a ti. En lo personal siempre paso con ayuda de crunch
Código:
crunch 8 8 0123456789 -s 00000000 -e 99999999 | aircrack -e text.cap -w -
tras ver la cantidad de personas que solo ponen sus contraseñas con numeros de solo 8 digitos.

Finalmente deje el breachcompilation disponible en torrent, pues no solo termine dañando hdd ya algo viejos por falta de conocmientos y excesos de escrituras sino que ahi ya viene uno supuestamentes optimizado con lo que justamente queria hacerle al de 40 gb.


Conclusion:
Yo no descartaria el ataque por diccionarios y si se lograran optimizar para Español en vez de para Ingles como la mayoria estoy convencido que los resultados serian aun mejores. Mas sigo sin obtener buenos diccionarios en Español.

Pasar 39 gb de wordlist como el de g0tm1lk, no es nada descabellado desde mi PC que no es una super PC, claro al tener mucho contenido en ingles esto reduce ampliamente las posibilidades. Igual a veces existe sorpresa.

Haste de unos handshake WPA/WPA2 intenta y luego comenta tu experiencia.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Expresiones regulares
Programación Visual Basic
chrominum 1 2,320 Último mensaje 30 Enero 2008, 23:09 pm
por LeandroA
Expresiones Regulares + Php wtf!
PHP
Shell Root 4 4,462 Último mensaje 29 Marzo 2010, 01:24 am
por Castg!
expresiones Regulares
.NET (C#, VB.NET, ASP)
Choclito 3 5,607 Último mensaje 1 Mayo 2010, 05:09 am
por raul338
Expresiones Regulares
Programación General
Psyke1 9 5,420 Último mensaje 1 Junio 2010, 02:12 am
por SeC
expresiones regulares
Dudas Generales
m@o_614 1 2,614 Último mensaje 22 Junio 2014, 18:41 pm
por NikNitro!
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines