jsteube
35265d43f3
Update outfile_check
2019-01-20 10:28:54 +01:00
jsteube
06a5e736b9
Add -m 500 unit test
2019-01-19 20:09:32 +01:00
jsteube
da413b4eaa
Add -m 5100 module
2019-01-18 22:56:37 +01:00
Gabriele Gristina
1541531a5a
Fix dnclen typo
2019-01-18 21:55:26 +01:00
jsteube
05b71b6bc0
Get rid of the compiler warnings caused by LZMA SDK
2019-01-18 08:34:36 +01:00
jsteube
a39f414def
Add -m 14100 module
2019-01-16 20:38:33 +01:00
jsteube
3b9a26c9f6
Fix -m 20 module
2019-01-16 20:18:40 +01:00
Jens Steube
91dc75b440
Merge pull request #1872 from pellejohnk/module-20
...
module-20: Added module for hashmode 20.
2019-01-16 20:07:48 +01:00
jsteube
1e31b3b271
Add -m 14000 module
2019-01-16 19:55:54 +01:00
Pelle Kuiters
34c8b7af77
module-20: Added module for hashmode 20.
2019-01-16 16:08:02 +01:00
jsteube
47f78199f8
Add -m 600 module
2019-01-15 17:12:13 +01:00
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
Jens Steube
55add7c60e
The goal of this branch to develop a plugin like interface for hashcat kernels.
...
The modification of existing core source files to add new hashcat kernels conflicts with the idea of having private hashcat kernel repositories especially when backporting latest hashcat core changes and new features.
The final outcome of this should be a plugin format that does not require modifications on the core soruce files.
Also convert all existing hash-modes to hashcat modules.
We'll start with dynamic loading the modules at runtime rather than linking them at compile time.
This will require some extra code for different OS types but should beneficial on a long term.
This commit add some first ideas of how such modules could look like, however there's no dynamic loading interface yet.
Next steps will be removing all hash-mode depending special code from source files and move them to the modules.
Finally merge with master.
2018-12-06 14:02:10 +01:00
Matt Covalt
71d9369a70
Correct Electrum Wallet Salt-Type support
2018-12-05 10:53:14 -08:00
Sein Coray
c941e55a35
Extended IKE PSK md5/sha1 (-m 5300/5400) to print hashes correctly
2018-12-05 12:57:54 +01:00
philsmd
2ee7306322
Set github master to non-production mode
2018-12-04 11:54:05 +01:00
Jens Steube
72319875d8
Update version to 5.1.0
2018-12-02 11:58:48 +01:00
Jens Steube
0b2ffec379
Fixed selection of OpenCL devices (-d) if there's more than 32 OpenCL devices installed
2018-11-30 22:59:43 +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
b457f402c6
Fix output of mapped password in status screen
2018-11-26 12:39:17 +01:00
Jens Steube
79263c142d
Fix parameter name spelling
2018-11-26 09:38:13 +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
Jens Steube
ee2854ec2a
Support multi-byte characters for TC/VC keyboard layout mapping tables
2018-11-25 13:31:37 +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
ed8384d4bc
OpenCL Runtime: Disable auto-vectorization for Intel OpenCL runtime to workaround hanging JiT since version 18.1.0.013
2018-11-21 12:03:47 +01:00
Jens Steube
c9da60c73a
Fixed thread count maximum for pure kernels in straight attack mode
2018-11-20 15:29:24 +01:00
Jens Steube
490050ecb3
Update usage.c description for --spin-damp
2018-11-20 14:52:49 +01:00
Jens Steube
e770449702
OpenCL Runtime: Use our own yielding technique for synchronizing rather than vendor specific
...
Parameter: Rename --nvidia-spin-damp to --spin-damp (now accessible for all devices)
2018-11-20 12:32:24 +01:00
Jens Steube
ae577410d0
OpenCL Device: Do a real query on OpenCL local memory type instead of just assuming it
2018-11-20 10:06:34 +01:00
jsteube
1156cf7207
Fixed invalid hardware monitor detection in benchmark mode
...
Fixes https://github.com/hashcat/hashcat/issues/1787
2018-11-17 14:40:30 +01:00
Jens Steube
49fc7d45b7
- Keymaps: Added hashcat keyboard mapping us.hckmap (can be used as template)
...
- Keymaps: Added hashcat keyboard mapping de.hckmap
2018-11-15 22:29:03 +01:00
Jens Steube
400be920ba
Add missing non-boot volumes support
2018-11-15 15:05:30 +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
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
philsmd
2e1845ec11
fixes #1624 : increase esalt/nonce buffer to 1024 for -m 11400 = SIP
2018-07-23 15:51:39 +02:00
jsteube
2530f83029
Move LZMA SDK files into separate folder for compiling
2018-07-23 13:36:23 +02:00
jsteube
81f909e229
Prepare for v4.2.0 release
2018-07-23 12:12:33 +02:00
jsteube
34bf28f9d4
Fix __add3 bitops in host code
2018-07-22 12:23:18 +02:00
Jens Steube
eb563f5a10
Fix minimum line length for token 3 in saph_sha1_parse_hash()
2018-07-21 14:09:52 +02:00
Jens Steube
a33af21642
Fix some output formats after refactorization with input_tokenizer()
2018-07-20 20:29:00 +02:00
jsteube
048298020e
All remaining parser functions have been rewritten to make use of input_tokenizer():
...
chacha20_parse_hash
crammd5_dovecot_parse_hash
electrum_wallet13_parse_hash
ethereum_pbkdf2_parse_hash
ethereum_presale_parse_hash
ethereum_scrypt_parse_hash
filevault2_parse_hash
filezilla_server_parse_hash
jks_sha1_parse_hash
jwt_parse_hash
mywalletv2_parse_hash
netbsd_sha1crypt_parse_hash
plaintext_parse_hash
tacacs_plus_parse_hash
tripcode_parse_hash
Removed old generic salt parser function parse_and_store_salt()
2018-07-20 11:00:39 +02:00
jsteube
85aef30dff
The following parser functions have been rewritten to make use of input_tokenizer():
...
opencart_parse_hash
des_parse_hash
win8phone_parse_hash
sha1cx_parse_hash
itunes_backup_parse_hash
skip32_parse_hash
2018-07-19 17:14:33 +02:00
jsteube
8903adb164
Added OpenCL device utilization to status information in machine readable output
2018-07-18 18:14:42 +02:00
jsteube
ed0ac581cd
The following parser functions have been rewritten to make use of input_tokenizer():
...
keepass_parse_hash
zip2_parse_hash
2018-07-18 17:59:44 +02:00
jsteube
558c2c4aa5
The following parser functions have been rewritten to make use of input_tokenizer():
...
ms_drsr_parse_hash
androidfde_samsung_parse_hash
rar5_parse_hash
krb5tgs_parse_hash
axcrypt_parse_hash
2018-07-17 16:13:55 +02:00
jsteube
a6b52d6faf
The following parser functions have been rewritten to make use of input_tokenizer():
...
ecryptfs_parse_hash
bsdicrypt_parse_hash
rar3hp_parse_hash
cf10_parse_hash
mywallet_parse_hash
2018-07-16 18:22:58 +02:00
jsteube
e1fd84255b
Some fixes for seven_zip_parse_hash() using input_tokenizer()
2018-07-15 20:54:49 +02:00
jsteube
230ec5e004
Add TOKEN_ATTR_TERMINATE_STRING feature to input_tokenizer()
...
The following parser functions have been rewritten to make use of input_tokenizer():
bitcoin_wallet_parse_hash
sip_auth_parse_hash
crc32_parse_hash
oraclet_parse_hash
seven_zip_parse_hash
2018-07-15 18:10:04 +02:00
jsteube
39418571db
The following parser functions have been rewritten to make use of input_tokenizer():
...
prestashop_parse_hash
postgresql_auth_parse_hash
mysql_auth_parse_hash
2018-07-14 22:40:03 +02:00
jsteube
cd552eb54d
The following parser functions have been rewritten to make use of input_tokenizer():
...
pdf14_parse_hash
pdf17l8_parse_hash
pbkdf2_md5_parse_hash
pbkdf2_sha1_parse_hash
pbkdf2_sha256_parse_hash
pbkdf2_sha512_parse_hash
2018-07-14 12:48:54 +02:00
jsteube
6ee7709d27
The following parser functions have been rewritten to make use of input_tokenizer():
...
djangopbkdf2_parse_hash
siphash_parse_hash
crammd5_parse_hash
saph_sha1_parse_hash
pdf11_parse_hash
pdf11cm2_parse_hash
2018-07-13 09:59:59 +02:00
jsteube
bc8ed67a11
The following parser functions have been rewritten to make use of input_tokenizer():
...
oldoffice01_parse_hash
oldoffice01cm2_parse_hash
oldoffice34_parse_hash
oldoffice34cm2_parse_hash
2018-07-12 18:06:00 +02:00
jsteube
9f4655e131
The following parser functions have been rewritten to make use of input_tokenizer():
...
lotus8_parse_hash
cisco8_parse_hash
cisco9_parse_hash
office2007_parse_hash
office2010_parse_hash
office2013_parse_hash
2018-07-11 11:57:43 +02:00