Título: Descifrar/cifrar archivos crypt5 de Whatsapp
Publicado por: dseoane en 23 Marzo 2014, 19:43 pm
Hola, por aquí os dejo un programa hecho en delphi para descifrar los ficheros crypt5 de whatsapp. program Crypt5;
{$APPTYPE CONSOLE}
uses SysUtils, Classes, SeAES256 in 'SeCrypt\SeAES256.pas', SeBase64 in 'SeCrypt\SeBase64.pas', SeSHA256 in 'SeCrypt\SeSHA256.pas', SeStreams in 'SeCrypt\SeStreams.pas', SeMD5 in 'SeCrypt\SeMD5.pas';
var { Las claves las conseguí aquí: h t t p://w w w . securitybydefault.com/2014/03/descifrando-msgstoredbcrypt5-la-nueva.html } Key: array[0..23] of Byte = (141, 75, 21, 92, 201, 255, 129, 229, 203, 246, 250, 120, 25, 54, 106, 62, 198, 33, 166, 86, 65, 108, 215, 147); IV: array[0..15] of Byte = ($1E,$39,$F3,$69,$E9,$D,$B3,$3A,$A7,$3B,$44,$2B, $BB,$B6,$B0,$B9);
i: Integer; md5: AnsiString; AESKey: TAESKey; AESExpandedKey: TAESExpandedKey; AESIV: TAESState; Src, Dst: TFileStream; begin Writeln('==================================================='); Writeln('Crypt5 decryptor/encryptor. http://delphi.jmrds.com'); Writeln('==================================================='); Writeln; if ParamCount < 3 then begin Writeln('Crypt5 <encrypted.db.crypt5> <accountname> <decrypted.db> [/e]'); Writeln(' /e: Encrypt database'); Writeln; Halt; end; try // Abrimos el archivo cifrado Src:= TFileStream.Create(ParamStr(1),fmOpenRead or fmShareDenyWrite); try // Calculamos el hash md5 de la cuenta de usuario md5:= MD5ToStr(CalcMD5(ParamStr(2))); for i:= 0 to 23 do // Mezcalmos el hash con la clave usand XOR Key[i]:= Key[i] xor Byte(StrToInt('$'+Copy(md5,(2*(i and $0F))+1,2))); // ACreamos el archivo de salida Dst:= TFileStream.Create(ParamStr(3),fmCreate); try FillChar(AESKey,Sizeof(AESKey),0); // Inicializamos la clave con el valor calculado AESCopyKey(AESKey,@Key,192); // Expandimos la clave, indicando que es de 192 bits AESExpandKey(AESExpandedKey,AESKey,192); // Cargamos el vector de inicializacion en un bloque move(IV,AESIV,Sizeof(IV)); if FindCmdLineSwitch('e',TRUE) then with TAESEnc.Create(Dst,AESExpandedKey,AESIV) do try // Ciframos el fichero CopyFrom(Src,0); finally Free; end else with TAESDec.Create(Dst,AESExpandedKey,AESIV) do try // Desciframos el fichero CopyFrom(Src,0); finally Free; end; finally Dst.Free; end; finally Src.Free end; except // Si ocurre algun error lo mostramos On E: Exception do begin Writeln(E.Message); end; end; end.
El uso no puede ser mas sencillo: Crypt5 msgstore.db.crypt5 tucuenta@gmail.com msgstore.db
O si por el contrario queremos cifrar: Crypt5 msgstore.db tucuenta@gmail.com msgstore.db.crypt5 /e
El archivo ya compilado: http://www.multiupload.nl/725VZDJKSF (http://www.multiupload.nl/725VZDJKSF) Saludos
Título: Re: Descifrar/cifrar archivos crypt5 de Whatsapp
Publicado por: segam en 28 Marzo 2014, 11:16 am
mas de 130 lecturas y ni un comentario. Alguien lo ha probado con exito???
Título: Re: Descifrar/cifrar archivos crypt5 de Whatsapp
Publicado por: dseoane en 28 Marzo 2014, 14:01 pm
Pues parece que en este foro no tuvo mucho éxito :-\ ... pero en este otro por ejemplo si lo probaron y les fue bien (siempre que se use la cuenta de gmail correcta) http://www.indetectables.net/viewtopic.php?f=12&t=49510
Título: Re: Descifrar/cifrar archivos crypt5 de Whatsapp
Publicado por: segam en 31 Marzo 2014, 11:32 am
Buena aplicacion. Gracias por el curro. Tienes un nuevo seguidor, he visitado tu pagina y me resulta muy interesante.
|