1
0
mirror of https://github.com/hashcat/hashcat.git synced 2025-02-21 12:02:28 +00:00
Commit Graph

178 Commits

Author SHA1 Message Date
jsteube
708a86fb59 Move old ascii_digest() to hashes.c and rename it to hash_encode(), also remove some unused includes 2019-03-31 17:39:00 +02:00
Chick3nman
cac6522cd7 More prep 2019-03-27 06:10:28 -05:00
jsteube
218322f630 Support for inline VeraCrypt PIM Brute-Force 2019-03-15 21:48:49 +01:00
jsteube
fc648c02f5 Add -m 2000 module 2019-01-31 15:19:21 +01:00
jsteube
383b6fb4f7 Make hash-mode sorting in --help a bit more readable 2019-01-27 11:19:32 +01:00
jsteube
c3630b2f18 Allow modules to change value from user_options->hash_mode to something different in hashconfig->hash_mode. This will be required for modes that can automatically select the right hash_mode for the user for instance LUKS 2019-01-14 19:02:09 +01:00
jsteube
79c8618025 Fix cross-compiled binaries and modules 2019-01-14 15:15:21 +01:00
jsteube
bc22bfee2e Some cleanup 2019-01-12 15:05:33 +01:00
jsteube
54edd16746 Clean up some code 2019-01-06 13:48:41 +01:00
jsteube
0186f025d3 Add support for hash modules to usage.c 2019-01-06 13:23:45 +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
af5d512b6f
Added new hash mode 18500 in usage 2018-12-10 17:02:22 +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
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
71d9369a70 Correct Electrum Wallet Salt-Type support 2018-12-05 10:53:14 -08: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
fca4f7e8a6 Prepare to use --keyboard-layout-mapping for algorithms other than TC/VC 2018-11-25 18:21:07 +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
490050ecb3 Update usage.c description for --spin-damp 2018-11-20 14:52:49 +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
Royce Williams
3bf663bee1 clarify xxHash change; add 'APFS' to Apple File System refs 2018-11-12 11:31:01 -09: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
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
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
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
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
Arseniy Sharoglazov
ee873da300 Added hash-modes 18200 (Kerberos 5 AS-REP etype 23) 2018-10-30 19:05:44 +03: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
d6fe2c7cd4 The hashcat brain 2018-10-28 16:47:13 +01:00
unix-ninja
ac2b811941 Categorize TOTP under "One-Time Passwords" 2018-10-17 19:27:06 -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
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
jsteube
52c52836e3 Add new option --slow-candidates which allows hashcat to generate passwords on-host 2018-09-01 12:31:17 +02:00
Xanadrel
3466e5eb5a
--potfile-path should be File and not Dir in the --help 2018-08-25 00:14:51 +02:00
philsmd
0f449b6440
hcstat2: allow to use option --markov-hcstat2 instead of just --markov-hcstat 2018-08-23 09:10:54 +02:00
Michael Sprecher
3a321c8dce
Added hash-mode 16900 = Ansible Vault 2018-08-01 19:44:30 +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
jsteube
c28fdf7f44 Added hash-mode 16700 = FileVault 2 2018-06-18 14:38:35 +02:00
Mathieu Geli
4dbc1f4a87 Implement 7701/7801 SAP CODVN half-hashes 2018-03-06 16:42:53 +03:00
jsteube
553668bb9f Added hash-mode 16600 = Electrum Wallet (Salt-Type 1-3) 2018-01-25 15:28:21 +01:00
jsteube
5eeefb5506 More prepare for JWT 2018-01-21 15:29:17 +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
Arseniy Sharoglazov
798f05355f added -m 10201 = CRAM-MD5 Dovecot 2018-01-15 15:52:52 +03:00
philsmd
bf656774bb
fixes #1279: added -m 16300 = Ethereum Pre-Sale Wallet, PBKDF2-HMAC-SHA256 2017-12-20 11:41:46 +01:00
jsteube
94bfd28c74 More preparations for hash-mode 16200 2017-12-13 10:39:39 +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
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
7a54490da2 More -m 16100 preparations 2017-11-29 14:55:48 +01:00
Rosen Penev
dee6934f32 Fix cast qual with double pointers 2017-11-24 11:08:49 -08:00
jsteube
1b312d14fd Added hash-mode 16000 = Tripcode 2017-11-11 14:44:56 +01:00
jsteube
d0f5c9f2b3 Rename MacOS to macOS 2017-10-20 13:36:47 +02:00
jsteube
980f04a7b6 Rename instances of OSX to MacOS 2017-10-20 11:58:31 +02:00
Fist0urs
a6294537fd Splitted DPAPI kernel in 2 to increase performances 2017-09-21 12:23:33 +02:00
jsteube
2517292ac1 Removed option --weak-hash-check (zero-length password check) to increase startup time, it also causes many Trap 6 error on OSX 2017-09-19 12:04:05 +02:00
jsteube
617dbb97ba Prepare migration -m 15800 into -m 2500 2017-09-18 13:21:00 +02:00
jsteube
12d95fd22c Added option --example-hashes to show an example hash for each hash-mode 2017-08-22 11:09:46 +02:00
philsmd
bc1a101d2b fixes #1321: new option --wordlist-autohex-disable 2017-08-16 12:42:28 +02:00
jsteube
03bb234045 Preparation for WPA/WPA2 AES-CMAC: works till PMK 2017-07-20 12:46:18 +02:00
jsteube
4bcd10cf46 Update --help menu; Explain -O option and drop -L option 2017-07-18 20:47:26 +02:00
jsteube
8abd7ae9d1 Fix some old GCC compiler warnings 2017-07-06 10:35:25 +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
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
Jens Steube
7e5b8d3f25 Added hash-mode 15500 = JKS Java Key Store Private Keys (SHA1) 2017-06-09 09:56:06 +02:00
Chick3nman
e7c36bc97f Cosmetic change
Fixed column spacing for modes 9810/9820
2017-06-06 03:21:31 -05:00
Chick3nman
6a38f3c477 Fixed mode 9810/9820 labeling
Removed $4 from label to avoid confusion.
2017-06-06 03:16:29 -05:00
jsteube
b8ad89c529 Rename function and variables containing 'unicode' to 'utf16le' because that's what's meant actually 2017-06-05 12:15:28 +02:00
Royce Williams
3fc185a66b tidy changes.txt and name normalizations 2017-06-04 13:54:41 -08:00
Jens Steube
b23ab71d5c - Added hash-mode 15600 = Ethereum Wallet, PBKDF2-HMAC-SHA256
- Added hash-mode 15700 = Ethereum Wallet, PBKDF2-SCRYPT
Resolves https://github.com/hashcat/hashcat/issues/1227
Resolves https://github.com/hashcat/hashcat/issues/1228
2017-06-03 23:23:03 +02:00
DoZ10
5683df2e17 Fixed conflicts 2017-05-16 20:36:55 -04:00
DoZ10
0d3b5393ef Swapped mode 670 -> 15400 2017-05-14 06:52:14 -04:00
Fist0urs
7ff09c6710 Preparing PR 2017-05-09 20:14:07 +02:00
DoZ10
3c67e0054c Implemented Perl test and fixed issues. Now have a working base. 2017-05-06 20:40:10 -04:00
Fist0urs
40bbb0023c Merge branch 'master' of https://github.com/hashcat/hashcat into DPAPImk 2017-05-06 17:00:17 +02:00
DoZ10
31fbe481fa Fixed final details 2017-05-02 07:17:29 -04:00
Fist0urs
73d48dcd26 Initial commit, new format DPAPImk, works till hmac-sha1 2017-05-01 00:48:09 +02:00
DoZ10
58c1f46b19 Merge and conflict resolve. 2017-04-24 21:47:35 -04:00
DoZ10
de477580a0 Code Cleanup and short doc additions 2017-04-22 21:50:22 -04:00
Jens Steube
26a345334f Added hash-mode 15200 = Blockchain, My Wallet, V2
Fixes https://github.com/hashcat/hashcat/issues/109
2017-04-16 13:19:23 +02:00
Royce Williams
54aaa1597e fix usage for encoding-to 2017-04-14 06:41:32 -08:00
Jens Steube
7cabb848d2 Wordlist encoding: Support added for internal convert from and to user-defined encoding during runtime
Wordlist encoding: Added parameters --encoding-from and --encoding-to to configure wordlist encoding handling
Dictstat: Structure for dictstat file changed as it has to include --encoding-from and --encoding-to parameter now
2017-04-14 16:36:28 +02:00
DoZ10
69dad31a29 fix: changed -m 6200 -> 600 2017-04-13 20:45:48 -04:00
DoZ10
0a8f17c24a fix: g madness... 2017-04-13 17:33:08 -04:00
DoZ10
4e9bb8b093 init 2017-04-13 08:38:59 -04:00
Royce Williams
b668aa2a81 label for 5700 Cisco type 4; update readme.txt 2017-04-04 05:14:08 -08:00
Royce Williams
4a393cacf6 5800 is Samsung only 2017-04-04 05:03:01 -08:00
Royce Williams
8620e4113f a few minor hash-mode name fixes 2017-04-03 06:55:35 -08:00
Royce Williams
46b83926fa clarify and standardize hash-mode names 2017-04-03 00:16:56 -08:00
Royce Williams
9074693e6f standardize usage output 2017-04-02 20:23:07 -08:00
Royce Williams
37b870fa44 add help for new hash-mode 15100 - Juniper/NetBSD sha1crypt 2017-03-23 16:48:22 -08:00
jsteube
c04dd5c8b1 WPA cracking: Added support for WPA/WPA2 handshake AP nonce automatic error correction
WPA cracking: Added parameter --nonce-error-corrections to configure range of error correction
2017-03-07 14:41:58 +01:00
philsmd
22d1129818
added -m 12001 = Atlassian (PBKDF2-HMAC-SHA1) #611 2017-02-28 14:22:03 +01:00
Jens Steube
e82ce9243d Added support for filtering hccapx message pairs using --hccapx-message-pair 2017-02-27 12:09:49 +01:00
philsmd
227c0be95e
resolves #1018: added -m 3910 = md5(md5($pass).md5($salt)) 2017-02-12 18:12:17 +01:00
jsteube
717da7f4f2 Added support for loading hccapx files 2017-02-06 17:03:42 +01:00
philsmd
15a9644f2a
fixes #943: added -m 15000 = FileZilla Server >= 0.9.55 2017-02-03 00:07:31 +01:00
philsmd
fe6309caa7
fixes #398: added -m 4110 md5($salt.md5($pass.$salt)) 2017-02-01 19:56:49 +01:00