descifrar algoritmo de encriptación vfp
Publicado por malkavian_net (1 intervención) el 03/11/2015 03:49:38
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:
ø»ôj̇
Eh decompilado el .EXE y he encontrado la función cifrar:
La contraseña cifrada es la siguiente:
ø»ôj̇
Eh decompilado el .EXE y he encontrado la función cifrar:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
PARAMETER dato, encript, long
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)
consta = ASC(SUBSTR(dato, 2, 1))
FOR x = 3 TO long STEP 2
consta = consta + ASC(SUBSTR(dato, x, 1))
ENDFOR
consta = consta / 7
IF consta < 17
consta = 17
ENDIF
FOR x = 1 TO long
decena = VAL(SUBSTR(STR(ASC(SUBSTR(dato, x, 1))), 10, 1))
entero = consta * VAL(SUBSTR(peso, x, 1))
DO WHILE entero > 255
entero = entero - 33
ENDDO
newchr = entero + decena + ASC(SUBSTR(dato, x, 1))
DO WHILE newchr > 255
newchr = newchr - 19
ENDDO
IF x = 1
encript = CHR(newchr)
ELSE
encript = encript + CHR(newchr)
ENDIF
ENDFOR
RETURN encript
ENDFUNC
*
Valora esta pregunta


0