From 5dcc9a5d8b53ddd18c1329e27f4eb5623fb3c774 Mon Sep 17 00:00:00 2001 From: jsteube Date: Tue, 23 May 2023 12:31:54 +0000 Subject: [PATCH] Rename hash-modes 33100, 33200 to 32100, 32200 --- OpenCL/{m33100-pure.cl => m32100-pure.cl} | 10 +++++----- OpenCL/{m33200-pure.cl => m32200-pure.cl} | 12 ++++++------ docs/changes.txt | 2 ++ docs/readme.txt | 2 ++ src/modules/{module_33100.c => module_32100.c} | 2 +- src/modules/{module_33200.c => module_32200.c} | 2 +- tools/test_modules/{m33100.pm => m32100.pm} | 0 tools/test_modules/{m33200.pm => m32200.pm} | 0 8 files changed, 17 insertions(+), 13 deletions(-) rename OpenCL/{m33100-pure.cl => m32100-pure.cl} (99%) rename OpenCL/{m33200-pure.cl => m32200-pure.cl} (99%) rename src/modules/{module_33100.c => module_32100.c} (99%) rename src/modules/{module_33200.c => module_32200.c} (99%) rename tools/test_modules/{m33100.pm => m32100.pm} (100%) rename tools/test_modules/{m33200.pm => m32200.pm} (100%) diff --git a/OpenCL/m33100-pure.cl b/OpenCL/m32100-pure.cl similarity index 99% rename from OpenCL/m33100-pure.cl rename to OpenCL/m32100-pure.cl index a7869ea33..a1e9fe227 100755 --- a/OpenCL/m33100-pure.cl +++ b/OpenCL/m32100-pure.cl @@ -116,7 +116,7 @@ DECLSPEC void hmac_sha1_run_V (PRIVATE_AS u32x *w0, PRIVATE_AS u32x *w1, PRIVATE sha1_transform_vector (w0, w1, w2, w3, digest); } -KERNEL_FQ void m33100_init (KERN_ATTR_TMPS_ESALT (krb5asrep_17_tmp_t, krb5asrep_17_t)) +KERNEL_FQ void m32100_init (KERN_ATTR_TMPS_ESALT (krb5asrep_17_tmp_t, krb5asrep_17_t)) { /** * base @@ -194,7 +194,7 @@ KERNEL_FQ void m33100_init (KERN_ATTR_TMPS_ESALT (krb5asrep_17_tmp_t, krb5asrep_ } } -KERNEL_FQ void m33100_loop (KERN_ATTR_TMPS_ESALT (krb5asrep_17_tmp_t, krb5asrep_17_t)) +KERNEL_FQ void m32100_loop (KERN_ATTR_TMPS_ESALT (krb5asrep_17_tmp_t, krb5asrep_17_t)) { /** * base @@ -282,7 +282,7 @@ KERNEL_FQ void m33100_loop (KERN_ATTR_TMPS_ESALT (krb5asrep_17_tmp_t, krb5asrep_ } } -KERNEL_FQ void m33100_comp (KERN_ATTR_TMPS_ESALT (krb5asrep_17_tmp_t, krb5asrep_17_t)) +KERNEL_FQ void m32100_comp (KERN_ATTR_TMPS_ESALT (krb5asrep_17_tmp_t, krb5asrep_17_t)) { /** * base @@ -451,7 +451,7 @@ KERNEL_FQ void m33100_comp (KERN_ATTR_TMPS_ESALT (krb5asrep_17_tmp_t, krb5asrep_ For AS-REP EncASRepPart: The first byte is 0x79 (01 1 11001, where 01 = "class=APPLICATION", 1 = "form=constructed", 11001 is application type 25) - + According to RFC4120 Section 5.4.2: "Some implementations unconditionally send an encrypted EncTGSRepPart (application tag number 26) in this field regardless of whether the reply is a AS-REP or a TGS-REP. In the interest of compatibility, implementors MAY relax the check on the tag number of the decrypted ENC-PART" @@ -526,7 +526,7 @@ KERNEL_FQ void m33100_comp (KERN_ATTR_TMPS_ESALT (krb5asrep_17_tmp_t, krb5asrep_ if (((decrypted_block[0] & 0x00ff80ff) == 0x00300079) || ((decrypted_block[0] & 0x00ff80ff) == 0x0030007a) || - ((decrypted_block[0] & 0xFF00FFFF) == 0x30008179) || + ((decrypted_block[0] & 0xFF00FFFF) == 0x30008179) || ((decrypted_block[0] & 0xFF00FFFF) == 0x3000817a) || ((decrypted_block[0] & 0x0000FFFF) == 0x00008279 && (decrypted_block[1] & 0x000000FF) == 0x00000030) || ((decrypted_block[0] & 0x0000FFFF) == 0x0000827a && (decrypted_block[1] & 0x000000FF) == 0x00000030)) diff --git a/OpenCL/m33200-pure.cl b/OpenCL/m32200-pure.cl similarity index 99% rename from OpenCL/m33200-pure.cl rename to OpenCL/m32200-pure.cl index 26f9840c8..9a9d999ae 100755 --- a/OpenCL/m33200-pure.cl +++ b/OpenCL/m32200-pure.cl @@ -116,7 +116,7 @@ DECLSPEC void hmac_sha1_run_V (PRIVATE_AS u32x *w0, PRIVATE_AS u32x *w1, PRIVATE sha1_transform_vector (w0, w1, w2, w3, digest); } -KERNEL_FQ void m33200_init (KERN_ATTR_TMPS_ESALT (krb5asrep_18_tmp_t, krb5asrep_18_t)) +KERNEL_FQ void m32200_init (KERN_ATTR_TMPS_ESALT (krb5asrep_18_tmp_t, krb5asrep_18_t)) { /** * base @@ -194,7 +194,7 @@ KERNEL_FQ void m33200_init (KERN_ATTR_TMPS_ESALT (krb5asrep_18_tmp_t, krb5asrep_ } } -KERNEL_FQ void m33200_loop (KERN_ATTR_TMPS_ESALT (krb5asrep_18_tmp_t, krb5asrep_18_t)) +KERNEL_FQ void m32200_loop (KERN_ATTR_TMPS_ESALT (krb5asrep_18_tmp_t, krb5asrep_18_t)) { /** * base @@ -282,7 +282,7 @@ KERNEL_FQ void m33200_loop (KERN_ATTR_TMPS_ESALT (krb5asrep_18_tmp_t, krb5asrep_ } } -KERNEL_FQ void m33200_comp (KERN_ATTR_TMPS_ESALT (krb5asrep_18_tmp_t, krb5asrep_18_t)) +KERNEL_FQ void m32200_comp (KERN_ATTR_TMPS_ESALT (krb5asrep_18_tmp_t, krb5asrep_18_t)) { /** * base @@ -511,7 +511,7 @@ KERNEL_FQ void m33200_comp (KERN_ATTR_TMPS_ESALT (krb5asrep_18_tmp_t, krb5asrep_ For AS-REP EncASRepPart: The first byte is 0x79 (01 1 11001, where 01 = "class=APPLICATION", 1 = "form=constructed", 11001 is application type 25) - + According to RFC4120 Section 5.4.2: "Some implementations unconditionally send an encrypted EncTGSRepPart (application tag number 26) in this field regardless of whether the reply is a AS-REP or a TGS-REP. In the interest of compatibility, implementors MAY relax the check on the tag number of the decrypted ENC-PART" @@ -586,7 +586,7 @@ KERNEL_FQ void m33200_comp (KERN_ATTR_TMPS_ESALT (krb5asrep_18_tmp_t, krb5asrep_ if (((decrypted_block[0] & 0x00ff80ff) == 0x00300079) || ((decrypted_block[0] & 0x00ff80ff) == 0x0030007a) || - ((decrypted_block[0] & 0xFF00FFFF) == 0x30008179) || + ((decrypted_block[0] & 0xFF00FFFF) == 0x30008179) || ((decrypted_block[0] & 0xFF00FFFF) == 0x3000817a) || ((decrypted_block[0] & 0x0000FFFF) == 0x00008279 && (decrypted_block[1] & 0x000000FF) == 0x00000030) || ((decrypted_block[0] & 0x0000FFFF) == 0x0000827a && (decrypted_block[1] & 0x000000FF) == 0x00000030)) @@ -809,7 +809,7 @@ KERNEL_FQ void m33200_comp (KERN_ATTR_TMPS_ESALT (krb5asrep_18_tmp_t, krb5asrep_ block[11] = esalt_bufs[DIGESTS_OFFSET_HOST].edata2[block_position + 11]; aes256_decrypt_cbc (aes_cts_decrypt_ks, block, decrypted_block, aes_iv, s_td0, s_td1, s_td2, s_td3, s_td4); - + w0[0] = hc_swap32_S (decrypted_block[0]); w0[1] = hc_swap32_S (decrypted_block[1]); w0[2] = hc_swap32_S (decrypted_block[2]); diff --git a/docs/changes.txt b/docs/changes.txt index 9dbe1a5f1..8bd9bf062 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -20,6 +20,8 @@ - Added hash-mode: GPG (AES-128/AES-256 (SHA-1($pass))) - Added hash-mode: GPG (AES-128/AES-256 (SHA-256($pass))) - Added hash-mode: GPG (AES-128/AES-256 (SHA-512($pass))) +- Added hash-mode: Kerberos 5, etype 17, AS-REP +- Added hash-mode: Kerberos 5, etype 18, AS-REP - Added hash-mode: MetaMask Mobile Wallet - Added hash-mode: MetaMask Wallet (short hash, plaintext check) - Added hash-mode: SecureCRT MasterPassphrase v2 diff --git a/docs/readme.txt b/docs/readme.txt index 7f2db3af1..1c2132b6f 100644 --- a/docs/readme.txt +++ b/docs/readme.txt @@ -193,9 +193,11 @@ NVIDIA GPUs require "NVIDIA Driver" (440.64 or later) and "CUDA Toolkit" (9.0 or - Kerberos 5, etype 17, TGS-REP - Kerberos 5, etype 17, Pre-Auth - Kerberos 5, etype 17, DB +- Kerberos 5, etype 17, AS-REP - Kerberos 5, etype 18, TGS-REP - Kerberos 5, etype 18, Pre-Auth - Kerberos 5, etype 18, DB +- Kerberos 5, etype 18, AS-REP - Kerberos 5, etype 23, AS-REQ Pre-Auth - Kerberos 5, etype 23, TGS-REP - Kerberos 5, etype 23, AS-REP diff --git a/src/modules/module_33100.c b/src/modules/module_32100.c similarity index 99% rename from src/modules/module_33100.c rename to src/modules/module_32100.c index e34a1a677..1b4488097 100755 --- a/src/modules/module_33100.c +++ b/src/modules/module_32100.c @@ -18,7 +18,7 @@ static const u32 DGST_POS3 = 3; static const u32 DGST_SIZE = DGST_SIZE_4_4; static const u32 HASH_CATEGORY = HASH_CATEGORY_NETWORK_PROTOCOL; static const char *HASH_NAME = "Kerberos 5, etype 17, AS-REP"; -static const u64 KERN_TYPE = 33100; +static const u64 KERN_TYPE = 32100; static const u32 OPTI_TYPE = OPTI_TYPE_ZERO_BYTE | OPTI_TYPE_NOT_ITERATED | OPTI_TYPE_SLOW_HASH_SIMD_LOOP; diff --git a/src/modules/module_33200.c b/src/modules/module_32200.c similarity index 99% rename from src/modules/module_33200.c rename to src/modules/module_32200.c index 508565136..b081c7833 100755 --- a/src/modules/module_33200.c +++ b/src/modules/module_32200.c @@ -18,7 +18,7 @@ static const u32 DGST_POS3 = 3; static const u32 DGST_SIZE = DGST_SIZE_4_4; static const u32 HASH_CATEGORY = HASH_CATEGORY_NETWORK_PROTOCOL; static const char *HASH_NAME = "Kerberos 5, etype 18, AS-REP"; -static const u64 KERN_TYPE = 33200; +static const u64 KERN_TYPE = 32200; static const u32 OPTI_TYPE = OPTI_TYPE_ZERO_BYTE | OPTI_TYPE_NOT_ITERATED | OPTI_TYPE_SLOW_HASH_SIMD_LOOP; diff --git a/tools/test_modules/m33100.pm b/tools/test_modules/m32100.pm similarity index 100% rename from tools/test_modules/m33100.pm rename to tools/test_modules/m32100.pm diff --git a/tools/test_modules/m33200.pm b/tools/test_modules/m32200.pm similarity index 100% rename from tools/test_modules/m33200.pm rename to tools/test_modules/m32200.pm