1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-11-15 20:39:17 +00:00
Commit Graph

2537 Commits

Author SHA1 Message Date
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