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

2818 Commits

Author SHA1 Message Date
Jens Steube
42c3ab0485
Merge pull request #1820 from hashcat/master
backports from master
2018-12-13 14:22:28 +01:00
Jens Steube
376baa2b10
Merge pull request #1814 from s3inlc/algorithm/1652
Added hash mode 18500 sha1(md5(md5($pass)))
2018-12-13 14:21:22 +01:00
Sein Coray
af5d512b6f
Added new hash mode 18500 in usage 2018-12-10 17:02:22 +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
philsmd
7646509234
fixed validation of the --brain-client-features value 2018-12-10 13:16:41 +01:00
Jens Steube
c6dcb1b8ae
Merge pull request #1809 from hashcat/master
Backports from master
2018-12-09 20:41:00 +01:00
R. Yushaev
074fad9fef Correct buffer size parameter in snprintf calls
There are approx. 240 snprintf calls that set the target buffer size to
out_len - 1 or similar. This "mind the null character" subtraction is
unnecessary since snprintf already includes the string termination into
the given buffer size.
2018-12-07 10:37:56 +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
e2ac101526 Update interface.c to remove non-existant Salt-Type 3 support. 2018-12-06 08:33:42 -08:00
Jens Steube
55add7c60e The goal of this branch to develop a plugin like interface for hashcat kernels.
The modification of existing core source files to add new hashcat kernels conflicts with the idea of having private hashcat kernel repositories especially when backporting latest hashcat core changes and new features.
The final outcome of this should be a plugin format that does not require modifications on the core soruce files.
Also convert all existing hash-modes to hashcat modules.
We'll start with dynamic loading the modules at runtime rather than linking them at compile time.
This will require some extra code for different OS types but should beneficial on a long term.
This commit add some first ideas of how such modules could look like, however there's no dynamic loading interface yet.
Next steps will be removing all hash-mode depending special code from source files and move them to the modules.
Finally merge with master.
2018-12-06 14:02:10 +01:00
Matt Covalt
71d9369a70 Correct Electrum Wallet Salt-Type support 2018-12-05 10:53:14 -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
philsmd
2ee7306322
Set github master to non-production mode 2018-12-04 11:54:05 +01:00
Jens Steube
72319875d8 Update version to 5.1.0 2018-12-02 11:58:48 +01:00
Jens Steube
0b2ffec379 Fixed selection of OpenCL devices (-d) if there's more than 32 OpenCL devices installed 2018-11-30 22:59:43 +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
b457f402c6 Fix output of mapped password in status screen 2018-11-26 12:39:17 +01:00
Jens Steube
79263c142d Fix parameter name spelling 2018-11-26 09:38:13 +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
ed8384d4bc OpenCL Runtime: Disable auto-vectorization for Intel OpenCL runtime to workaround hanging JiT since version 18.1.0.013 2018-11-21 12:03:47 +01:00
Jens Steube
c9da60c73a Fixed thread count maximum for pure kernels in straight attack mode 2018-11-20 15:29:24 +01:00
Jens Steube
490050ecb3 Update usage.c description for --spin-damp 2018-11-20 14:52:49 +01:00
Jens Steube
e770449702 OpenCL Runtime: Use our own yielding technique for synchronizing rather than vendor specific
Parameter: Rename --nvidia-spin-damp to --spin-damp (now accessible for all devices)
2018-11-20 12:32:24 +01:00
Jens Steube
ae577410d0 OpenCL Device: Do a real query on OpenCL local memory type instead of just assuming it 2018-11-20 10:06:34 +01:00
jsteube
1156cf7207 Fixed invalid hardware monitor detection in benchmark mode
Fixes https://github.com/hashcat/hashcat/issues/1787
2018-11-17 14:40:30 +01:00
Jens Steube
49fc7d45b7 - Keymaps: Added hashcat keyboard mapping us.hckmap (can be used as template)
- Keymaps: Added hashcat keyboard mapping de.hckmap
2018-11-15 22:29:03 +01:00
Jens Steube
400be920ba Add missing non-boot volumes support 2018-11-15 15:05:30 +01:00
Jens Steube
5d5ac1c935 Prepare for on-the-fly keyboard layout substituations required to crack booting TrueCrypt/VeraCrypt volumes 2018-11-15 14:35:51 +01:00
Jens Steube
9afed4b88d Pidfile: Treat a corrupted pidfile like a not existing pidfile 2018-11-14 09:32:06 +01:00
Royce Williams
3bf663bee1 clarify xxHash change; add 'APFS' to Apple File System refs 2018-11-12 11:31:01 -09:00
Jens Steube
06b39dc3d5 Startup: Show OpenCL runtime initialization message (per device) 2018-11-12 20:45:05 +01:00
Jens Steube
a5e8818805 Start client index from 1 instead of 0 2018-11-12 20:19:59 +01:00
Jens Steube
fde9b86962 Fix invalid initialization for client_idx not present in 5.0.0 2018-11-12 17:10:54 +01:00
Jens Steube
566b1c67b5 Small improvement in --speed-only and --progress-only accuracy 2018-11-12 14:59:42 +01:00
Jens Steube
bb758d66e8 Revert "Simplify some code"
This reverts commit 2d15fa07e7.
2018-11-12 14:34:44 +01:00
Jens Steube
2d15fa07e7 Simplify some code 2018-11-12 14:27:30 +01:00
Jens Steube
a402822646 Fixed output of --speed-only and --progress-only in case a fast hash is used in combination with --slow-candidates 2018-11-12 14:20:42 +01:00
Jens Steube
a4200ba167 Added hash-mode 18300 (Apple File System)
Fixes https://github.com/hashcat/hashcat/issues/1686
2018-11-12 11:37:01 +01:00
Jens Steube
2aff01b20e Hardware Monitor: Renamed --gpu-temp-abort to --hwmon-temp-abort
Hardware Monitor: Renamed --gpu-temp-disable to --hwmon-disable
Fixed invalid warnings about throttling in case --hwmon-disable was used
Fixes https://github.com/hashcat/hashcat/issues/1757
2018-11-09 12:48:27 +01:00
Jens Steube
9edc45e5d8 Fix copy/paste error 2018-11-08 13:23:36 +01:00
Jens Steube
6befe6225c
Merge pull request #1771 from Naufragous/veracrypt-streebog
Add VeraCrypt Streebog support
2018-11-08 13:02:06 +01:00
Jens Steube
4177e1ee28 Replace gitmodules with files and add support for system-wide libraries 2018-11-08 12:52:06 +01:00
R. Yushaev
47bd838e25 Add VeraCrypt Streebog support
VeraCrypt added the possibility to use Streebog-512 as hashing algorithm
for the key derivation. This commit adds the necessary VeraCrypt kernels
as well as additional HMAC-Streebog kernels.

 - Add hash-mode 13771: VeraCrypt PBKDF2-HMAC-Streebog-512 + XTS 512 bit
 - Add hash-mode 13772: VeraCrypt PBKDF2-HMAC-Streebog-512 + XTS 1024 bit
 - Add hash-mode 13773: VeraCrypt PBKDF2-HMAC-Streebog-512 + XTS 1536 bit
 - Add hash-mode 11750: HMAC-Streebog-256 (key = $pass), big-endian
 - Add hash-mode 11760: HMAC-Streebog-256 (key = $salt), big-endian
 - Add hash-mode 11860: HMAC-Streebog-512 (key = $salt), big-endian
 - Add test suite for hash-modes 11750, 11760 and 11860
 - Improve pure Streebog kernels
2018-11-08 11:46:31 +01:00
Sein Coray
de5f0ceb5e Fixed separator parsing for additional algorithms 2018-11-08 09:08:36 +01:00
Jens Steube
b1a460ade2 Fixed status output of progress value in case -S and -l used in combination 2018-11-07 14:20:40 +01:00
Royce Williams
2cbe036cda --kernel-threads naming consistency 2018-11-06 06:09:30 -09:00
Jens Steube
2a366741a5 Added new option --kernel-threads to manually override the automatically calculated number of threads 2018-11-06 16:06:06 +01:00
Jens Steube
3eab677bdf Move the system include where it belongs to 2018-11-04 14:26:19 +01:00
Jens Steube
9baf728fe7 Fixed token configuration for:
- descrypt_parse_hash
- keccak_*_parse_hash
- sha256crypt_parse_hash
- drupal7_parse_hash
2018-11-04 12:49:56 +01:00
Jens Steube
82cdd585f0 Fixed token configuration for -m 6700 2018-11-04 10:11:29 +01:00
Jens Steube
344ea5b36d Memory: Reduced default maximum bitmap size from 24 to 18 and give a notice to use --bitmap-max to restore 2018-11-04 10:07:45 +01:00
Jens Steube
399bd2562a Fixed checking the length of the last token in a hash if it was given the attribute TOKEN_ATTR_FIXED_LENGTH
Fixes https://github.com/hashcat/hashcat/issues/1755
2018-11-04 09:41:07 +01:00
Jens Steube
83632a83e4 Memory: Limit maximum host memory to allocate depending on bitness 2018-11-03 18:16:49 +01:00
Jens Steube
b19a03aa84 No need to compute brain_session if --brain-client is not set 2018-11-03 13:15:23 +01:00
Jens Steube
a4a9d29420 Fixed calculation of brain-attack if a given wordlist has the size zero
Fixes https://github.com/hashcat/hashcat/issues/1756
2018-11-03 12:20:55 +01:00
Jens Steube
d4dad3e1e3 Added support to use --stdout in brain-client mode 2018-11-01 12:21:32 +01:00
Jens Steube
ff6e403703 Fixed ignoring --brain-client-features configuration in case brain-server has attack positions informations from a previous run 2018-11-01 12:03:28 +01:00
Jens Steube
175fea4094 Fixed out-of-bounds write in short-term memory of the brain-server 2018-11-01 11:54:40 +01:00
Jens Steube
3b8abb7f0d Fixed missing call to WSACleanup() to cleanly shutdown windows sockets system 2018-11-01 11:09:37 +01:00
R. Yushaev
a8eb611b1c Add HMAC-Streebog-512 (pure kernels)
Implement HMAC based on GOST 34.11-2012 Streebog-512 as well as a test
case for it. Both the PyGOST + hmac python module and the VeraCrypt HMAC
for Streebog-512 were used as references. The kernels expect the digests
to be in big-endian order according to the RFC examples for Streebog.

Fix two bugs from commit 224315dd62.

 - Add hash-mode 11850: HMAC-Streebog-512 (key = $pass), big-endian
 - Add test case for hash-mode 11850
 - Bugfix for a3-pure Streebog kernels (modes 11700 and 11800)
 - Rename a few Streebog constants in interface.h
2018-10-31 14:42:02 +01:00
Jens Steube
3b2c3f419d Merge branch 'master' of https://github.com/hashcat/hashcat 2018-10-31 12:07:04 +01:00
Jens Steube
573454cc5e Remove client_fd initializer 2018-10-31 12:06:56 +01:00
Jens Steube
3faf92a261
Merge pull request #1748 from philsmd/master
fixes #1744: added --stdin-timeout-abort to allow a custom time to wait before abort
2018-10-31 12:05:39 +01:00
philsmd
dbb81fb48e
fixes #1744: added --stdin-timeout-abort to allow a custom time (in seconds) to wait before abort (use 0 to disabled it) 2018-10-31 11:37:06 +01:00
Jens Steube
2fbd711495 Move WSAStartup() call back to user_options 2018-10-31 11:14:21 +01:00
Jens Steube
80737b1f8d Some brain logging fixes 2018-10-31 10:58:52 +01:00
Jens Steube
61ded2bd54 Fixed missing call to WSAStartup() and client indexing in order to start the brain server on windows 2018-10-31 10:50:16 +01:00
Jens Steube
81a4604964 Set github master to non-production mode 2018-10-31 08:56:15 +01:00
Jens Steube
5f53a9ec32 Fix endianness and invalid separator character in outfile format of hash-mode 16801 (WPA-PMKID-PMK) 2018-10-31 08:55:32 +01:00
Arseniy Sharoglazov
ee873da300 Added hash-modes 18200 (Kerberos 5 AS-REP etype 23) 2018-10-30 19:05:44 +03:00
R. Yushaev
9951e9580d Fix duplicate brain status bug 2018-10-29 14:45:35 +01:00
R. Yushaev
224315dd62 Add pure kernels and tests for Streebog hashes
Complete Streebog support with pure kernels that allow for passwords
longer than 64 characters. Provide generic inc_hash_streebog files
for future Streebog-based hash modes (HMAC, PBKDF2, VeraCrypt).

Include streebog support in the test suite. For this, python module
PyGOST is needed. Also add clarification to hash mode description
stating that Streebog hashes are expected in big-endian byte order.
There are several implementations, including PyGOST, which default
to little-endian byte order, while the RFC examples are big-endian.

 - Add pure kernels for hash-mode 11700 (Streebog-256)
 - Add pure kernels for hash-mode 11800 (Streebog-512)
 - Tests: Add hash-modes 11700 (Streebog-256) and 11800 (Streebog-512)
2018-10-29 10:33:30 +01:00
Jens Steube
915da5fee3 Some fixes for macOS 2018-10-28 17:29:39 +01:00
Jens Steube
dc39deba0f Update version to 5.0.0 2018-10-28 16:51:00 +01:00
Jens Steube
d6fe2c7cd4 The hashcat brain 2018-10-28 16:47:13 +01:00
Jens Steube
24ce7bacae Updated Intel OpenCL runtime version check 2018-10-26 21:16:32 +02:00
Jens Steube
f3f4ab4421 Do not return -1 in case of --keyspace 2018-10-25 13:56:03 +02:00
Sein Coray
591c1db0f6 Changed separator for certain hash algorithms to be static 2018-10-25 11:37:54 +02:00
R. Yushaev
831075b532 Fixed the byte order of digest output for hash-mode 11800 (Streebog-512) 2018-10-25 10:44:24 +02:00
Jens Steube
e2a9409413
Merge pull request #1710 from unix-ninja/master
Add support for TOTP (RFC 6238)
2018-10-22 20:49:31 +02:00
unix-ninja
55d56baaa5 Fix digest to allow auto optimized code by compiler 2018-10-22 08:25:05 -04:00
unix-ninja
1809794299 Simplify code in check_hash() 2018-10-22 08:02:57 -04:00
Jens Steube
99709a32a3 Allow keepass iteration count to be larger than 999999 2018-10-21 13:32:07 +02:00
Jens Steube
adb1686b9a Override --quiet and show final status screen in case --status is used
Fixes #1720
2018-10-21 11:50:44 +02:00
Jens Steube
4359f61f84 Make sure to initialize INPUT_RECORD variables because of the union data type section 2018-10-21 11:31:51 +02:00
unix-ninja
cef3c1cb06 Use C99 format specifier 2018-10-20 22:00:15 -04:00
Jens Steube
d4123333c0 Do stdin read timeout check only in case no data has been processed 2018-10-20 18:53:14 +02:00
jsteube
d96b649751 Add support for -a 1 in -S mode 2018-10-20 18:00:42 +02:00
jsteube
32b915fd01 Get rid of some old compiler warning flags in Makefile 2018-10-20 17:35:54 +02:00
Jens Steube
8ca4e46f2c Remove some debugging code 2018-10-20 11:52:27 +02:00
Jens Steube
a4ac370496 Test fix for plain_t in 32 bit mode 2018-10-20 09:46:24 +02:00
unix-ninja
6558253d72 Don't cause memory leaks... 2018-10-19 15:37:02 -04:00
unix-ninja
fddfd835d2 Support 64 bit timestamps properly 2018-10-19 15:35:52 -04:00
unix-ninja
770e21e5ee Support 64 bit timestamps properly 2018-10-19 15:16:46 -04:00
unix-ninja
8b2af6b207 More code style changes 2018-10-19 08:45:44 -04:00
R. Yushaev
4d457ca141 Fix conflicts caused by PR GH-1717 2018-10-19 10:53:23 +02:00
unix-ninja
3869ce9246 More coding style fixes 2018-10-18 08:55:55 -04:00
Jens Steube
5ee3e502f8 Fixed missing wordlist encoding in combinator mode
Fixes #1668
2018-10-18 14:19:07 +02:00
Jens Steube
4a9171ca5d Fix use of select() on stdin on windows
Fixes #1705
2018-10-18 11:20:01 +02:00
unix-ninja
ac2b811941 Categorize TOTP under "One-Time Passwords" 2018-10-17 19:27:06 -04:00
unix-ninja
db4ec8ed2c Fix formatting to comply with hashcat coding guidelines 2018-10-17 16:34:34 -04:00
unix-ninja
23ee9379c1 Fix zero-padding on token output for matches 2018-10-17 11:47:04 -04:00
unix-ninja
27366c3eff Don't duplicate existing functionality 2018-10-17 11:44:34 -04:00
unix-ninja
d66200a406 Force --keep-guessing on mode 18100 2018-10-17 08:17:48 -04:00
unix-ninja
83c78cdf0b Cleanup unused code 2018-10-17 08:15:49 -04:00
philsmd
73ed017daf
stdin: add read timeout checks (abort if no input for a long time) 2018-10-17 10:55:47 +02:00
Jens Steube
5b8a35a118 Fix returncode from hashcat in case --show or --left was used 2018-10-17 09:13:54 +02:00
unix-ninja
37983de4b2 Fix compile warnings in totp_parse_hash() 2018-10-16 17:39:46 -04:00
unix-ninja
3c3b05d1e5 Resolve conflicts 2018-10-16 15:48:20 -04:00
unix-ninja
6cda8f7077 Change TOTP index from 17300 to 18100 2018-10-16 15:33:09 -04:00
unix-ninja
977b560bb4 Add support for TOTP (RFC 6238) 2018-10-16 15:05:14 -04:00
philsmd
b1465693a3
fixes #1708: reject invalid masks with only a single ? at the end 2018-10-16 15:59:20 +02:00
R. Yushaev
5c87720acc Add SHA3 and Keccak
The previous hash-mode 5000 covered Keccak-256 only. FIPS changed one
padding byte while adopting Keccak as the SHA3 standard, which gives us
different digests. Now we have separate kernels for SHA3 and Keccak.

 - Added hash-mode 17300 = SHA3-224
 - Added hash-mode 17400 = SHA3-256
 - Added hash-mode 17500 = SHA3-384
 - Added hash-mode 17600 = SHA3-512
 - Added hash-mode 17700 = Keccak-224
 - Added hash-mode 17800 = Keccak-256
 - Added hash-mode 17900 = Keccak-384
 - Added hash-mode 18000 = Keccak-512
 - Removed hash-mode 5000 = SHA-3 (Keccak)
2018-10-15 16:06:31 +02:00
Jens Steube
6f8b90a11a Add support for latest OpenCL headers from Khronos 2018-10-14 12:39:11 +02:00
Jens Steube
8452930795 Allow hashfile for -m 16800 to be used with -m 16801 2018-10-14 11:39:31 +02:00
Jens Steube
6afe989bed Fixed the tokenizer configuration in postgres hash parser 2018-10-14 11:38:31 +02:00
Chrjsen
91bab324b3 Fixed spelling error in user_options.c 2018-10-04 21:31:13 +02:00
Jens Steube
1b980cf010 Allow hashfile for -m 16800 to be used with -m 16801 2018-09-29 11:52:21 +02:00
Rosen Penev
77daf05dd0 Add HC_API_CALL to a few functions
On 32-bit MinGW, clang was throwing errors about this.

64-bit MinGW and regular MSYS does not throw warnings after the change.
2018-09-18 16:34:00 -07:00
Michael Sprecher
1892b842d7
Increased the maximum size of edata2 in Kerberos 5 TGS-REP etype 23 2018-09-12 12:25:02 +02:00
jsteube
d6ed195db9 Add -a 1 support for slow candidates mode 2018-09-01 23:12:56 +02:00
jsteube
5f797147fb Link ws2_32 in order to make use of select() 2018-09-01 14:09:24 +02:00
jsteube
fd71da8ade Add timeout to fgets() for later use 2018-09-01 13:19:29 +02:00
jsteube
52c52836e3 Add new option --slow-candidates which allows hashcat to generate passwords on-host 2018-09-01 12:31:17 +02:00
Jens Steube
466ea8eaba Fixed detection of unique ESSID in WPA-PMKID-* parser 2018-08-31 15:47:48 +02:00
philsmd
2933f3320a
outfile check: performance improvement by using binary instead of linear search 2018-08-31 12:55:05 +02:00
Jens Steube
a134ea52b3 Fixed a race condition in status view leading to out-of-bound reads 2018-08-30 21:31:05 +02:00
Jens Steube
3e149843ae Fixed detection of unique ESSID in WPA-PMKID-* parser 2018-08-30 11:13:44 +02:00
Jens Steube
4fa970fbf5
Merge pull request #1673 from RAN1/master
Allow hwmon when temp abort is disabled by refactoring guards when hwmon is not present
2018-08-30 11:06:26 +02:00
Jens Steube
99fbbd4639
Merge pull request #1672 from philsmd/master
outfile check: improve response time when quitting hashcat
2018-08-30 10:54:34 +02:00
RAN1
40cc9b948f hwmon_ctx_init: return on speed_only and progress_only 2018-08-29 22:38:03 -04:00
RAN1
ec1b6442b1 Allow hwmon when temp abort is disabled by refactoring guards when hwmon is not present 2018-08-28 16:28:44 -04:00
philsmd
93216c76a3
outfile check: improve response time when quitting hashcat 2018-08-26 17:51:40 +02:00
Xanadrel
3466e5eb5a
--potfile-path should be File and not Dir in the --help 2018-08-25 00:14:51 +02:00
jsteube
a3ee4d7188 Do not allocate memory segments for bitmap tables if we dont need it, for example in benchmark mode 2018-08-24 12:59:28 +02:00
philsmd
0f449b6440
hcstat2: allow to use option --markov-hcstat2 instead of just --markov-hcstat 2018-08-23 09:10:54 +02:00
jsteube
067ffa9d64 Add more tracker for amplifier and iterations to status screen 2018-08-18 02:17:42 +02:00
jsteube
27db8ced7e Add a tracker for salts, amplifier and iterations to status screen 2018-08-18 01:41:07 +02:00
Michael Sprecher
e975612f82
Fixed the ciphertext max length in Ansible Vault parser 2018-08-16 12:13:22 +02:00
Michael Sprecher
5536ab9917
Getting rid of OPTS_TYPE_HASH_COPY for Ansible Vault 2018-08-15 23:32:58 +02:00
philsmd
1c49ff39f1
fixes #1654: missing mask in output of --stdout -a 7 2018-08-15 13:32:08 +02:00
Jens Steube
ae5c0ef1ba Merge branch 'master' of https://github.com/hashcat/hashcat 2018-08-14 15:39:57 +02:00
Jens Steube
ce9b56e06c Allow bitcoin master key length not be exactly 96 byte a multiple of 16 2018-08-14 15:39:39 +02:00
jsteube
a5746548e8 Allow use of hash-mode 7900, 10700 and 13731 on AMD devices after workaround 2018-08-13 13:41:43 +02:00
jsteube
dad05d9f69 Testing: Workaround some AMD OpenCL runtime segmentation faults 2018-08-09 13:03:22 +02:00
jsteube
762e5d5cda Go back into development mode 2018-08-08 23:01:32 +02:00
jsteube
4963357fac Update to v4.2.1 2018-08-07 14:04:04 +02:00
jsteube
95b420dfb4 Use special CFLAGS for LZMA compile 2018-08-06 21:50:01 +02:00
jsteube
634dd71384 Remove some suppressed warnings 2018-08-06 21:04:48 +02:00
jsteube
afd1efd59c Fixed a buffer overflow in precompute_salt_md5() in case salt was longer than 64 characters 2018-08-06 15:35:35 +02:00
jsteube
9f54c3dd14 Transfer only a few byte should be enough to force the runtime to actually allocate the memory 2018-08-06 14:46:52 +02:00
jsteube
242d991def Fix memleak in memory evaluation 2018-08-06 10:25:19 +02:00
jsteube
f9b13035f2 Limit evaluate available memory check to nvidia runtime 2018-08-06 10:16:29 +02:00
jsteube
86fc587182 Be a bit more sensible while try to evaluate available memory 2018-08-06 00:20:39 +02:00
jsteube
e67195aa11 Try to evaluate available OpenCL device memory and use this information instead of total available OpenCL device memory for autotune 2018-08-05 23:29:54 +02:00
jsteube
1d7e1ba7e5 Unset PRODUCTION 2018-08-03 22:42:09 +02:00
jsteube
9c0ba3a640 Fix speed report in case --machine-readable is used 2018-08-02 20:47:17 +02:00
jsteube
c1edc5d562 Increase max PWS space to 1GB to allow higher -n values for GPU with lots of compute units 2018-08-02 20:20:58 +02:00
Jens Steube
4a856b1149
Merge pull request #1643 from hops/master
Added hash-mode 16900 = Ansible Vault
2018-08-01 20:28:00 +02:00
Michael Sprecher
3a321c8dce
Added hash-mode 16900 = Ansible Vault 2018-08-01 19:44:30 +02:00
jsteube
d11070729b Fix Token Length Exception on NetNTLMv2 hashes 2018-08-01 19:09:41 +02:00
jsteube
39af031ced Fix Token Length Exception on NetNTLMv1 hashes 2018-07-31 17:31:54 +02:00
jsteube
bdec457951 TrueCrypt/VeraCrypt cracking: Do an entropy check on the TC/VC header on start 2018-07-31 16:18:45 +02:00
jsteube
c1ebfe486f Refactor --progress-only and --speed-only calculation 2018-07-31 14:41:25 +02:00
jsteube
cd0923f1b8 General file handling: Abort if a byte order mark (BOM) was detected in a wordlist, hashlist, maskfile or rulefile 2018-07-30 13:23:48 +02:00
Jens Steube
0e2c94c695
Merge pull request #1635 from RAN1/master
Add macOS library install pathnames
2018-07-29 15:30:17 +02:00
RAN1
276538b141 Use only library install path for macOS library 2018-07-27 13:55:51 -04:00
jsteube
cc390f200e Fix typo 2018-07-27 16:02:05 +02:00
jsteube
b1788a934e Fix missing TOKEN_ATTR_VERIFY_SIGNATURE in phpass_parse_hash() 2018-07-26 13:22:28 +02:00
jsteube
9d43111730 Fix broken hex notation 2018-07-26 11:41:56 +02:00
jsteube
88ebca40b8 Added hash-mode 16800 = WPA-PMKID-PBKDF2
Added hash-mode 16801 = WPA-PMKID-PMK
Renamed lot's of existing WPA related variables to WPA-EAPOL in order to distinguish them with WPA-PMKID variables
Renamed WPA/WPA2 to WPA-EAPOL-PBKDF2
Renamed WPA/WPA2 PMK to WPA-EAPOL-PMK
2018-07-25 16:46:06 +02:00
RAN1
5bfdf79ed8 Add macOS library install pathnames 2018-07-24 19:04:20 -04:00
jsteube
cc8fa3ee80 Remove TOKEN_ATTR_TERMINATE_STRING from input_tokenizer() and replace with equalivalent code where it's needed 2018-07-24 13:55:23 +02:00
Jens Steube
a9b98a2d54
Merge pull request #1634 from magnumripper/master
Fix a couple of gcc-6 -Wpointer-sign build warnings.
2018-07-24 12:05:14 +02:00
magnum
f5e9f4dc85 Fix a couple of gcc-6 -Wpointer-sign build warnings. 2018-07-24 10:57:54 +02:00
RAN1
fa75e85896 Fix shared install on macOS 2018-07-23 17:09:37 -04:00
Michael Sprecher
07840c9fe3
Fixed a missing check for hashmodes using OPTS_TYPE_PT_UPPER causing the self-test to fail when using combinator- and hybrid-mode 2018-07-23 19:09:58 +02:00
philsmd
2e1845ec11
fixes #1624: increase esalt/nonce buffer to 1024 for -m 11400 = SIP 2018-07-23 15:51:39 +02:00
jsteube
2530f83029 Move LZMA SDK files into separate folder for compiling 2018-07-23 13:36:23 +02:00
jsteube
81f909e229 Prepare for v4.2.0 release 2018-07-23 12:12:33 +02:00
jsteube
34bf28f9d4 Fix __add3 bitops in host code 2018-07-22 12:23:18 +02:00
Jens Steube
eb563f5a10 Fix minimum line length for token 3 in saph_sha1_parse_hash() 2018-07-21 14:09:52 +02:00
Jens Steube
a33af21642 Fix some output formats after refactorization with input_tokenizer() 2018-07-20 20:29:00 +02:00
jsteube
048298020e All remaining parser functions have been rewritten to make use of input_tokenizer():
chacha20_parse_hash
crammd5_dovecot_parse_hash
electrum_wallet13_parse_hash
ethereum_pbkdf2_parse_hash
ethereum_presale_parse_hash
ethereum_scrypt_parse_hash
filevault2_parse_hash
filezilla_server_parse_hash
jks_sha1_parse_hash
jwt_parse_hash
mywalletv2_parse_hash
netbsd_sha1crypt_parse_hash
plaintext_parse_hash
tacacs_plus_parse_hash
tripcode_parse_hash
Removed old generic salt parser function parse_and_store_salt()
2018-07-20 11:00:39 +02:00
jsteube
85aef30dff The following parser functions have been rewritten to make use of input_tokenizer():
opencart_parse_hash
des_parse_hash
win8phone_parse_hash
sha1cx_parse_hash
itunes_backup_parse_hash
skip32_parse_hash
2018-07-19 17:14:33 +02:00
jsteube
8903adb164 Added OpenCL device utilization to status information in machine readable output 2018-07-18 18:14:42 +02:00
jsteube
ed0ac581cd The following parser functions have been rewritten to make use of input_tokenizer():
keepass_parse_hash
zip2_parse_hash
2018-07-18 17:59:44 +02:00
jsteube
558c2c4aa5 The following parser functions have been rewritten to make use of input_tokenizer():
ms_drsr_parse_hash
androidfde_samsung_parse_hash
rar5_parse_hash
krb5tgs_parse_hash
axcrypt_parse_hash
2018-07-17 16:13:55 +02:00
jsteube
a6b52d6faf The following parser functions have been rewritten to make use of input_tokenizer():
ecryptfs_parse_hash
bsdicrypt_parse_hash
rar3hp_parse_hash
cf10_parse_hash
mywallet_parse_hash
2018-07-16 18:22:58 +02:00
jsteube
e1fd84255b Some fixes for seven_zip_parse_hash() using input_tokenizer() 2018-07-15 20:54:49 +02:00
jsteube
230ec5e004 Add TOKEN_ATTR_TERMINATE_STRING feature to input_tokenizer()
The following parser functions have been rewritten to make use of input_tokenizer():
bitcoin_wallet_parse_hash
sip_auth_parse_hash
crc32_parse_hash
oraclet_parse_hash
seven_zip_parse_hash
2018-07-15 18:10:04 +02:00
jsteube
39418571db The following parser functions have been rewritten to make use of input_tokenizer():
prestashop_parse_hash
postgresql_auth_parse_hash
mysql_auth_parse_hash
2018-07-14 22:40:03 +02:00
jsteube
cd552eb54d The following parser functions have been rewritten to make use of input_tokenizer():
pdf14_parse_hash
pdf17l8_parse_hash
pbkdf2_md5_parse_hash
pbkdf2_sha1_parse_hash
pbkdf2_sha256_parse_hash
pbkdf2_sha512_parse_hash
2018-07-14 12:48:54 +02:00
jsteube
6ee7709d27 The following parser functions have been rewritten to make use of input_tokenizer():
djangopbkdf2_parse_hash
siphash_parse_hash
crammd5_parse_hash
saph_sha1_parse_hash
pdf11_parse_hash
pdf11cm2_parse_hash
2018-07-13 09:59:59 +02:00
jsteube
bc8ed67a11 The following parser functions have been rewritten to make use of input_tokenizer():
oldoffice01_parse_hash
oldoffice01cm2_parse_hash
oldoffice34_parse_hash
oldoffice34cm2_parse_hash
2018-07-12 18:06:00 +02:00
jsteube
9f4655e131 The following parser functions have been rewritten to make use of input_tokenizer():
lotus8_parse_hash
cisco8_parse_hash
cisco9_parse_hash
office2007_parse_hash
office2010_parse_hash
office2013_parse_hash
2018-07-11 11:57:43 +02:00
jsteube
82457d2904 Fixed a missing check for errors on OpenCL device leading to invalid removal of restore file 2018-07-10 13:17:07 +02:00
jsteube
1b30a1d6c7 The following parser functions have been rewritten to make use of input_tokenizer():
nsec3_parse_hash
wbb3_parse_hash
racf_parse_hash
androidfde_parse_hash
scrypt_parse_hash
2018-07-09 12:49:42 +02:00
jsteube
f02e72425b The following parser functions have been rewritten to make use of input_tokenizer():
sapb_parse_hash
sapg_parse_hash
drupal7_parse_hash
sybasease_parse_hash
netscaler_parse_hash
cloudkey_parse_hash
2018-07-08 12:55:31 +02:00
jsteube
1c121ef79c The following parser functions have been rewritten to make use of input_tokenizer():
sha512macos_parse_hash
sha512grub_parse_hash
rakp_parse_hash
krb5pa_parse_hash
2018-07-07 11:25:25 +02:00
jsteube
0820fe4100 The following parser functions have been rewritten to make use of input_tokenizer():
sha1aix_parse_hash
agilekey_parse_hash
lastpass_parse_hash
fortigate_parse_hash
2018-07-06 13:48:39 +02:00
jsteube
3bf3ec5bbe Fine tune --progress-only mode output for extreme slow kernels 2018-07-05 14:44:34 +02:00
jsteube
dd2511233d Fixed a miscalculation in --progress-only mode output for extreme slow kernels like -m 14800 2018-07-05 14:14:39 +02:00
jsteube
18fed3053a The following parser functions have been rewritten to make use of input_tokenizer():
md5aix_parse_hash
sha256aix_parse_hash
sha512aix_parse_hash
2018-07-05 11:11:24 +02:00
jsteube
7e18ab05be The following parser functions have been rewritten to make use of input_tokenizer():
ikepsk_md5_parse_hash
ikepsk_sha1_parse_hash
2018-07-04 12:58:30 +02:00
jsteube
afd5fa760c The following parser functions have been rewritten to make use of
input_tokenizer():
androidpin_parse_hash
chap_parse_hash
lotus5_parse_hash
lotus6_parse_hash
radmin2_parse_hash
gost2012sbog_256_parse_hash
gost2012sbog_512_parse_hash
2018-07-03 10:23:04 +02:00
jsteube
8b2478d744 The following parser functions have been rewritten to make use of input_tokenizer():
sha256crypt_parse_hash
sha512crypt_parse_hash
keccak_parse_hash
blake2b_parse_hash
juniper_parse_hash
oracleh_parse_hash
gost_parse_hash
2018-07-02 09:20:15 +02:00
jsteube
87be2e8cce The following parser functions have been rewritten to make use of input_tokenizer():
sha224_parse_hash
sha256_parse_hash
sha256s_parse_hash
sha384_parse_hash
sha512_parse_hash
sha512s_parse_hash
ripemd160_parse_hash
whirlpool_parse_hash
hmacmd5_parse_hash
hmacsha1_parse_hash
hmacsha256_parse_hash
hmacsha512_parse_hash
mysql323_parse_hash
2018-07-01 10:49:30 +02:00
jsteube
c6eb269784 The following parser functions have been rewritten to make use of input_tokenizer():
mssql2000_parse_hash
mssql2005_parse_hash
mssql2012_parse_hash
oracles_parse_hash
episerver4_parse_hash
sha512b64s_parse_hash
hmailserver_parse_hash
phps_parse_hash
mediawiki_b_parse_hash
peoplesoft_parse_hash
skype_parse_hash
djangosha1_parse_hash
redmine_parse_hash
punbb_parse_hash
sha256b64s_parse_hash
atlassian_parse_hash
2018-07-01 09:49:33 +02:00
jsteube
06a34bd026 Convert sha1b64s_parse_hash() to make use of input_tokenizer() 2018-06-30 10:51:21 +02:00
jsteube
384fe1ba15 Add support for multiple valid signatures in input_tokenizer() 2018-06-30 10:39:28 +02:00
jsteube
5728933cd2 Convert sha1b64_parse_hash() to make use of input_tokenizer() 2018-06-30 10:25:10 +02:00
jsteube
d36e70b598 Convert pstoken_parse_hash() to make use of input_tokenizer() 2018-06-30 10:13:26 +02:00
jsteube
ea6fd41c01 Merge branch 'master' of https://github.com/hashcat/hashcat 2018-06-29 20:32:14 +02:00
jsteube
4991bb85d2 Remove the following obsolete functions and replace them with input_tokenizer():
dcc_parse_hash
ipb2_parse_hash
sha1sha1_parse_hash
smf_parse_hash
vb3_parse_hash
2018-06-29 20:31:52 +02:00
Jens Steube
07b49c17f8
Merge pull request #1605 from magnumripper/master
Mute another -Wpointer-sign warning.
2018-06-29 12:37:50 +02:00
jsteube
6817876324 Do not increase output length in parse_and_store_generic_salt() if OPTS_TYPE_ST_ADD80 or similar is used 2018-06-29 12:33:02 +02:00
magnum
35a4972bb3 Mute another macOS -Wpointer-sign warning. 2018-06-28 19:18:16 +02:00
jsteube
319374e917 Merge branch 'master' of https://github.com/hashcat/hashcat 2018-06-28 14:25:12 +02:00
jsteube
10556b6324 The following parser functions have been rewritten to make use of
input_tokenizer():
descrypt_parse_hash()
md5pix_parse_hash()
md5asa_parse_hash()
netntlmv1_parse_hash()
netntlmv2_parse_hash()
joomla_parse_hash()
2018-06-28 14:24:52 +02:00
Jens Steube
7a408d9824
Merge pull request #1604 from magnumripper/master
Mute a macOS -Wpointer-sign warning.
2018-06-27 11:37:15 +02:00
jsteube
9196f1ba55 Added rounds_count_length() function to detect optional rounds=
substring in *crypt hashes
The following parser functions have been rewritten to make use of
input_tokenizer():
phpass_parse_hash()
md5crypt_parse_hash()
md5apr1_parse_hash()
episerver_parse_hash()
2018-06-27 11:12:35 +02:00
magnum
4e28d85e3e Mute a macOS -Wpointer-sign warning. 2018-06-27 10:41:21 +02:00
jsteube
f574cbc88a the following parser functions have been rewritten to make use of
input_tokenizer()
dcc2_parse_hash()
dpapimk_parse_hash()
2018-06-26 12:32:58 +02:00
jsteube
a2d99c5ac6 Rewrite several *_parse_hash() functions to use parse_and_store_generic_salt() 2018-06-25 16:30:40 +02:00
jsteube
50824a24c6 Rewrite parse_and_store_salt from scratch and rename original to parse_and_store_salt_legacy() for migration phase
Rewrite several *_parse_hash() functions to use parse_and_store_generic_salt()
2018-06-25 11:36:09 +02:00
jsteube
5f83dd8620 Convert cisco4_parse_hash() to make use of input_tokenizer()
Convert lm_parse_hash() to make use of input_tokenizer()
2018-06-24 14:04:05 +02:00
jsteube
2abe8caf24 Convert bcrypt_parse_hash() to make use of input_tokenizer()
Add more code to input_tokenizer()
2018-06-23 22:32:49 +02:00
jsteube
26dea37c9d TEST CODE: tokenizer function in order to simplify parsing functions 2018-06-23 16:00:49 +02:00
jsteube
c902df7d8a Fix some typo 2018-06-22 09:57:44 +02:00
jsteube
32d6b3e10e OpenCL kernels: Add '-pure' prefix to kernel filenames to avoid problems caused by reusing existing hashcat installation folder 2018-06-20 14:18:17 +02:00
jsteube
c28fdf7f44 Added hash-mode 16700 = FileVault 2 2018-06-18 14:38:35 +02:00
jsteube
c3fc50294f Bring back CUDA_CACHE_DISABLE=1 because users report to have problems without it 2018-06-17 09:06:12 +02:00
jsteube
124d10989c Try original NV kernel bytecode cache for faster startup, see how user response is 2018-06-16 22:26:39 +02:00
jsteube
547025ec47 HCCAPX management: Use advanced hints in message_pair stored by hcxtools about endian bitness of replay counter
Fixed missing code section in -m 2500 and -m 2501 to crack corrupted handshakes with a LE endian bitness base
2018-06-15 17:00:41 +02:00
jsteube
60f2d413e0 Fix missing hexification for chars 0x00 - 0x1f 2018-06-14 20:06:56 +02:00
jsteube
b88c956d97 Rule Engine: Add JtR compatible support for hex notations in rule engine 2018-06-14 15:08:00 +02:00
jsteube
a8060f4946 Rewritten handling of OpenCL JiT build options to fix warnings with GCC 8 2018-06-13 16:43:43 +02:00
jsteube
ce4858f7a3 Rewritten printable_utf8() because the original one throws too many warnings with GCC 8 2018-06-13 16:42:33 +02:00
jsteube
469fece141 OpenCL Kernels: Abort session if kernel self-test failed 2018-06-13 12:22:54 +02:00
Jens Steube
fee4cb42cc
Merge pull request #1541 from erpscanteam/master
POC for cracking SAP "half hashes" CODVN B+F/G
2018-06-12 16:38:21 +02:00
Jens Steube
88640468df
Merge pull request #1542 from matrix/selftest_warning_fix
Fix selftest.c warning
2018-06-12 16:32:21 +02:00
philsmd
7d6c0d746c
7-Zip: increase the crc length to parse
Similar to the increase done with this commit: d382400805
we need to increase the crc length again such that hashcat can load hashes corresponding to some very highly compressed files within the 7-Zip archive. 

For reference, this problem was first reported here: https://hashcat.net/forum/thread-7378.html :

as you can see
```
...$1059026$5d00001000): Salt-value exception
```

The value 1059026 is about 1MB of decrypted and decompressed data that needs to be checksummed.
2018-03-22 09:52:40 +01:00
Gabriele Gristina
7e2101438c Fix selftest.c warning 2018-03-10 14:26:14 +01:00
Mathieu Geli
4dbc1f4a87 Implement 7701/7801 SAP CODVN half-hashes 2018-03-06 16:42:53 +03:00
Jens Steube
f6cfcbbc3a
Merge pull request #1529 from yarda/system-lzma-sdk
Add support for building with system lzma-sdk
2018-03-03 18:37:29 +01:00
magnum
a3759d77cf Fix a problem with 'make install' on macOS if user has a GNU sed before
the native one in PATH (we would end up giving incompatible options).

Also omit the '-s' in LFLAGS for macOS, the linker just warns about that
option being obsolete and ignored.
2018-02-28 16:48:13 +01:00
jsteube
63defd1cea Remove unused variable 2018-02-28 11:57:23 +01:00
jsteube
83f07febfc Initial v4.1.1 deverloper mode commit 2018-02-28 11:25:23 +01:00
Jaroslav Škarvada
83ce54a736
Add support for building with system lzma-sdk
Fixes: #1528

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2018-02-28 11:21:46 +01:00
jsteube
ca1115a1ee No longer need to use 32 threads on second dimension for bitsliced algorithms 2018-02-20 01:01:50 +01:00
Jens Steube
872f82ab8d Get rid of thread limit for bitsliced kernels 2018-02-18 11:10:33 +01:00
Jens Steube
7b165a86a9 Fix LM selftest in -a 0 mode 2018-02-18 11:10:01 +01:00
Jens Steube
e79feb0b6f Add more reqd_work_group_size attributes to kernels 2018-02-17 22:16:05 +01:00
Jens Steube
7674c3a556 Revert "Thread limits on bitsliced kernels no longer required"
This reverts commit ba5f23474e.
2018-02-17 21:28:02 +01:00
Jens Steube
ba5f23474e Thread limits on bitsliced kernels no longer required 2018-02-17 20:41:07 +01:00
jsteube
b8b816eada Fix 64 marker for -m 11300 and -m 15900 2018-02-16 21:53:25 +01:00
Jens Steube
aa82d8d34d Re-enable CPU optimizations and some CPU case in thread management 2018-02-16 18:56:21 +01:00
Jens Steube
fe321105fe No need to copy empty compression buffers 2018-02-16 16:20:35 +01:00
Jens Steube
c7ae5fb7f0 Do not run more run a kernel with more threads than workitems 2018-02-16 15:53:57 +01:00
Jens Steube
07f119c28b Fix -a 7 of fast hashes in optimized mode 2018-02-14 10:21:44 +01:00
philsmd
4fcfa2ac77
max/min password/salt length vs max/min supported lengths by kernel
Make it clear that the "pass lengths" and "salt lenghts" hints are only indicative and describe the max/min pass/salt length of the kernels and are not specific to the current attack (e.g. mask attack of length 8)
2018-02-13 18:19:32 +01:00
jsteube
dfb95024bc Fix temporary datatype in wpapmk kernels 2018-02-13 16:34:00 +01:00
Jens Steube
d965475b28 Replace a missing while() with round_up_multiple_64() 2018-02-13 13:28:26 +01:00
Jens Steube
1af8e29a4b Add round_up_multiple_32() and round_up_multiple_64() 2018-02-13 13:20:29 +01:00
Jens Steube
f75accef59 Update -m 2501 selftest hash in order to succeed with new AUX kernels 2018-02-13 12:09:00 +01:00
Jens Steube
6cd6b08229 Other format that base on md5crypt should also use OPTS_TYPE_PREFERED_THREAD 2018-02-13 11:59:47 +01:00
Jens Steube
413ade76fb Add OPTS_TYPE_PREFERED_THREAD flag for -m 500 2018-02-13 11:12:08 +01:00
jsteube
98b20526f4 Fix missing cleanup for new AUX kernels 2018-02-13 10:39:22 +01:00
Jens Steube
7d09ae93f2 Merge branch 'master' of https://github.com/hashcat/hashcat 2018-02-13 10:27:55 +01:00
Jens Steube
1361651730 Add OPTS_TYPE_PREFERED_THREAD marker 2018-02-13 10:27:43 +01:00
jsteube
8053a05594 Use kernel specific max thread counts for helper kernel, not device specific 2018-02-13 10:02:00 +01:00
jsteube
fe4413797e OpenCL Kernels: Use three separate comparison kernels (depending on keyver) for WPA instead of one 2018-02-13 09:13:35 +01:00
Jens Steube
31da893a40 Enforce 2GB host memory per GPU limit 2018-02-12 15:29:08 +01:00
Jens Steube
c9f3ef6dae Fix final comparison in sort_by_dictstat() 2018-02-12 14:56:28 +01:00
jsteube
91e522d094 Add special marker for speed only mode 2018-02-12 09:41:46 +01:00
jsteube
240652a0ff Move speed timer initialization from run_cracker() to run_copy() 2018-02-11 22:28:17 +01:00
jsteube
c4f30220a0 OpenCL Kernels: Refactored kernel thread management from native to maximum per kernel 2018-02-11 21:29:57 +01:00
Jens Steube
d38608b9bc Add get_kernel_preferred_wgs_multiple() for future use 2018-02-11 16:22:24 +01:00
Jens Steube
1f442b5b0c Add get_kernel_local_mem_size() for future use 2018-02-11 16:09:50 +01:00
jsteube
ce8f445ebe Fix a few warnings and divide by zero (speed_pos) 2018-02-11 14:25:55 +01:00
Jens Steube
d656e9c3a4 OpenCL Kernels: Use the kernel local buffer size as additional reference in order to limit the thread-count 2018-02-11 10:56:08 +01:00
jsteube
a7a15df911 OpenCL Kernels: Improve performance preview accuracy in --benchmark, --speed-only and --progress-only mode 2018-02-10 20:44:13 +01:00
Jens Steube
fd89cac052 No longer need to warm-up OpenCL device for benchmark with new thread settings 2018-02-09 23:41:30 +01:00
Jens Steube
75c4d09301 CPU threads still work better on a single local work item 2018-02-09 23:40:52 +01:00
Jens Steube
fa379074b6 Fixed a logic error in storing temporary progress for slow hashes,leading to invalid speeds in status view 2018-02-09 18:30:53 +01:00
Jens Steube
b0ff625844 OpenCL Kernels: Thread-count is switched from native to maximum - as a consequence we assume host memory pool of 2GB per GPU 2018-02-09 16:42:28 +01:00
jsteube
088c45040b Remove some redundant constants 2018-02-09 10:48:19 +01:00
Jens Steube
9b1e66d87c Fixed a race condition in combinator- and hybrid-mode where the same scratch buffer was used by multiple threads 2018-02-09 09:50:13 +01:00
jsteube
05a01d3843 fix some datatypes 2018-02-08 19:13:29 +01:00
jsteube
98abea9a0f Fix one more technical teething trouble with compressor kernels 2018-02-08 15:41:19 +01:00
jsteube
3dcacb5f55 Fix hc_clEnqueueReadBuffer buffer size in gidd_to_pw_t() 2018-02-08 08:26:24 +01:00
jsteube
1c25cf5490 Fix compiler warning about rc variable which shadows a previous local 2018-02-07 22:32:01 +01:00
jsteube
bb401c9cec Fixed a missing check for returncode in case hashcat.hcstat2 was not found 2018-02-07 18:47:55 +01:00
jsteube
bd9c17e49a Add some missing function declarations 2018-02-06 13:06:10 +01:00
jsteube
e59d5fd25e sometimes device_global_mem and device_maxmem_alloc reportedback from the opencl runtime are a bit inaccurate.
let's add some extra space just to be sure.
2018-02-06 10:11:06 +01:00
jsteube
cdc4f3828b Reduce max kernel threads from 256 to 64 in -w 4 to save host and GPU memory 2018-02-06 09:38:54 +01:00
jsteube
a3a16f676f OpenCL Kernels: Add a decompressing kernel and a compressing host code in order to reduce PCIe transfer time
For details see https://hashcat.net/forum/thread-7267.html
2018-02-05 17:18:58 +01:00
jsteube
2f30e5e929 Fixed invalid support for SIMD in -m 400 2018-02-05 15:57:36 +01:00
Jens Steube
665a514977 Use a more conservative mechanic in the last step of the autotune 2018-02-03 19:01:11 +01:00
Jens Steube
fb00b528c4 Improve autotune and synchronize results on same OpenCL devices 2018-02-03 13:49:39 +01:00
Jens Steube
3d2c0018fc Limit the maximum OpenCL thread count to 256
If an OpenCL device allows a very high thread count (for example 1024 on nvidia), the host memory required is 32 times as high with 32 (It jumps from 128MB to 4GB device memory requirement). since there's no device with that much device memory (because of 1/4 memory rule) it has to limit the kernel_accel_max to be a very low number because the pws buffer will be so large otherwise. therefore autotune will be unable to calculate a good kernel_accel multiplier. currently there's no OpenCL device known that needs result in a better performance with 1024 threads compared to 256. as a result, we limit the number of threads to 256, which turns out to be a general good value.
2018-02-03 12:28:00 +01:00
jsteube
517062849e Save some space in speed display to avoid line breaks 2018-02-03 11:21:28 +01:00
jsteube
11b18512c7 Terminal: Add workitem settings to status display (can be handy for debugging) 2018-02-02 23:22:21 +01:00
jsteube
76a3e3f7af OpenCL Runtime: Add current timestamp to OpenCL kernel source in order to force OpenCL JiT compiler to recompile and not use the cache 2018-02-01 16:57:59 +01:00
jsteube
3272e29497 Returncode: Enforce returncode 0 in case the user selected --speed-only or --progress-only and no other error occured 2018-02-01 11:18:40 +01:00
jsteube
a8ca6862bf OpenCL Runtime: Enforce to use OpenCL version 1.2 to restrain OpenCL runtimes to make use of the __generic address space qualifier 2018-02-01 10:48:24 +01:00
jsteube
019ed0de6e Fix double free 2018-01-31 20:24:57 +01:00
jsteube
dd97799e4c Hashcat Context: Fixed a memory leak in shutdown phase 2018-01-31 16:42:04 +01:00
jsteube
e2654efaa7 Hash Parser: Fixed a memory leak in shutdown phase 2018-01-31 16:40:48 +01:00
jsteube
9136d23f2a Use hcmalloc() instead of malloc() whenever possible 2018-01-31 16:40:01 +01:00
jsteube
c34670c567 OpenCL Devices: Fixed several memory leaks in shutdown phase 2018-01-31 16:38:55 +01:00
jsteube
6361ea823c Use hcmalloc() instead of malloc() whenever possible 2018-01-31 16:36:04 +01:00
jsteube
09261dad0e Prepare for v4.1.0 release 2018-01-30 11:24:21 +01:00
jsteube
2095e27d46 User Options: According to getopts manpage the last element of the option array has to be filled with zeros 2018-01-29 12:35:08 +01:00
jsteube
5b527f6aa6 Removed debugging code 2018-01-28 20:15:19 +01:00
jsteube
68b1ea4b68 OpenCL Runtime: Updated rocm detection 2018-01-28 20:14:25 +01:00
jsteube
9aa9725b91 Terminal: Display Set Cost/Rounds During Benchmarking 2018-01-28 13:53:31 +01:00
jsteube
e877c30ebc OpenCL Kernels: Remove password length restriction to 16 for Cisco-PIX and Cisco-ASA hashes
Fixes #1488
2018-01-27 22:21:44 +01:00
jsteube
ef3cdddb18 Enforce environment variables to be set in cygwin environment 2018-01-27 13:26:36 +01:00
jsteube
01a7476ff8 Link hashcat native binary with -lrt to workaround problems with clock_gettime() on libc versions < 2.17 2018-01-26 23:24:01 +01:00
jsteube
213de0ba43 Simplify production versioning and fix variable content if there's no git installed 2018-01-26 23:15:11 +01:00
jsteube
084eed0a0d Moved some gcc options around to different places in Makefile 2018-01-26 20:04:32 +01:00
TomasKorbar
8222b361f1 Modified makefile to add soname for libhashcat
closes #1496
2018-01-26 19:03:56 +01:00
jsteube
e21779112f Fix some tabs in Makefile 2018-01-26 16:29:03 +01:00
philsmd
caa5c052ec
Makefile: disallow running 'make install' on windows systems (including cygwin/msys etc) 2018-01-26 08:20:12 +01:00
philsmd
0b79d65682
Makefile: fixed whitespace by using spaces instead of tabs where possible 2018-01-26 07:58:45 +01:00
jsteube
553668bb9f Added hash-mode 16600 = Electrum Wallet (Salt-Type 1-3) 2018-01-25 15:28:21 +01:00
Jens Steube
7062425d2b OpenCL Kernels: Use a special kernel to initialize the password buffer used during autotune measurements to reduce startup time 2018-01-23 20:33:26 +01:00
jsteube
7a8239b4c1 Fixed the maximum password length check in password reassembling function
Fixes #1492
2018-01-22 18:59:46 +01:00
jsteube
ce0cee0ac4 Stick to original JWT format from jwt.io 2018-01-21 19:57:24 +01:00
jsteube
0796c074c3 Added -m 16500 Kernels
Also changed function declaration of parser function from const hashconfig_t to just hashconfig_t
2018-01-21 18:53:55 +01:00
jsteube
5eeefb5506 More prepare for JWT 2018-01-21 15:29:17 +01:00
Jens Steube
bb806d777e
Merge pull request #1493 from mohemiv/master
added -m 16400 = CRAM-MD5 Dovecot
2018-01-19 10:13:46 +01:00
jsteube
7c1fb0140c Files: Copy include/ folder and its content to case SHARED is set to 1 in Makefile 2018-01-18 12:09:51 +01:00
Arseniy Sharoglazov
928cf471fb The hash-mode for "CRAM-MD5 Dovecot" changed from 10201 to 16400 2018-01-17 11:25:21 +03:00
Jens Steube
17f6324886
Merge pull request #1480 from matrix/osx_clock_gettime
Osx clock gettime
2018-01-15 15:53:58 +01:00
Arseniy Sharoglazov
798f05355f added -m 10201 = CRAM-MD5 Dovecot 2018-01-15 15:52:52 +03:00
Gabriele Gristina
03fab4a345 Fix clock_gettime() on OSX (v2) 2018-01-11 02:41:16 +01:00
philsmd
fa679ce496
masks: skipping too large/small masks fixed 2018-01-03 14:46:49 +01:00
Gabriele Gristina
43ce4f6135 Add checks for clock_gettime() support in Makefile 2017-12-26 14:09:30 +01:00
Gabriele Gristina
4f8343b8b1 Fix clock_gettime() on OSX 2017-12-26 13:49:17 +01:00
philsmd
bf656774bb
fixes #1279: added -m 16300 = Ethereum Pre-Sale Wallet, PBKDF2-HMAC-SHA256 2017-12-20 11:41:46 +01:00
jsteube
838a71637a Remove fixed iteration count for apple secure notes 2017-12-17 23:29:02 +01:00
jsteube
77f7ea52a5 Fix missing defined keyword 2017-12-13 12:56:00 +01:00
jsteube
458fbcbce4 Merge branch 'master' of https://github.com/hashcat/hashcat 2017-12-13 12:40:31 +01:00
jsteube
535945b03a Fix rename $SN$ signature to $ASN$ for apple secure notes 2017-12-13 12:39:00 +01:00
jsteube
d9c5c42966 Rename $SN$ signature to $ASN$ for apple secure notes 2017-12-13 12:36:01 +01:00
jsteube
0d89ddfcd9 Finish adding hash-mode 16200 = Apple Secure Notes 2017-12-13 12:32:38 +01:00
jsteube
94bfd28c74 More preparations for hash-mode 16200 2017-12-13 10:39:39 +01:00
Rosen Penev
aece2cc4be Get rid of hc_ctime too. Also fix some cppcheck confusion with nvapi.
Missed from last pull request.
2017-12-11 13:44:58 -08:00
Jens Steube
c41af948ba
Merge pull request #1471 from neheb/32to64
remove special time handling in hashcat.
2017-12-11 16:27:00 +01:00
jsteube
bbe9b723e1 Timer: Switch from gettimeofday() to clock_gettime() to workaround problems on cygwin 2017-12-10 14:02:43 +01:00
Rosen Penev
1c5915cae3 remove special time handling in hashcat.
There's a way to get 64-bit time_t and 64-bit stat in MinGW, so use that.
2017-12-09 16:40:45 -08:00
jsteube
ea795ef5ab Move out code to check for hashfile or hash on commandline into dedicated function 2017-12-06 16:12:34 +01:00
Jens Steube
f2ce04e912 Allow relative use of -I in build_opts 2017-12-05 14:14:36 +01:00
jsteube
1184ae1cdd Added option --benchmark-all to benchmark all hash-modes not just the default selection 2017-12-05 11:08:59 +01:00
jsteube
f817652bbb Terminal: Send clear line code to the same output stream as the next message following 2017-12-04 14:51:42 +01:00
jsteube
4414b520c8 remove unused variables 2017-12-04 11:20:48 +01:00
jsteube
829ea605c5 Self Test: Skip self-test for mode 8900 user-configurable scrypt settings are incompatible to fixed settings in the self-test hash
Self Test: Skip self-test for mode 15700 because settings are too high and create a too long startup time
2017-12-04 11:14:39 +01:00
jsteube
f573c1d96d Add optimized -m 16100 kernels 2017-12-03 14:35:39 +01:00
jsteube
8ec2af97ed Eventual fix for unicode folder name issue on windows 2017-12-02 15:24:10 +01:00
jsteube
b864fa5ba7 Removed option --gpu-temp-retain that tried to retain GPU temperature at X degrees celsius, please use driver specific tools
Removed option --powertune-enable to enable power tuning, please use driver specific tools
2017-12-01 15:19:10 +01:00
jsteube
9c7b56165c Reset PID controller history data for GPU fan speed in case user resumes from a paused session 2017-12-01 11:25:37 +01:00
jsteube
0fbaff8b90 Revert: Have -m 16100 always running in keep-guessing mode 2017-11-30 12:36:43 +01:00
jsteube
cda0d7dd35 Have -m 16100 always running in keep-guessing mode 2017-11-30 12:35:22 +01:00
jsteube
5847067c96 First working -m 16100 kernel 2017-11-29 17:00:14 +01:00
jsteube
7a54490da2 More -m 16100 preparations 2017-11-29 14:55:48 +01:00
philsmd
c9b16d76e6
self-tests: always work with copies of the self-test hash 2017-11-28 16:31:04 +01:00
jsteube
42d1db4294 Fixed a restore issue leading to "Restore value is greater than keyspace" in case mask-files or wordlist-folders were used 2017-11-28 09:25:10 +01:00
jsteube
04a30e6071 Show [r]esume in prompt in pause mode only and show [p]ause in prompt in resume mode only
Fixes https://github.com/hashcat/hashcat/issues/1459
2017-11-26 10:50:22 +01:00
Rosen Penev
dee6934f32 Fix cast qual with double pointers 2017-11-24 11:08:49 -08:00
jsteube
e93fa25454 Allow the use of hashcat_init() without a callback function 2017-11-21 11:30:39 +01:00
philsmd
9d58ddd9f6
fixed strtok_r () calls, could prevent memory crashes 2017-11-18 14:23:02 +01:00
philsmd
d382400805
fixes #1450: allow longer crc32 data length field for -m 11600 2017-11-18 12:59:21 +01:00
philsmd
ef6b20cc30
increase HCBUFSIZ_LARGE and truncate too large strings when copied to old_buf in events 2017-11-18 12:18:56 +01:00
philsmd
f86854a0c8
fixes #1447: prevent hexifying the [] passwords again in --show runs 2017-11-17 10:13:04 +01:00
philsmd
425290bf2b
use hc_asprintf () for PR #1451 instead of snprintf () 2017-11-17 09:50:52 +01:00
philsmd
612a50408c
in case of a parser error we always should include the actual error message even if hash is long 2017-11-16 12:37:31 +01:00
Jens Steube
6c34a8074d
Merge pull request #1448 from neheb/master
Fix a bunch of cast-qual warnings
2017-11-15 10:19:12 +01:00
Jens Steube
6047f591ff
Merge pull request #1444 from neheb/master
Replace char[] with *char
2017-11-14 07:48:46 +01:00
Rosen Penev
353d3c3008 Fix a bunch of cast-qual warnings 2017-11-13 20:46:26 -08:00
Jens Steube
78a78c233c
Merge pull request #1445 from neheb/strtol
Finish conversion to strtol family
2017-11-14 05:34:30 +01:00
Rosen Penev
b3adf1dc30 Finish conversion to strtol family 2017-11-13 12:53:05 -08:00
Rosen Penev
8458f07a57 Replace char[] with *char
The latter is more correct. The side effect is that filesize becomes smaller.

gcc    clang

before

O2
756112 762120

Os
674192 680216

after

O2
748456 760728

Os
666536 674728
2017-11-13 12:12:44 -08:00
Chick3nman
69bdac9cfe
Fixed spelling mistake
drastical -> drastically
2017-11-13 11:57:25 -06:00
Jens Steube
ea5425b344
Merge pull request #1439 from neheb/master
Change atoi family to strtol family
2017-11-13 09:10:57 +01:00
jsteube
1b312d14fd Added hash-mode 16000 = Tripcode 2017-11-11 14:44:56 +01:00
Rosen Penev
6b0ee145c4 Fix missing stuff 2017-11-10 20:54:48 -08:00
philsmd
227a5aa092
fix #1435: --show/--left hash parsing fixed for hashes with long salts 2017-11-09 11:36:01 +01:00
jsteube
a5c79de43b Update LZMA SDK files to latest (2017-08-28, 17.01 beta) 2017-11-07 12:27:27 +01:00
jsteube
4b5110281d Unset production flag during development phase 2017-11-07 10:28:16 +01:00
jsteube
f2ea05ca69 Final v4.0.1 commit 2017-11-07 10:15:03 +01:00
Royce Williams
59701ee7ed change wording when user tries -O, but not needed 2017-11-06 06:33:55 -09:00
philsmd
d93b591dc5
cosmetic: updated comment about VERSION_EXPORT 2017-11-06 13:00:05 +01:00
philsmd
7825846e00
for 1414: add dependency on the shared root folder, fix parallel builds 2017-11-06 12:46:56 +01:00