1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-12-26 08:28:20 +00:00
Commit Graph

1932 Commits

Author SHA1 Message Date
jsteube
beb6ee2061 Add OPTI_TYPE_OPTIMIZED_KERNEL
Rename unconverted fast hash kernels to optimized kernels
Finalize some converted fast hashes to default kernels
2017-07-18 14:45:15 +02:00
jsteube
fbea72ebd6 Renamed default kernels to optimized kernels
Renamed pure kernels to default kernels
Replaced long option --length-limit-disable with --optimized-kernel-enable
Replaced short option -L with -O
Set --optimized-kernel-enable to unset by default
2017-07-18 13:23:42 +02:00
jsteube
f87ac21065 Some small corrections on salt length for MD5-ASA 2017-07-17 20:25:08 +02:00
jsteube
945cf9be2f md5($salt.$pass.$salt) 2017-07-17 17:24:32 +02:00
jsteube
9d92100a57 Move no-rules check to interface.c so that interface.c is the only source where pw_min and pw_max are set 2017-07-17 15:27:03 +02:00
jsteube
79bb69bcd4 Assign more official pw_min and pw_max values to related modes 2017-07-17 15:00:28 +02:00
jsteube
14fb0d5a17 Assign more official pw_min and pw_max values to related modes 2017-07-17 14:46:26 +02:00
jsteube
7e95700cd4 Assign more official pw_min and pw_max values to related modes 2017-07-17 14:33:51 +02:00
jsteube
2047625899 Update pw_min, pw_max, salt_min and salt_max switch cases to current development status 2017-07-17 13:48:33 +02:00
jsteube
1cd0212f73 Fix Cisco-PIX and Cisco-ASA pw_max as they limit themself to 16 2017-07-17 08:50:09 +02:00
jsteube
67de882790 Allow weak-hash-check support in -L mode 2017-07-16 16:13:45 +02:00
jsteube
0e7bb074e6 Allow some oversized salt-length with dedicated kernels 2017-07-15 18:05:25 +02:00
jsteube
967d7b9323 Rename SALT_TYPE_INTERN to SALT_TYPE_GENERIC 2017-07-14 14:57:31 +02:00
jsteube
8e3153549f Fix invalid use of SALT_MAX_OLD 2017-07-14 14:41:23 +02:00
Jens Steube
4833d6c4d7 Fix Makefile and test.sh script 2017-07-14 14:18:59 +02:00
jsteube
c4098e2230 Fix invalid use of a non-vector function from within a vector function 2017-07-14 14:16:48 +02:00
jsteube
f70da8a04c Increase salt length for salt of generic hash types
Remove --hex-salt support for non-generic hash types
2017-07-13 11:03:57 +02:00
jsteube
54b7505473 Add host modifications for -a 0 in combination with -L and modify an example kernel 2017-07-12 13:00:04 +02:00
Jens Steube
04bb6a46ef There's a problem with Intels OpenCL runtime. The JiT hangs while trying to compile, for example mode 1700 in -L mode.
Disabling the OpenCL optimization using -cl-opt-disable helped.
While doing so, it turned out that there's many algorithms that _benefit_ from disabling the compiler optimizations.
Other are not.
Full list: https://docs.google.com/spreadsheets/d/1w0wZtHsP8ql4JLDRnm3zqi8JyMSBk9zzpXXjQz84Fwc/edit?usp=sharing
2017-07-11 17:15:16 +02:00
jsteube
2c79d26778 Add -m 10700 pure kernel for -L support 2017-07-11 10:43:18 +02:00
jsteube
8a6e3a5275 Add support in HMAC for passwords larger than block size of the underlaying hash 2017-07-10 11:15:15 +02:00
jsteube
f619811b70 Remove PBKDF2-HMAC-MD5 includes password length limit 2017-07-09 23:53:53 +02:00
jsteube
97020f6521 Vectorized Ethereum Wallet + SCRYPT and added support for long passwords 2017-07-09 23:32:44 +02:00
jsteube
a91d048c04 Vectorized Ethereum Wallet, PBKDF2-HMAC-SHA256 and added support for long passwords 2017-07-09 23:10:28 +02:00
jsteube
25fba33901 Vectorized DPAPI masterkey file v1 and v2 and added support for long passwords 2017-07-09 23:05:14 +02:00
Jens Steube
ec7b416baf Merge pull request #1291 from ZerBea/master
removed message-pair-check - no longer needed
2017-07-09 20:02:09 +02:00
jsteube
32329cf3f4 Vectorized Juniper/NetBSD sha1crypt and added support for long passwords 2017-07-09 20:01:45 +02:00
ZerBea
a6a732704f removed message-pair-check - no longer needed 2017-07-09 19:54:08 +02:00
jsteube
de9d026bb0 Vectorized iTunes backup < 10.0 and added support for long passwords 2017-07-09 19:37:36 +02:00
jsteube
8f73d356f2 Vectorized LUKS and added support for long passwords 2017-07-09 19:24:34 +02:00
jsteube
1049fa386a Add OPTI_TYPE_SLOW_HASH_SIMD_LOOP in interface.c where it was missing 2017-07-09 18:01:55 +02:00
jsteube
709cfa2e91 Added long passwords support for KeePass 1 (AES/Twofish) and KeePass 2 (AES) 2017-07-09 15:12:11 +02:00
jsteube
837b5a31d1 Added long passwords support for AxCrypt 2017-07-09 00:13:00 +02:00
jsteube
fc32b24236 Vectorized RAR5 and added support for long passwords 2017-07-08 23:55:56 +02:00
jsteube
933fa47d21 Vectorized Android FDE (Samsung DEK) and added support for long passwords 2017-07-08 21:56:36 +02:00
jsteube
edf904f309 Vectorized MS-AzureSync PBKDF2-HMAC-SHA256 and added support for long passwords 2017-07-08 21:39:15 +02:00
jsteube
af46a1560b Vectorized Blockchain, My Wallet and added support for long passwords 2017-07-07 23:32:41 +02:00
jsteube
a1321d2d64 Added long passwords support for BSDi Crypt, Extended DES 2017-07-07 22:16:42 +02:00
jsteube
02ce227ff1 Vectorized Oracle T: Type (Oracle 12+) and added support for long passwords 2017-07-07 22:09:51 +02:00
jsteube
6e57aa1c0f Vectorized eCryptfs and added support for long passwords 2017-07-07 21:46:41 +02:00
jsteube
eda88e6c84 Vectorized PBKDF2-HMAC-MD5 and added support for long passwords 2017-07-07 16:58:28 +02:00
jsteube
d3e6ae42f0 Added long passwords support for 7-Zip 2017-07-07 16:48:18 +02:00
jsteube
27a57383f0 Vectorized Password Safe v3 and added support for long passwords 2017-07-07 16:02:49 +02:00
jsteube
5de48182b4 Fixed max password length limit in mode 10500 2017-07-07 12:33:06 +02:00
jsteube
bedc481390 Added long passwords support for SAP CODVN H (PWDSALTEDHASH) iSSHA-1 2017-07-07 12:14:06 +02:00
jsteube
8916de538a Vectorized MS Office 2013 and added support for long passwords 2017-07-07 10:38:05 +02:00
jsteube
51470b2b04 Vectorized MS Office 2010 and added support for long passwords 2017-07-07 10:03:59 +02:00
jsteube
99f58f90a4 Fix some compiler warning on unused variables 2017-07-07 00:30:42 +02:00
jsteube
94b565262a Merge branch 'master' of https://github.com/hashcat/hashcat 2017-07-07 00:29:11 +02:00
jsteube
61f39b37d2 Vectorized MS Office 2007 and added support for long passwords 2017-07-07 00:29:05 +02:00
jsteube
8fe0a36b30 OpenCL Runtime: Updated AMD ROCm driver version check, warn if version < 1.1 2017-07-06 21:54:28 +02:00
jsteube
a1e3b20902 Add ROCm to the list of supported AMD platforms 2017-07-06 19:11:56 +02:00
jsteube
17b003b355 Vectorized Lotus Notes/Domino 8 and added support for long passwords 2017-07-06 14:57:28 +02:00
jsteube
cbd37ab587 Update some more modes to already converted modes with long password support 2017-07-06 14:39:05 +02:00
jsteube
df3890b49d Added long passwords support for SCRYPT 2017-07-06 14:27:36 +02:00
jsteube
ccd85f345d Vectorized 1Password, cloudkeychain and added support for long passwords 2017-07-06 14:11:33 +02:00
jsteube
6cbd2acd24 Added long passwords support for Drupal7 2017-07-06 11:02:43 +02:00
jsteube
8abd7ae9d1 Fix some old GCC compiler warnings 2017-07-06 10:35:25 +02:00
jsteube
819b53eb1d Added long passwords support for sha256crypt $, SHA256 (Unix) 2017-07-05 13:43:14 +02:00
jsteube
7fec4f27d8 Vectorized OSX v10.8+ (PBKDF2-SHA512) and added support for long passwords 2017-07-05 13:01:55 +02:00
jsteube
195e3c744c Vectorized TrueCrypt PBKDF2-HMAC-Whirlpool and added support for long passwords 2017-07-05 10:08:47 +02:00
jsteube
f2067d6962 Vectorized TrueCrypt PBKDF2-HMAC-RipeMD160 and added support for long passwords 2017-07-04 18:51:02 +02:00
jsteube
55874ec853 Vectorized VeraCrypt PBKDF2-HMAC-SHA256 and added support for long passwords 2017-07-04 15:40:34 +02:00
jsteube
907b065e00 Vectorized TrueCrypt PBKDF2-HMAC-SHA512 and added support for long passwords 2017-07-04 12:19:40 +02:00
jsteube
5eb76ccdde Vectorized Password Safe v3 and added support for long passwords 2017-07-04 11:22:48 +02:00
jsteube
fc100a852b Added hash-mode 2501 = WPA/WPA2 PMK
Fixes https://github.com/hashcat/hashcat/issues/1287
Limited hash-mode 2500 to max length 63
Fixes https://github.com/hashcat/hashcat/issues/1286
2017-07-03 16:11:57 +02:00
jsteube
1dfdefae69 Vectorized LastPass + LastPass sniffed kernel and added support for long passwords 2017-07-03 13:14:55 +02:00
jsteube
c3f0bb77dd Vectorized AIX {ssha1} kernel and added support for long passwords 2017-07-03 13:06:59 +02:00
jsteube
2e78cf1d58 Vectorized 1Password, agilekeychain kernel and added support for long passwords 2017-07-03 13:00:42 +02:00
jsteube
a8a1fe1b4f Vectorized AIX {ssha512} kernel and added support for long passwords 2017-07-03 12:44:03 +02:00
jsteube
113b8f672f Comment some pw_min and pw_max ranges for better overview 2017-07-03 12:14:15 +02:00
jsteube
bb1341015f Vectorized AIX {ssha256} kernel and added support for long passwords 2017-07-03 12:08:45 +02:00
jsteube
ccc9e46508 Vectorized Android FDE <= 4.3 kernel and added support for passwords up to length 256 2017-07-03 11:29:32 +02:00
jsteube
b149b87014 Update converted modules in interface.c 2017-07-01 14:50:39 +02:00
jsteube
52c1e15f3f Move kernel-code for -L to standalone files with -pure suffix 2017-07-01 13:02:07 +02:00
jsteube
194af74e91 Add support for maximum bcrypt password length 2017-07-01 11:04:59 +02:00
jsteube
c3f374c733 Fix some maximum password length handling with --length-limit-disable feature 2017-06-30 17:28:19 +02:00
jsteube
f97c0d38d7 Allow using -L with -a 7 (other modes need no modification) for fast hashes 2017-06-30 16:51:57 +02:00
jsteube
f7a8e7c54b Multiple changes:
* Added more preparations to support to crack passwords and salts up to length 256
* Added option --length-limit-disable to disable optimization based on password- and salt-length
* Added option --self-test-disable to disable self-test functionality on startup
2017-06-29 12:19:05 +02:00
jsteube
6fb79b726c Respect the use of OPTI_TYPE_PRECOMPUTE_MERKLE in interface.c parser 2017-06-28 13:46:03 +02:00
jsteube
c918173fcf Get rid of comb_t which can be safely replace with pw_t now 2017-06-25 00:56:25 +02:00
jsteube
297a64de8b Fix fread() on windows when loading the LZMA hcstat 2017-06-24 11:00:43 +02:00
jsteube
83d5302256 Fix install makefile target for use with hashcat.hcstat2 2017-06-24 10:50:39 +02:00
jsteube
7ca8ca241b Use hc_lzma2_decompress() instead of Lzma2Decode() directly 2017-06-23 14:50:44 +02:00
jsteube
a993395f28 Add code to read LZMA compressed hashcat.hcstat2 2017-06-23 14:43:43 +02:00
jsteube
c59432a760 Add hcstat2 support to enable masks of length up to 256, also adds a filetype header 2017-06-23 12:13:51 +02:00
jsteube
71d4926afa Converted -m 400 to password length 256 support
Something weird happend here, read on!

I've expected some performance drop because this algorithm is using the password data itself inside the iteration loop.
That is different to PBKDF2, which I've converted in mode 2100 before and which did not show any performance as expected.

So after I've finished converting this kernel and testing everything works using the unit test, I did some benchmarks to see how much the
performance drop is.

On my 750ti, the speed dropped (minimal) from 981kH/s -> 948kH/s, that's mostly because of the SIMD support i had to drop.
If I'd turn off the SIMD support in the original, the drop would be even less, that us 967kH/s -> 948kH/s which is a bit of a more reasable
comparison in case we just want to rate the drop that is actually caused by the code change itself.

The drop was acceptable for me, so I've decided to check on my GTX1080.Now the weird thing: The performance increased from 6619kH/s to
7134kH/s!!

When I gave it a second thought, it turned out that:

1. The GTX1080 is a scalar GPU so it wont suffer from the drop of the SIMD code as the 750ti did
2. There's a change in how the global data (password) is read into the registers, it reads only that amount of data it actually needs by using
the pw_len information
3. I've added a barrier for CLK_GLOBAL_MEM_FENCE as it turned out to increase the performance in the 750ti

Note that this kernel is now branched into password length < 40 and larger.

There's a large drop on performance where SIMD is really important, for example CPU.

We could workaround this issue by sticking to SIMD inside the length < 40 branch, but I don't know yet how this can be done efficiently.
2017-06-22 13:49:15 +02:00
Jens Steube
8d93b160c4 Combinator mode for slow hashes wasn't set since self-test functionality was added 2017-06-22 10:49:57 +02:00
jsteube
83455817a7 Working example of password up to length 256 for mode 2100 2017-06-20 17:30:07 +02:00
jsteube
ad242c2f12 Working example of generic salt up to length 256 for mode 2100 2017-06-20 17:17:13 +02:00
jsteube
4174f06008 PoC using a length-independant MD4 hash processing in -m 2100 2017-06-18 23:31:40 +02:00
jsteube
a673aee037 Very hot commit, continue reading here:
This is a test commit using buffers large enough to handle both passwords and salts up to length 256.
It requires changes to the kernel code, which is not included in here.
It also requires some of the host code to be modified. Before we're going to modify kernel code to support the larger lengths I want to be
sure of:
1. Host code modification is ok (no overflows or underflows)
2. Passwords and Salts are printed correctly to status, outfile, show, left, etc.
3. Performance does not change (or only very minimal)
This is not a patch that supports actual cracking both passwords and salts up to length 256, but it can not fail anyway.
If if it does, there's no reason to continue to add support for both passwords and salts up to length 256.
2017-06-17 17:57:30 +02:00
jsteube
7905d79a28 Limit -m 2100 password length to 27 because if utf16 2017-06-16 23:17:56 +02:00
jsteube
c9caca2b0c Increase max password length for DCC2 to 32 2017-06-16 19:28:55 +02:00
jsteube
2c95be5c87 Do not modify a specific thread count if a kernel forces it to run on a specific thread count 2017-06-16 14:02:15 +02:00
Jens Steube
1ef4abae70 Set self-test kernel-thread always to 1 except it's a bitsliced algorithm in BF, this helps algorithms that set a fixed thread count on kernel function declaration 2017-06-16 13:28:56 +02:00
jsteube
d7e66996c9 Add support for self-test modes that use a binary hashfile (wpa, tc, vc, etc) 2017-06-14 14:05:50 +02:00
jsteube
94a35ae50a Add support for hooks in selftest function 2017-06-14 12:07:33 +02:00
Jens Steube
08fc0ec1fb Added self-test funcionality for OpenCL kernels on startup
Fixed a parser error for mode -m 9820 = MS Office <= 2003 $3, SHA1 + RC4, collider #2
2017-06-13 19:07:08 +02:00
jsteube
9a8f4036ec Set github master back into development mode 2017-06-10 13:02:20 +02:00