como usar rainbowcrack

Iniciado por greenselves, 23 Mayo 2011, 15:48 PM

0 Miembros y 1 Visitante están viendo este tema.

greenselves

hola, tengo un proyecto sobre el crackeo de contraseñas de usuario en linux con rainbowcrack, pero tengo dudas con los parametros que se usan, y salida que me tiene que arrojar despues de pasarlo por el rcrack.

Por ejemplo, estoy haciendo pruebas con la contraseña: 312

para el rtgen uso:
./rtgen sha1 numeric 1 7 0 2400 80000 all
./rtgen sha1 numeric 1 7 1 2400 80000 all
./rtgen sha1 numeric 1 7 2 2400 80000 all
./rtgen sha1 numeric 1 7 3 2400 80000 all
./rtgen sha1 numeric 1 7 4 2400 80000 all

Pero ni idea de lo que signifique los valores 0 2400 80000, se que tiene que ver con la memoria, el tiempo y la longitud de las tablas de rainbow, pero aun no entiendo bien el concepto.

Y por ultimo, al pasarlos por el rcrack (despues del rtsort), uso este comando:
./rcrack rt.* -f hash.txt

Pero el archivo hash.txt yo lo cree =S, no se que es lo que tengo que mandarle como parametro.

He leido algunos post anteriores, pero la verdad no entiendo, espero me puedan echar la mano con esto.
Greenselves

APOKLIPTICO

Mirá, una rainbow table, es una tabla de hashes precalculados, es decir, cuando uno trata de crackear un hash hace lo siguiente:
hash("Password a intentar"), una tabla precalculada es en pocas palabras una base de datos que tiene el password a intentar y el hash, de esta manera, sólo se tiene que buscar el hash en la tabla y listo, se ahorra mucho tiempo. El problema es que ocupan bastante espacio cada una. Es por eso que se conoce al método como time-memory tradeoff.

Según los parámetros que le pongas al rtgen, vas a poder definir:
- Tamaño mínimo y máximo del password.
- Keyspace a abarcar (numerico, loweralfa, upperalfa, etc.)
- Tamaño de la base de datos en disco.
- Porcentaje de éxito.
- Tiempo de precálculo.
- Tiempo de búsqueda.

Los parámetros que le pasas al rtgen son:
Sha1: El algoritmo de hash.
Numeric: El keyspace a abarcar (de 0 a 9 en este caso).
1: Tamaño mínimo.
7: Tamaño máximo.
0-4: Número de tabla.
2400: Chain len. Longitud de la cadena. Cuando este número aumenta: La probabilidad de éxito, el tiempo de precálculo y el tiempo de búsqueda.
80000: Chain Count. Cantidad de cadenas. Cuando este número aumenta: Aumenta el tamaño, la probabilidad de éxito y el tiempo de precálculo.

Esto significa, que si aumentás la chain len, vas a tardar más en buscar en las tablas una vez que estén creadas, pero vas a aumentar la probabilidad de éxito sin alterar el tamaño de la tabla.
Por otro lado, si aumentas la chain count, no vas a tardar más en buscar en las tablas, pero va a aumentar el tamaño de la tabla misma.

Esto significa que te conviene buscar un chain len que te de poco tiempo de búsqueda, y una vez que lo hayas seleccionado, aumentar el chain count hasta que te de una probabilidad de éxito que te guste.

Para hacer estos cálculos te recomiendo que uses winrtgen o su equivalente en linux, tiene un benchmark que te calcula cuanto tiempo vas a tardar en hacer las tablas y el tiempo que vas a tardar en buscar en las mismas.

Un abrazo
APOKLIPTICO.
AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore
ASUS M4A89GTD-PRO/USB3
2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T)
Seagate 500 Gb
XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.