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

298 Commits

Author SHA1 Message Date
jsteube
22da2407e9 Make sure word length in test.pl single mode only increases or stays equal to previous one 2018-12-28 00:09:25 +01:00
jsteube
10a7c5df3d Improve test.pl functionality a bit 2018-12-27 19:54:12 +01:00
jsteube
fcaa7d5336 Fix test_modules 2018-12-27 19:43:51 +01:00
jsteube
2afb4e0f36 Fix test.pl single mode if password is '0' 2018-12-27 16:31:36 +01:00
jsteube
7538e82b72 Bring back comparison of hashlist in crackfile 2018-12-27 15:49:18 +01:00
jsteube
97fc147aec Do not try passwords > length 31 in optimized mode, because this works only in -a 3 mode 2018-12-24 14:21:45 +01:00
Jens Steube
5717fcd1a6 Update test_modules and test.pl to respect valid password and salt length ranges per hash mode 2018-12-23 18:15:53 +01:00
Jens Steube
b20591fb89
Merge pull request #1840 from s3inlc/test-plugin-50_60
Added test modules for mode 50 and 60
2018-12-23 15:18:04 +01:00
Jens Steube
ec96c5128f
Merge pull request #1839 from s3inlc/test-plugin-20_21_23
Added test modules for mode 20, 21 and 23
2018-12-23 15:17:49 +01:00
Sein Coray
c15b095088
Added test modules for mode 50 and 60 2018-12-22 23:20:06 +01:00
Sein Coray
b3c29c9412
Added test modules for mode 20, 21 and 23 2018-12-22 22:50:37 +01:00
Jens Steube
1091feb85d
Merge pull request #1838 from s3inlc/test-plugin-10_12
Added test modules for mode 10 and 12
2018-12-22 22:27:58 +01:00
Sein Coray
f476ccc548
added new test module for mode 10 and 12 2018-12-22 22:18:49 +01:00
Jens Steube
146acbd79f
Merge pull request #1837 from s3inlc/test-plugin-18500
Added new test module for mode 18500
2018-12-22 21:19:45 +01:00
jsteube
8bb28837ef Limit single mode to 31 in general as in old test.pl 2018-12-22 21:13:34 +01:00
Sein Coray
b09ccbfbb0
Added new test module for mode 18500 2018-12-22 21:10:00 +01:00
R. Yushaev
6365672c34 Add module_preprocess_hashlist hook for tests
Some algorithms have ambiguous hashes (e.g. case-insensetive usernames
in Net-NTLMv2 hashes). This optional function allows test modules to
unify the hashlist before the verification process starts.

Also update readme and minor code formatting.
2018-12-22 19:29:24 +01:00
jsteube
7396ce3273 Remove copy/paste left over 2018-12-21 15:20:16 +01:00
jsteube
864bd3451e Add test module for -m 1500 2018-12-21 14:16:31 +01:00
R. Yushaev
9f1749dce3 Add test modules and helper functions
Modularize mode 5600, add random_ helper functions, update readme.
2018-12-21 12:16:11 +01:00
jsteube
ae53dd3b85 Update other modules just for consistency 2018-12-21 09:53:41 +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
jsteube
c5fb8ab2e8 Fix use of test.pl from test.sh 2018-12-21 09:20:16 +01:00
jsteube
c0e83dc471 Some minor test.pl fixes, added m01000.pm 2018-12-21 09:10:23 +01:00
R. Yushaev
444d11a74b Add test modules
Add tests for modes 0, 100, 110, 120, 18400, 18600. Update readme.
2018-12-20 19:18:06 +01:00
R. Yushaev
a92ab33ad5 Add modularized test.pl 2018-12-20 19:14:58 +01:00
R. Yushaev
d0478e4481 Rename test.pl to legacy_test.pl 2018-12-20 17:08:11 +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
R. Yushaev
875d6eb516 Fix selftest for hash-mode 18400 2018-12-14 13:09:54 +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
Jens Steube
72319875d8 Update version to 5.1.0 2018-12-02 11:58:48 +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
8fb93a7685 Add new layouts folder to binary package script 2018-11-26 09:17:24 +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
1a8c712452 Fix typo in test.pl 2018-11-21 08:54:20 +01:00
Jens Steube
2635331de3 Unify some global handling in test.pl 2018-11-19 09:30:20 +01:00
jsteube
63aae4d670 Fix missing perl modules in install_modules.sh 2018-11-18 20:48:01 +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
RAN1
4e558e0fd8 Update code generator function names 2018-11-10 17:55:11 -05: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
Royce Williams
6053f473eb trailing whitespace 2018-11-01 11:17:02 -08: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