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

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Ingeniería Inversa (Moderadores: karmany, .:UND3R:., MCKSys Argentina)
| | |-+  algoritmo de desencriptación
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: algoritmo de desencriptación  (Leído 2,887 veces)
MaLkAvIaN_NeT

Desconectado Desconectado

Mensajes: 213


MaLkAvIaN_NeT


Ver Perfil WWW
algoritmo de desencriptación
« en: 3 Noviembre 2015, 03:18 am »

Buenas noches tengo que acceder a un sistema VFP del cual no tienen la clave, entré a las tablas usuario y la clave se encuentra cifrada con un algoritmo que no es md5, sha1, etc.

La contraseña cifrada es la siguiente:
Citar
ø»ôj̇

Eh decompilado el .EXE y he encontrado la función cifrar:
Código
  1. PARAMETER dato, encript, long
  2. peso = CHR(57) + CHR(51) + CHR(53) + CHR(49) + CHR(52) + CHR(50) + CHR(47) + CHR(41) + CHR(73) + CHR(99) + CHR(62) + CHR(70) + CHR(57) + CHR(51) + CHR(53) + CHR(49) + CHR(52) + CHR(50) + CHR(33) + CHR(14) + CHR(31) + CHR(90) + CHR(67) + CHR(51) + CHR(56) + CHR(90) + CHR(51) + CHR(54) + CHR(43) + CHR(74) + CHR(90) + CHR(34) + CHR(57) + CHR(42) + CHR(44) + CHR(49) + CHR(42) + CHR(60) + CHR(39) + CHR(84) + CHR(77) + CHR(75) + CHR(47) + CHR(23) + CHR(34) + CHR(54) + CHR(56) + CHR(59) + CHR(93) + CHR(34)
  3. consta = ASC(SUBSTR(dato, 2, 1))
  4. FOR x = 3 TO long STEP 2
  5.     consta = consta + ASC(SUBSTR(dato, x, 1))
  6. ENDFOR
  7. consta = consta / 7
  8. IF consta < 17
  9.     consta = 17
  10. ENDIF
  11. FOR x = 1 TO long
  12.     decena = VAL(SUBSTR(STR(ASC(SUBSTR(dato, x, 1))), 10, 1))
  13.     entero = consta * VAL(SUBSTR(peso, x, 1))
  14.     DO WHILE entero > 255
  15.          entero = entero - 33
  16.     ENDDO
  17.     newchr = entero + decena + ASC(SUBSTR(dato, x, 1))
  18.     DO WHILE newchr > 255
  19.          newchr = newchr - 19
  20.     ENDDO
  21.     IF x = 1
  22.          encript = CHR(newchr)
  23.     ELSE
  24.          encript = encript + CHR(newchr)
  25.     ENDIF
  26. ENDFOR
  27. RETURN encript
  28. ENDFUNC
  29. *
  30. *
  31.  


Alguien puede ayudarme ha descifrar esa clave?, no he programado en el lenguaje VFP... o en todo caso decirme si se puede hacer ingeniería inversa a ese algoritmo para meterme a estudiar el lenguaje.

Gracias.
En línea

a por las buenas ideas
MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.524


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: algoritmo de desencriptación
« Respuesta #1 en: 3 Noviembre 2015, 12:57 pm »

Hola!

En efecto, si puedes invertir esa función. Sólo debes entender qué es lo que hace y luego hacer lo inverso.

Si nunca has programado en VFP, dispones de la MSDN para solventar las dudas que tengas respecto a la sintaxis del lenguaje.

Una buena ayuda sería que veas la parte donde es llamada (usada) la función, ya que recibe un parámetro (long) el cual no está claro qué es lo que es (no parece ser el largo de "dato")

Saludos!
En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

MaLkAvIaN_NeT

Desconectado Desconectado

Mensajes: 213


MaLkAvIaN_NeT


Ver Perfil WWW
Re: algoritmo de desencriptación
« Respuesta #2 en: 3 Noviembre 2015, 14:45 pm »

Gracias!. Algo más práctico y rápido porque el tiempo apremia va a ser crearme un proyecto VFP con esa función, genero una nueva clave y hago un update a la tabla usuario con la clave cifrada. Tuve que dormir para despejarme  :xD
En línea

a por las buenas ideas
MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.524


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: algoritmo de desencriptación
« Respuesta #3 en: 4 Noviembre 2015, 03:10 am »

Gracias!. Algo más práctico y rápido porque el tiempo apremia va a ser crearme un proyecto VFP con esa función, genero una nueva clave y hago un update a la tabla usuario con la clave cifrada. Tuve que dormir para despejarme  :xD

Si lo ves desde el punto de vista de la practicidad y la rapidez, el método que has elegido es válido; pero desde el momento en que éste es el foro de Ing. Inversa, te recomiendo analizar la función e invertirla. Es muy buena práctica!  ;)

Saludos!
En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Algoritmo de desencriptación de contraseñas para FileZilla Client
Programación Visual Basic
xavierote 0 5,755 Último mensaje 6 Septiembre 2005, 19:20 pm
por xavierote
Desencriptacion en Memoria « 1 2 3 4 »
Programación Visual Basic
Hendrix 31 11,488 Último mensaje 27 Agosto 2007, 07:56 am
por cobein
Proyecto desencriptación algoritmo redes "SpeedTouchHHHHHH": avances y estado « 1 2 ... 7 8 »
Hacking Wireless
hrodgar 73 58,195 Último mensaje 28 Agosto 2011, 12:02 pm
por david020573
Problema desencriptacion wpa
Hacking Wireless
Shodajer 0 2,479 Último mensaje 13 Marzo 2011, 17:53 pm
por Shodajer
encripacion y desencriptacion de archivo .dat
Ingeniería Inversa
kevin555 2 4,023 Último mensaje 27 Abril 2016, 21:02 pm
por MCKSys Argentina
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines