1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-12-24 23:48:39 +00:00
Commit Graph

1759 Commits

Author SHA1 Message Date
Sein Coray
17083b8f56
applied requested final changes 2019-03-18 17:47:35 +01:00
jsteube
e0f875463f Fix HAS_VBFE use on AMDGPU driver 2019-03-18 12:48:59 +01:00
jsteube
5ef67a8ab7 Apply previous blowfish optimization for -m 3200 also on -m 9000 and -m 18600 2019-03-18 12:42:47 +01:00
Sein Coray
1143cef606
Merge branch 'master' into master 2019-03-18 09:48:09 +01:00
Sein Coray
7321b03102
Updated mode 19500 based on comments 2019-03-18 09:45:04 +01:00
jsteube
5ecbcde945 Cracking bcrypt: Use a feedback from the OpenCL runtime to dynamically find out optimal thread count 2019-03-17 14:17:35 +01:00
jsteube
9a70655f34 No more need for rcon[] in AES 2019-03-16 21:15:05 +01:00
jsteube
7cb510f1ce More manually unrolled cipher code 2019-03-16 21:11:02 +01:00
jsteube
a063e9ef62 Remove automatic unrolling on some ciphers and replace with manually unrolled code 2019-03-16 19:00:36 +01:00
jsteube
70d1343d57 Fix variables s_Ch and s_Cl in whirlpool hashes in non REAL_SHM mode 2019-03-16 16:51:54 +01:00
jsteube
970e5f3518 Fix -m 6100 in optimized mode for use with REAL_SHM 2019-03-15 23:27:44 +01:00
jsteube
218322f630 Support for inline VeraCrypt PIM Brute-Force 2019-03-15 21:48:49 +01:00
Fist0urs
afb010870a Add hash modes 19600 (krb5tgs enctype 17) and 19700 (krb5tgs enctype 18) 2019-03-13 17:20:04 +01:00
jsteube
26d7602bbd No longer need reqd_work_group_size() in OpenCL kernels since modules taken care of this using threads_min and threads_max 2019-03-10 12:13:14 +01:00
jsteube
85452e12be Fix inc_cipher_des.cl for vector use 2019-03-10 11:07:52 +01:00
jsteube
84d6b8ecc1 Add function prototypes in OpenCL kernels to make some compilers happy 2019-03-09 09:05:44 +01:00
jsteube
ce32d57f9b Make use of inc_cipher_des.cl in -m 3100 2019-03-09 08:43:07 +01:00
jsteube
27610008cb Testwise disable aligned constants 2019-03-09 08:11:29 +01:00
jsteube
aeb570ca8b Add inc_cipher_des.cl and make use of SHM_TYPE 2019-03-09 08:07:50 +01:00
jsteube
8c47a947a1 Fix some includes in -m 14600 2019-03-08 15:39:32 +01:00
Jens Steube
bc8ffadccc Remove more occurances of netntlm_t in Whirlpool kernel 2019-03-08 15:26:50 +01:00
Jens Steube
07b8cafcad Fix datatypes in -m 14600 2019-03-08 13:53:34 +01:00
Jens Steube
d64529ed47 Fix kernel header in -m 14900 2019-03-08 13:41:20 +01:00
Jens Steube
fda04609cd Fix datatypes in -m 14600 2019-03-08 13:37:13 +01:00
Jens Steube
898000b7aa Fix datatypes in -m 12400 2019-03-08 13:17:07 +01:00
Jens Steube
09b8bfc3a5 Fix datatypes in -m 10700 2019-03-08 13:13:01 +01:00
Jens Steube
7932d8c91f Fix datatypes in -m 64xx and -m 137xx 2019-03-08 13:10:58 +01:00
Jens Steube
34850df1c0 Fix datatypes in -m 2501 and -m 16801 2019-03-08 13:05:23 +01:00
Jens Steube
74abff44d9 Move remaining module specific typedefs and structures from inc_types.cl to kernels 2019-03-08 12:50:31 +01:00
Jens Steube
30681e5151 Move remaining module specific typedefs and structures from inc_types.cl to kernels 2019-03-08 11:14:33 +01:00
Jens Steube
4bce25dd9d Move remaining module specific typedefs and structures from inc_types.cl to kernels 2019-03-08 10:18:20 +01:00
Jens Steube
cace799187 Move more no unrolling exceptions from inc_vendor.cl to specific modules 2019-03-07 18:57:04 +00:00
Sein Coray
ee97d18af9
Added hash mode 19500 2019-03-06 21:15:09 +01:00
Sein Coray
deacf3a2b9
fix constant name for sha224 2019-03-06 00:13:10 +01:00
jsteube
eb07d2108c Fixed cracking of NetNTLMv1 passwords in mask-attack mode if mask > length 16 (optimized kernels only) 2019-03-05 05:14:34 +01:00
jsteube
8d6a69b2a9 Fix salt array for -m 19300 in -a 3 mode if SIMD is used 2019-03-04 13:31:49 +01:00
jsteube
a9bafb7edb Add more valid plaintext pattern for -m 12700/15200 2019-03-04 09:28:57 +01:00
jsteube
dc9279c95c New Strategy: Instead of using volatile, mark the mode as unstable. Remove all volatiles 2019-03-03 19:18:56 +01:00
jsteube
7c1120b784 Migrate unroll handling for -m 15900 from OpenCL/inc_vendor.cl to module_jit_build_options() 2019-03-03 13:44:25 +01:00
jsteube
ed7765d8fd Manually unroll aes128_InvertKey and aes256_InvertKey to workaround some JiT compiler errors 2019-03-03 13:39:52 +01:00
jsteube
0fce6b663b Testwise remove all hardcoded volatiles from cipher includes 2019-03-03 12:12:01 +01:00
jsteube
1714382daa Migrate unroll handling for -m 14100 from OpenCL/inc_vendor.cl to module_jit_build_options() 2019-03-03 11:55:42 +01:00
jsteube
b0a83b28d1 Migrate unroll handling for -m 12300 from OpenCL/inc_vendor.cl to module_jit_build_options() 2019-03-03 11:47:33 +01:00
jsteube
1937b67595 Migrate unroll handling for -m 8200 from OpenCL/inc_vendor.cl to module_jit_build_options() 2019-03-03 11:43:47 +01:00
jsteube
fee37ac4c3 Migrate unroll handling for -m 8000 from OpenCL/inc_vendor.cl to module_jit_build_options() 2019-03-03 11:39:18 +01:00
jsteube
f92ebc6586 Fix -m 15200 and -m 12700 search string in kernel 2019-03-03 08:47:58 +01:00
jsteube
0b1169e523 My Wallet: Added additional plaintext pattern used in newer versions 2019-03-02 21:58:50 +01:00
jsteube
93760dab34 Fix -m 8100 in pure kernel mode for password length 256 2019-03-02 17:33:22 +01:00
jsteube
88a051629c Support module specific JiT compiler build options 2019-03-02 11:12:13 +01:00
jsteube
a5743c5572 Fix invalid kernel declaration in optimized Whirlpool kernel 2019-03-01 21:45:25 +01:00
jsteube
4359418918 OpenCL Runtime: Not using amd_bytealign (amd_bitalign is fine) on AMDGPU driver drastically reduces JiT segfaults 2019-03-01 15:34:49 +01:00
jsteube
e1fe3e755b Optimize some switch_buffer_* functions for generic OpenCL devices (CPU, various OSX, ...) 2019-03-01 14:49:00 +01:00
jsteube
23917455ef Added hash-mode 19300 sha1(..) 2019-02-28 20:00:52 +01:00
jsteube
87c24200da Added QNX /etc/shadow hash cracking support
- Added hash-mode 19000 QNX /etc/shadow (MD5)
- Added hash-mode 19100 QNX /etc/shadow (SHA256)
- Added hash-mode 19200 QNX /etc/shadow (SHA512)
Implements #35
2019-02-27 17:53:00 +01:00
jsteube
5da1e4b872 Fixed maximum password length limit which was announced as 256 but actually was 255 2019-02-26 21:20:07 +01:00
jsteube
b1a056f1b0 Add hc_lop_0x96 as template for eventual later use 2019-02-24 17:20:09 +01:00
jsteube
540b405e3a Replace IS_ROCM with HAS_VPERM and HAS_VADD3 2019-02-24 10:12:48 +01:00
jsteube
2c0c82c8af OpenCL Runtime: Workaround JiT compiler error on AMDGPU driver compiling WPA-EAPOL-PBKDF2 OpenCL kernel 2019-02-24 09:10:37 +01:00
jsteube
69c3ea2d27 Fixed invalid transfer from __constant to __local memory in -m 9100 2019-02-24 08:26:10 +01:00
jsteube
be365acef8 Remove some optimization in -m 18700 which ROCM doesn't like 2019-02-24 08:02:13 +01:00
jsteube
d0d4ce9f8c Added hash-mode 18800 Blockchain, My Wallet, Second Password (SHA256) 2019-02-23 17:45:02 +01:00
jsteube
684256022e Small fix for -m 18900 2019-02-22 16:00:08 +01:00
jsteube
29fedf2c41 Added hash-mode 18900 Android Backup 2019-02-22 15:49:47 +01:00
jsteube
3dd0a7140d Respect combs_mode in -a 1/6/7 attack in -m 18700 2019-02-22 12:43:22 +01:00
jsteube
a0fba5fb11 Improve -m 18700 cracking speed 2019-02-22 12:33:16 +01:00
jsteube
b4d52e412b Rename -m 18700 to Java Object hashCode() 2019-02-22 09:30:56 +01:00
jsteube
51eb9ebff7 Added hash-mode 18700 DJB 32 2019-02-21 13:52:01 +01:00
jsteube
9fc193ce47 Bitcoin Wallet: Be more user friendly by allowing a larger data range for ckey and public_key 2019-02-20 16:20:28 +01:00
jsteube
63fac132e3 Fix cracking streebog 256/512 hmac cracking with password length > 64 2019-02-19 17:17:01 +01:00
jsteube
f4e43da456 Fix whirlpool final() handling 2019-02-17 08:57:51 +01:00
jsteube
158b93832c Fixed cracking of Cisco-PIX and Cisco-ASA MD5 passwords in mask-attack mode if mask > length 16 2019-02-15 15:50:58 +01:00
jsteube
dd293f7a93 Fixed -m 600 in -a 3 mode for passwords > 16 2019-02-13 13:48:31 +01:00
jsteube
e571b890e9 Fixed length check for raw PBKDF2 modules 2019-02-13 10:03:07 +01:00
jsteube
c16a3feabc Add -m 16500 module 2019-02-11 13:11:51 +01:00
jsteube
57da64533c Add missing kernel in -m 1100 -a 3 -O mode 2019-02-10 10:26:35 +01:00
jsteube
3d203af066 Add module for -m 5700 and -m 5800 2019-02-09 10:03:58 +01:00
jsteube
0bd244c051 Undef some macros to avoid collisions 2019-02-07 16:59:10 +01:00
jsteube
c88a837196 Rename d_scryptVX_buf to d_extraX_buf 2019-01-04 11:21:42 +01:00
R. Yushaev
393916c0bf Allow cracking non-unique salts for Office 2013
With hash-mode 9600 (MS Office 2013) there can be multiple hashes with
the same salt but with different encryption verifiers in esalt_bufs.
This commit adds the functionality to execute _comp kernels for
different hashes after deriving their common key once.

Fixes #1826
2018-12-18 14:32:56 +01:00
R. Yushaev
b5a7e967c1 Add support for Open Document Format 1.1
Contains a kernel for the ODF 1.1 encryption implemented in OpenOffice.
The algorithm uses a SHA-1 checksum, a PBKDF2-HMAC-SHA1 key derivation
with 1024 iterations and Blowfish-CFB encryption.

Valid hashes can be extracted with the libreoffice2john.py script,
available from the John the Ripper Jumbo repository at
https://github.com/magnumripper/JohnTheRipper/blob/bleeding-jumbo/run/libreoffice2john.py

You have to remove the filename suffix at the end of the hash before
passing it to hashcat. Also see 'hashcat -m18600 --example-hashes'.

You can leave the filename prefix if you use the --username option to
process those hashes.

 - Add hash-mode 18600 (Open Document Format (ODF) 1.1 (SHA-1, Blowfish))
 - Tests: add hash-mode 18600 (Open Document Format (ODF) 1.1 (SHA-1, Blowfish))
2018-12-14 13:23:52 +01:00
Sein Coray
a70a0513bf
Added hash mode 18500 sha1(md5(md5($pass)))
closes hashcat/hashcat#1652
2018-12-10 16:11:11 +01:00
Jens Steube
15ece0902f
Merge pull request #1804 from Naufragous/odf-cracking
Add support for Open Document Format 1.2
2018-12-07 09:36:31 +01:00
Jens Steube
9d213147e8
Merge pull request #1805 from mcovalt/electrum_salt_type_2
Electrum Salt-Type 2
2018-12-07 09:33:13 +01:00
R. Yushaev
6a5b0c821e Add support for Open Document Format 1.2
Contains a kernel for the latest ODF 1.2 encryption implemented in
LibreOffice. The algorithm uses a SHA-256 checksum, a PBKDF2-HMAC-SHA1
key derivation with 100000 iterations and key stretching and AES-CBC
encryption.

Valid hashes can be extracted with the libreoffice2john.py script,
available from the John the Ripper Jumbo repository at
https://github.com/magnumripper/JohnTheRipper/blob/bleeding-jumbo/run/libreoffice2john.py

You have to remove the filename suffix at the end of the hash before
passing it to hashcat. Also see 'hashcat -m18400 --example-hashes'.

You can leave the filename prefix if you use the --username option to
process those hashes.

 - Add hash-mode 18400 (Open Document Format (ODF) 1.2 (SHA-256, AES))
 - Tests: add hash-mode 18400 (Open Document Format (ODF) 1.2 (SHA-256, AES))
2018-12-06 18:00:09 +01:00
Matt Covalt
bb9328f48b Add salt type 2 support for optimized functions 2018-12-05 10:42:23 -08:00
Matt Covalt
a913db6390 Add salt type 2 support for pure functions 2018-12-05 10:37:40 -08:00
Matt Covalt
36bdcf844a Add function to check if vector represents a Base58 string 2018-12-05 10:20:41 -08:00
Sein Coray
c941e55a35
Extended IKE PSK md5/sha1 (-m 5300/5400) to print hashes correctly 2018-12-05 12:57:54 +01:00
R. Yushaev
5efebb7b48 Cleanup VeraCrypt related code
Remove unnecessary constant variables by hardcoring values instead of
looking up. Precalculate swaps that are known at compile time. Hardcode
hashes_shown offset as zero for all TC / VC kernels.
2018-11-29 12:49:03 +01:00
R. Yushaev
baf47d409e Add Camellia support for VeraCrypt kernels
Adds suport for the Japanese cipher Camellia with 256-bit keys as used
by VeraCrypt.

 - Add Camellia header decryption checks to all VeraCrypt kernels
 - Add test containers for remaining cipher combinations
2018-11-28 14:21:14 +01:00
Jens Steube
65abccc93e Migrate inc_truecrypt_keyboard.cl into inc_common.cl 2018-11-25 18:34:57 +01:00
Jens Steube
fca4f7e8a6 Prepare to use --keyboard-layout-mapping for algorithms other than TC/VC 2018-11-25 18:21:07 +01:00
Jens Steube
ee2854ec2a Support multi-byte characters for TC/VC keyboard layout mapping tables 2018-11-25 13:31:37 +01:00
R. Yushaev
8b04be0e93 Add Kuznyechik support for VeraCrypt kernels
Adds support for the Russian cipher specified in GOST R 34.12-2015, also
known as Kuznyechik (Grasshopper).

 - Add Kuznyechik header decryption checks to all VeraCrypt kernels
 - Add test containers for available Kuznyechik cipher combinations
2018-11-22 16:07:45 +01:00
Jens Steube
c15f741dca Fixed out-of-boundary read in DPAPI masterkey file v2 OpenCL kernel 2018-11-21 14:55:22 +01:00
Jens Steube
e117e750fc Add restrict keyword to kernel declarations to help the compiler with caching optimizations 2018-11-21 13:00:30 +01:00
Jens Steube
64dfd40113 Give the compiler a hint for automatic optimizations based on password length 2018-11-20 15:44:24 +01:00
Jens Steube
53c8600089 Give the compiler a hint for automatic optimizations based on password length 2018-11-20 15:34:43 +01:00
Jens Steube
0e428b3c40 Give the compiler a hint for automatic optimizations based on password length 2018-11-20 15:32:41 +01:00
Jens Steube
c9da60c73a Fixed thread count maximum for pure kernels in straight attack mode 2018-11-20 15:29:24 +01:00