From 6c0dc7493e83b9b11a2d2c98e15af04af0dc4875 Mon Sep 17 00:00:00 2001 From: Jens Steube Date: Fri, 29 May 2020 11:19:49 +0200 Subject: [PATCH] Fix modules where salt->salt_buf[] is used but salt->salt_len was not set --- src/modules/module_14000.c | 2 ++ src/modules/module_14100.c | 2 ++ src/modules/module_19600.c | 2 ++ src/modules/module_19700.c | 2 ++ src/modules/module_19800.c | 2 ++ src/modules/module_19900.c | 2 ++ 6 files changed, 12 insertions(+) diff --git a/src/modules/module_14000.c b/src/modules/module_14000.c index e2dabbed1..8ccf0cdc3 100644 --- a/src/modules/module_14000.c +++ b/src/modules/module_14000.c @@ -178,6 +178,8 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE salt->salt_buf[2] = 0; salt->salt_buf[3] = 0; + salt->salt_len = 8; + salt->salt_buf_pc[0] = salt->salt_buf[0]; salt->salt_buf_pc[1] = salt->salt_buf[1]; diff --git a/src/modules/module_14100.c b/src/modules/module_14100.c index 3449b6844..77ffe0a61 100644 --- a/src/modules/module_14100.c +++ b/src/modules/module_14100.c @@ -139,6 +139,8 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE salt->salt_buf[2] = 0; salt->salt_buf[3] = 0; + salt->salt_len = 8; + salt->salt_buf_pc[0] = salt->salt_buf[0]; salt->salt_buf_pc[1] = salt->salt_buf[1]; diff --git a/src/modules/module_19600.c b/src/modules/module_19600.c index a96be303b..5f686a5be 100644 --- a/src/modules/module_19600.c +++ b/src/modules/module_19600.c @@ -242,6 +242,8 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE salt->salt_buf[1] = krb5tgs->checksum[1]; salt->salt_buf[2] = krb5tgs->checksum[2]; + salt->salt_len = 12; + salt->salt_iter = 4096 - 1; digest[0] = krb5tgs->checksum[0]; diff --git a/src/modules/module_19700.c b/src/modules/module_19700.c index 52a4c1ef3..f1602593d 100644 --- a/src/modules/module_19700.c +++ b/src/modules/module_19700.c @@ -242,6 +242,8 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE salt->salt_buf[1] = krb5tgs->checksum[1]; salt->salt_buf[2] = krb5tgs->checksum[2]; + salt->salt_len = 12; + salt->salt_iter = 4096 - 1; digest[0] = krb5tgs->checksum[0]; diff --git a/src/modules/module_19800.c b/src/modules/module_19800.c index 5d92c6fde..3bca20227 100644 --- a/src/modules/module_19800.c +++ b/src/modules/module_19800.c @@ -188,6 +188,8 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE salt->salt_buf[1] = krb5pa->checksum[1]; salt->salt_buf[2] = krb5pa->checksum[2]; + salt->salt_len = 12; + salt->salt_iter = 4096 - 1; digest[0] = krb5pa->checksum[0]; diff --git a/src/modules/module_19900.c b/src/modules/module_19900.c index 6e355c4ac..117887cb9 100644 --- a/src/modules/module_19900.c +++ b/src/modules/module_19900.c @@ -188,6 +188,8 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE salt->salt_buf[1] = krb5pa->checksum[1]; salt->salt_buf[2] = krb5pa->checksum[2]; + salt->salt_len = 12; + salt->salt_iter = 4096 - 1; digest[0] = krb5pa->checksum[0];