Fixed unterminated salt buffer in -m 23400 module_hash_encode() in case salt was of length 256

pull/2639/head^2
Jens Steube 3 years ago
parent a2fcb03fe3
commit 4221bd151c

@ -68,6 +68,7 @@
- Fixed unexpected non-unique salts in multi-hash cracking in Bitcoin/Litecoin wallet.dat module which led to false negatives
- Fixed unit test for -m 3000 by preventing it to generate zero hashes
- Fixed unit tests using 'null' as padding method in Crypt::CBC but actually want to use 'none'
- Fixed unterminated salt buffer in -m 23400 module_hash_encode() in case salt was of length 256
- Fixed vector datatype support in -m 21100 only -P mode and only -a 3 mode were affected
##

@ -201,11 +201,11 @@ int module_hash_encode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE
// salt_buf
#define SALT_LEN_BASE64 ((SALT_MAX * 8) / 6) + 3
u8 salt_buf[SALT_MAX * 2];
u8 salt_buf[SALT_LEN_BASE64] = { 0 };
const int salt_len = base64_encode (int_to_base64, (const u8 *) salt->salt_buf, (const int) salt->salt_len, salt_buf);
base64_encode (int_to_base64, (const u8 *) salt->salt_buf, (const int) salt->salt_len, salt_buf);
salt_buf[salt_len] = 0;
// hash_buf

Loading…
Cancel
Save