From 6caa78695fb3105b8f2118b76fb9b18986b465ab Mon Sep 17 00:00:00 2001 From: Jens Steube Date: Mon, 29 Apr 2019 12:26:22 +0200 Subject: [PATCH] Backport -m 19500 fix to -m 19300 --- src/modules/module_19300.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/modules/module_19300.c b/src/modules/module_19300.c index 96afd99ba..4b1da6300 100644 --- a/src/modules/module_19300.c +++ b/src/modules/module_19300.c @@ -9,6 +9,7 @@ #include "bitops.h" #include "convert.h" #include "shared.h" +#include "emu_inc_hash_md5.h" static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL; static const u32 DGST_POS0 = 3; @@ -125,10 +126,17 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE // make salt sorter happy - salt->salt_buf[0] = sha1_double_salt->salt1_buf[0] ^ sha1_double_salt->salt2_buf[0]; - salt->salt_buf[1] = sha1_double_salt->salt1_buf[1] ^ sha1_double_salt->salt2_buf[1]; - salt->salt_buf[2] = sha1_double_salt->salt1_buf[2] ^ sha1_double_salt->salt2_buf[2]; - salt->salt_buf[3] = sha1_double_salt->salt1_buf[3] ^ sha1_double_salt->salt2_buf[3]; + md5_ctx_t md5_ctx; + + md5_init (&md5_ctx); + md5_update (&md5_ctx, sha1_double_salt->salt1_buf, sha1_double_salt->salt1_len); + md5_update (&md5_ctx, sha1_double_salt->salt2_buf, sha1_double_salt->salt2_len); + md5_final (&md5_ctx); + + salt->salt_buf[0] = md5_ctx.h[0]; + salt->salt_buf[1] = md5_ctx.h[1]; + salt->salt_buf[2] = md5_ctx.h[2]; + salt->salt_buf[3] = md5_ctx.h[3]; salt->salt_len = 16;