1
0
mirror of https://github.com/hashcat/hashcat.git synced 2025-02-04 11:52:32 +00:00
Commit Graph

2607 Commits

Author SHA1 Message Date
jsteube
bc1dd699e3 Add -m 1500 module 2019-01-15 11:53:59 +01:00
jsteube
2915266205 Add -m 18500 module 2019-01-15 10:35:49 +01:00
jsteube
85ae6d0905 Add -m 18600 module 2019-01-15 10:25:19 +01:00
jsteube
2a5f473ef1 Add -m 18400 module 2019-01-15 10:06:01 +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
f6ea21449b Add -m 5600 module 2019-01-14 16:16:34 +01:00
jsteube
6cb9142849 Fixed mandatory module functions check 2019-01-14 15:33:01 +01:00
jsteube
5e0ed24f43 Add CHECK_MANDATORY() 2019-01-14 15:22:28 +01:00
jsteube
79c8618025 Fix cross-compiled binaries and modules 2019-01-14 15:15:21 +01:00
jsteube
083d6e1fb2 Refresh dynloader management 2019-01-14 10:11:23 +01:00
jsteube
0cd2c5ab35 Use -export_dynamic instead of --export-dynamic on OSX 2019-01-14 09:24:58 +01:00
jsteube
56d7b8ceaa Do not compile modules by default during migration 2019-01-14 09:08:03 +01:00
jsteube
555318f843 Replace -rdynamic with more cross-platform compatible --export-dynamic 2019-01-13 19:34:01 +01:00
jsteube
036e4eba2c Use -rdynamic instead of including sources of depencies for module compilation 2019-01-13 19:16:00 +01:00
jsteube
b71e06fca8 Move module sources to src/modules 2019-01-13 15:28:42 +01:00
jsteube
2d4834b735 Add md5crypt based modules 2019-01-13 00:35:22 +01:00
jsteube
02fe28fe6c Preparation for -m 501 2019-01-12 23:42:31 +01:00
jsteube
3c794b370b Add -m 500 module 2019-01-12 21:48:18 +01:00
jsteube
676dd1c410 Clean up some migrated code from interface_migrated.c 2019-01-12 21:30:21 +01:00
jsteube
91fc5286fa Fix module_hash_binary_parse check 2019-01-12 21:18:19 +01:00
jsteube
bc22bfee2e Some cleanup 2019-01-12 15:05:33 +01:00
jsteube
17bd76ee62 Use settings from selftest hash for benchmark unless overriden by module hooks 2019-01-12 01:59:18 +01:00
jsteube
74265307fe Automate module interface version management 2019-01-12 00:39:13 +01:00
jsteube
26033e5787 Make use of return length from ascii_digest instead of calling strlen() 2019-01-11 23:11:56 +01:00
jsteube
03f315a4ab Automatic append of salts to SALT_TYPE_GENERIC hashes is comfortable but counter-intuitive, everything that gets decoded in the module should be also accessed when encoding it again 2019-01-11 22:50:05 +01:00
jsteube
fcfd07ceb2 Move parse_and_store_generic_salt to shared.c 2019-01-10 20:51:38 +01:00
jsteube
df1e00e4ed Fix out-of-boundary reads in base32/base64 operations 2019-01-09 10:56:47 +01:00
jsteube
5e0dec0d6d Bring back needed variables 2019-01-09 10:03:41 +01:00
jsteube
77739ec946 Remove unused variable 2019-01-09 10:02:03 +01:00
jsteube
6aa7c9befb Prepare to make byte swapping more intuitional in encoding/decoding functions 2019-01-08 20:09:55 +01:00
Gabriele Gristina
7d3fee8a55 Fix Makefile DEBUG flags for OSX, add modules compiles by default 2019-01-08 16:32:27 +01:00
jsteube
0ae955c5ba With this commit, all hash_mode depending branches from core files are converted into hooks which can be registered on a module level 2019-01-08 15:55:11 +01:00
jsteube
86819c070f Add module_hash_save_binary() and module_hash_init_selftest() 2019-01-07 10:05:50 +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
jsteube
aec6a3bc99 Get rid of hash_mode depending branches in potfile.c 2019-01-06 12:04:42 +01:00
jsteube
4c133c4567 Prepare hash_category 2019-01-05 21:02:19 +01:00
jsteube
bbcc8fea29 Use MODULE_DEFAULT in module_init to reference a global default function 2019-01-05 20:17:12 +01:00
jsteube
888da50aad Get rid of hash_mode depending branches in status.c 2019-01-05 19:18:30 +01:00
jsteube
e0deb3f825 Add module_deep_comp_kernel() 2019-01-05 18:44:43 +01:00
jsteube
6cbb5e4992 Refactor kernel_accel, kernel_loops and kernel_threads management in combination with modules 2019-01-05 18:24:37 +01:00
jsteube
9190be8d44 Add forced_kernel_accel function 2019-01-05 17:01:16 +01:00
jsteube
e17c3a54d8 Add hook for unstable_warning 2019-01-04 11:55:06 +01:00
jsteube
5633d6808f Move hash_mode specific code which enforce the use of the JiT compiler to modules 2019-01-04 11:23:48 +01:00
jsteube
e537197184 Add module_build_plain_postprocess() 2019-01-03 15:43:19 +01:00
jsteube
704f353395 Update brain.c hash_mode access 2019-01-03 14:47:50 +01:00
jsteube
8afb54a93b Fix --benchmark-all on windows 2018-12-30 17:02:11 +01:00
jsteube
a81a566121 Remove hashcat_ctx requirement in ascii_digest() 2018-12-21 15:58:15 +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
0421cc6782 Add OPTS_TYPE_PT_ALWAYS_HEXIFY 2018-12-20 16:12:29 +01:00
jsteube
0ce01b8836 Make use of module_hash_decode_outfile() in potfile.c as well 2018-12-20 15:46:26 +01:00
jsteube
cfc9772e0e Add module_hash_decode_zero_hash() 2018-12-20 12:59:56 +01:00
jsteube
3ad6fab63e Add module_potfile_disable() 2018-12-20 11:04:37 +01:00
jsteube
da30151b70 Get rid of hash_mode in outfile_check.c 2018-12-20 10:43:57 +01:00
jsteube
6928e5bfbe Get rid of hash_mode in outfile_check.c 2018-12-20 10:33:29 +01:00
jsteube
ce0e19f185 Compile module as .dll example 2018-12-19 16:18:40 +01:00
jsteube
4028bae578 Use dynloader.c instead of dlopen() directly 2018-12-19 16:09:28 +01:00
jsteube
15f546bc4e Update appveyor to not check dev branch 2018-12-19 15:20:48 +01:00
R. Yushaev
031094552b Add Makefile target 'modules'
Allows to build all shared objects in modules directory using the
command 'make modules'. Also add objects to gitignore.
2018-12-19 14:31:32 +01:00
jsteube
7e1e1d34f8 Use real dlopen() to load the module 2018-12-19 13:43:45 +01:00
jsteube
fa0b8e643d Fix pwdump column names 2018-12-19 11:15:18 +01:00
jsteube
ac55386553 Get rid of hash_mode in selftest.c 2018-12-19 10:58:06 +01:00
jsteube
ea22065b9c Get rid of hash_mode in user_options.c 2018-12-19 10:13:51 +01:00
jsteube
e56c5035aa Get rid of hash_mode in wordlist.c 2018-12-19 09:51:25 +01:00
jsteube
abbfc3d10b Get rid of hash_mode in hlfmt.c 2018-12-18 16:59:00 +01:00
jsteube
4993a85b27 Get rid of hash_mode in dictstat.c 2018-12-18 15:00:00 +01:00
Jens Steube
9c0a1a53df
Merge pull request #1830 from hashcat/master
Backport from master
2018-12-18 14:39:51 +01:00
R. Yushaev
393916c0bf Allow cracking non-unique salts for Office 2013
With hash-mode 9600 (MS Office 2013) there can be multiple hashes with
the same salt but with different encryption verifiers in esalt_bufs.
This commit adds the functionality to execute _comp kernels for
different hashes after deriving their common key once.

Fixes #1826
2018-12-18 14:32:56 +01:00
jsteube
e04cd244ab Fix benchmark initializations 2018-12-17 18:55:20 +01:00
jsteube
3c37daf94b Get rid of hash_mode in autotune.c 2018-12-17 18:49:07 +01:00
jsteube
f367b7ed91 Move code to migrate into separate files 2018-12-17 14:50:56 +01:00
jsteube
e2899aa83c Move code to migrate into separate files 2018-12-17 14:47:34 +01:00
jsteube
074947c6db Get rid of hashconfig_get_kernel_threads() and hashconfig_get_kernel_loops() 2018-12-17 13:03:32 +01:00
jsteube
af22a9d1d9 Remove hashconfig_forced_kernel_threads() 2018-12-17 12:42:07 +01:00
jsteube
6e794841e3 Add default_benchmark_esalt(), default_benchmark_hook_salt(), default_benchmark_salt() 2018-12-17 11:16:53 +01:00
jsteube
3cce072f40 Get rid of strhashtype() 2018-12-17 10:33:21 +01:00
jsteube
0364dd359e Simplify use of default functions 2018-12-16 19:13:41 +01:00
jsteube
e79fa9c22f Simplify use of default functions 2018-12-16 19:01:05 +01:00
jsteube
ca169a890c Add more global default value functions 2018-12-15 19:46:55 +01:00
jsteube
1d8c31a7e2 Add more global default value functions 2018-12-15 19:04:05 +01:00
jsteube
a4fb31e8f7 Add more global default value functions 2018-12-15 16:24:37 +01:00
jsteube
3848c73f80 Add decoder_apply_optimizer ()
Add encoder_apply_optimizer ()
Add decoder_apply_options ()
Add encoder_apply_options ()
2018-12-15 15:22:40 +01:00
Jens Steube
bd37903131 Add hook_size, tmp_size, hook_salt_size 2018-12-14 17:18:17 +01:00
Jens Steube
9cf5d9cd6b
Merge pull request #1823 from hashcat/master
Backports from master
2018-12-14 15:33:53 +01:00
Jens Steube
3aecd150f9 Call module_hash_encode() in ascii_digest() 2018-12-14 15:29:57 +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
222d76f01e Replace parse_func() with module_hash_decode() 2018-12-14 12:22:13 +01:00
Jens Steube
ec3f3cd7b6 Switch from size_t to int 2018-12-14 12:21:14 +01:00
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