1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-12-24 07:28:10 +00:00
Commit Graph

184 Commits

Author SHA1 Message Date
jsteube
3b43bd6d03 Automatically fill HASH_TYPES in test.sh 2018-12-29 18:51:21 +01:00
jsteube
eeff037365 Fix test.sh in non-optimized mode 2018-12-28 22:32:54 +01:00
jsteube
92828910fe Added test_module for -m 300 2018-12-28 21:12:04 +01:00
jsteube
14cda9b33c Added test_module for -m 200 2018-12-28 21:04:31 +01:00
jsteube
9b572d3faa Add remaining updates for test.sh 2018-12-28 20:50:59 +01:00
jsteube
925c089035 test.sh -a 6 fixes 2018-12-28 17:30:52 +01:00
jsteube
813977e419 test.sh first changes 2018-12-28 16:51:40 +01:00
jsteube
73af860f43 Add functionality in test.pl to allow empty hash returns. This is required to enable hash-mode depending password length checks. NTLM supports just 27 characters in optimized mode, but single mode would produce 32, resulting in a non found password 2018-12-21 09:48:51 +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
Jens Steube
478fd2c8cf
Merge pull request #1815 from s3inlc/test-compatibility
Changed cat -A to cat -vet in test.sh
2018-12-13 14:21:31 +01:00
Sein Coray
997a6cce87
Changed cat -A to cat -vet in test.sh 2018-12-10 16:33:56 +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
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
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
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
jsteube
b1d3e2d403 Add some missing perl modules to install_modules.sh 2018-11-18 08:55:49 +01:00
R. Yushaev
0134f5f018 Clean up test suite scripts
The test scripts have grown to be quite big (over 15000 lines) and
are hard to navigate. There are multiple if branches with over
40 conditional checks chained together. This commit solves some of
those issues.

 - Unite big repetetive if conditions into clean array lookups
 - Move 'install help' commands to a separate shell script
 - Adjust array lookup in test.sh to behave more intuitive
 - Add comments at key points to simplify navigation
 - Code formatting
2018-11-12 13:49:12 +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
R. Yushaev
34aa899a05 Add RIPEMD-160 test containers for VeraCrypt modes
- Tests: Add hash-mode 13711 (VeraCrypt PBKDF2-HMAC-RIPEMD160 + XTS 512 bit)
 - Tests: Add hash-mode 13712 (VeraCrypt PBKDF2-HMAC-RIPEMD160 + XTS 1024 bit)
 - Tests: Add hash-mode 13713 (VeraCrypt PBKDF2-HMAC-RIPEMD160 + XTS 1536 bit)
2018-11-09 11:35:23 +01:00
R. Yushaev
5eaee33094 Add test containers for VeraCrypt modes
There were testing containers for TrueCrypt hash modes (62XY),
but none for the VeraCrypt ones (137XY). This commit adds test
cases for all currently attackable hash/cipher combinations,
except RIPEMD-160 and those with boot-mode.

RIPEMD-160 is considered deprecated in VeraCrypt since 2015.

 - Tests: Add hash-mode 13721 (VeraCrypt PBKDF2-HMAC-SHA512 + XTS 512 bit)
 - Tests: Add hash-mode 13722 (VeraCrypt PBKDF2-HMAC-SHA512 + XTS 1024 bit)
 - Tests: Add hash-mode 13723 (VeraCrypt PBKDF2-HMAC-SHA512 + XTS 1536 bit)
 - Tests: Add hash-mode 13731 (VeraCrypt PBKDF2-HMAC-Whirlpool + XTS 512 bit)
 - Tests: Add hash-mode 13732 (VeraCrypt PBKDF2-HMAC-Whirlpool + XTS 1024 bit)
 - Tests: Add hash-mode 13733 (VeraCrypt PBKDF2-HMAC-Whirlpool + XTS 1536 bit)
 - Tests: Add hash-mode 13751 (VeraCrypt PBKDF2-HMAC-SHA256 + XTS 512 bit)
 - Tests: Add hash-mode 13752 (VeraCrypt PBKDF2-HMAC-SHA256 + XTS 1024 bit)
 - Tests: Add hash-mode 13753 (VeraCrypt PBKDF2-HMAC-SHA256 + XTS 1536 bit)
 - Tests: Add hash-mode 13771 (VeraCrypt PBKDF2-HMAC-Streebog-512 + XTS 512 bit)
 - Tests: Add hash-mode 13772 (VeraCrypt PBKDF2-HMAC-Streebog-512 + XTS 1024 bit)
 - Tests: Add hash-mode 13773 (VeraCrypt PBKDF2-HMAC-Streebog-512 + XTS 1536 bit)
2018-11-08 17:14:58 +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
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
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
unix-ninja
4cb93ba9bf Add 18100 to test.sh 2018-10-18 14:34:28 -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
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
48283cf473 Add tests for 7701/7801 2018-03-06 16:43:09 +03:00
Jens Steube
3b4c418b47 Prepare for -m 16600 2018-01-24 17:30:16 +01:00
jsteube
5eeefb5506 More prepare for JWT 2018-01-21 15:29:17 +01:00
Arseniy Sharoglazov
f84b2c52f8 Tests: added support for -m 16400 = CRAM-MD5 Dovecot 2018-01-18 19:24:27 +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
94c668ce8a Prepare hash-mode 16200 (Apple Secure Notes) 2017-12-12 16:36:43 +01:00
jsteube
c9d352743c Unit tests for mode 16100 2017-11-29 13:29:08 +01: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
ae5a97a95b Remove -O from test.sh 2017-08-10 13:57:21 +02:00
jsteube
68a8f70edb Mix in pure kernel functions in various optimized kernels 2017-08-10 13:56:53 +02:00
jsteube
29e13d6b77 Add pure kernels for OpenCart 2017-08-09 13:17:15 +02:00
jsteube
6bafc385dc Use pure kernels in test.sh by default 2017-08-05 13:39:30 +02:00
jsteube
b9a1e84093 Fix test script for updated max password length of -m 9700 and -m 9800 2017-08-05 13:23:51 +02:00
jsteube
c9cae1f663 Add pure kernels for PrestaShop 2017-08-04 13:03:54 +02:00
philsmd
3bc217ddb7
tests: fix tests for -m 14000, 14100, 14900 and 15400 2017-07-20 23:40:11 +02:00
jsteube
03bb234045 Preparation for WPA/WPA2 AES-CMAC: works till PMK 2017-07-20 12:46:18 +02:00
philsmd
86db2ded03
test: fixed tests for -m 2410 in combinator mode 2017-07-20 08:15:00 +02:00
jsteube
335ed09478 Fix test script settings for -m 15400 with new settings from interface.c 2017-07-19 18:41:53 +02:00
jsteube
dae5d81a9c Update test.sh default options 2017-07-19 13:07:51 +02:00
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
967d7b9323 Rename SALT_TYPE_INTERN to SALT_TYPE_GENERIC 2017-07-14 14:57:31 +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
c512e0c01a Add example -L kernel for algorithms with appended salt in utf16le 2017-07-13 00:16:29 +02:00
Jens Steube
7e5b8d3f25 Added hash-mode 15500 = JKS Java Key Store Private Keys (SHA1) 2017-06-09 09:56:06 +02: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
DoZ10
903e716b9a Swapped to outlen and tested. Okay. Still having problems with VECT_SIZE > 1 2017-04-25 18:28:40 -04:00
DoZ10
4839335c8a Cleanup 2017-04-24 21:51:07 -04:00
DoZ10
58c1f46b19 Merge and conflict resolve. 2017-04-24 21:47:35 -04:00
DoZ10
8da56522f2 Added 600 to test.pl and test.sh.. 2017-04-24 21:41:23 -04:00
DoZ10
9ddd4596a0 Added 12700 to test.sh (lazy conflict fix). 2017-04-24 21:40:01 -04:00
DoZ10
f93426c8f8 Remove tmp 600. 2017-04-24 21:37:43 -04:00
DoZ10
327a509492 Fixed test files conflicts. 2017-04-24 21:33:20 -04:00
DoZ10
e23f88fec8 Fixed Test files to match output. $Blake2$ Tag added to interface hash output 2017-04-23 10:28:58 -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
jsteube
b632d81212 Mark -m 15100 as slow hash 2017-03-23 16:47:17 +01:00
jsteube
d1b2fa0b31 Added hash-mode 15100 = Juniper/NetBSD sha1crypt 2017-03-23 16:44:32 +01:00
philsmd
22d1129818
added -m 12001 = Atlassian (PBKDF2-HMAC-SHA1) #611 2017-02-28 14:22:03 +01:00
philsmd
f314ad0926
tests: minor, always run -m 99999 last 2017-02-26 18:56:19 +01:00
philsmd
86ea878755
tests: fixed timeout values 2017-02-26 18:19:16 +01:00
philsmd
227c0be95e
resolves #1018: added -m 3910 = md5(md5($pass).md5($salt)) 2017-02-12 18:12:17 +01:00
philsmd
2436972623
always use the native sed (not gsed) for OSX, #1036 2017-02-11 14:18: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
philsmd
8e689058d0
#398: add -m 4010 = md5($salt.md5($salt.$pass)) 2017-02-01 16:56:14 +01:00
philsmd
ed74ce1aca
fixes #928: new mode -m 1411 = SSHA-256(Base64), LDAP {SSHA256} 2017-01-31 12:40:43 +01:00
jsteube
e0c3f447da Added hash-mode 4520 = sha1($salt.sha1($pass))
Added hash-mode  4522 = PunBB
OpenCL Kernel: Renumbered hash-mode 7600 to 4521
The mode 4520 is the first to support salt length up to 64
2017-01-31 11:44:58 +01:00
philsmd
96e312ccb6
fixes #537: added -m 7000 = Fortigate (FortiOS) 2017-01-30 21:18:37 +01:00
jsteube
1b8c2a29f1 Added hash-mode 14900 = Skip32 2017-01-29 16:43:08 +01:00
Jens Steube
07c89833c9 Added hash-mode 14800 = iTunes Backup >= 10.0 2017-01-26 21:16:29 +01:00
philsmd
9327475b41 added -m 14700 = iTunes Backup < 10.0 2017-01-25 19:07:07 +01:00
jsteube
8257883ec1 Added hash-mode 14600 = LUKS 2017-01-21 15:37:44 +01:00
Gabriele Gristina
3b5dfb06e9 Fix test.sh -m all bug & truecrypt tests 2016-12-29 01:08:09 +01:00
Gabriele Gristina
496c749b2b Add missings requirements for SHA-224 support 2016-12-17 19:09:52 +01:00
Gabriele Gristina
3e682052db Add truecrypt support in test.sh 2016-12-03 17:25:50 +01:00
jsteube
2bda020c83 Added new hash-mode 14400 = SHA1(CX)
Details: https://github.com/hashcat/hashcat/issues/554
2016-11-12 11:39:38 +01:00
jsteube
f3626fa082 Added new hash-mode 99999 = Plaintext 2016-11-03 19:02:55 +01:00
jsteube
3daf0af480 Added docs/credits.txt
Added docs/team.txt
2016-09-11 22:20:15 +02:00
jsteube
71a8459d85 Two new modes added:
* Added new hash-mode 14000 = DES (PT = $salt, key = $pass)
* Added new hash-mode 14100 = 3DES (PT = $salt, key = $pass)
This patch initial was created out of this PR: https://github.com/hashcat/hashcat/pull/452 which is now no longer required
I've replace the -a 3 kernel with a bitsliced version which is around 10 times faster
I've also added test.sh and test.pl patches, but some of the test scripts need to be fixed
2016-08-30 17:44:14 +02:00
Jens Steube
8298cd4926 Drop -m 190, no reason to keep it 2016-06-23 18:20:55 +02:00