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
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
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
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
06b39dc3d5
Startup: Show OpenCL runtime initialization message (per device)
2018-11-12 20:45:05 +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
a5818facf2
Brain: Set --brain-client-features default from 3 to 2
2018-11-11 10:13:38 +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
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
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
83632a83e4
Memory: Limit maximum host memory to allocate depending on bitness
2018-11-03 18:16:49 +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
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
Arseniy Sharoglazov
ee873da300
Added hash-modes 18200 (Kerberos 5 AS-REP etype 23)
2018-10-30 19:05:44 +03: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
e2a9409413
Merge pull request #1710 from unix-ninja/master
...
Add support for TOTP (RFC 6238)
2018-10-22 20:49:31 +02:00
jsteube
d96b649751
Add support for -a 1 in -S mode
2018-10-20 18:00:42 +02:00
Jens Steube
b0077860c7
Workaround some padding issues with host compiler and OpenCL JiT on 32 and 64 bit systems
2018-10-20 12:41:41 +02:00
Jens Steube
a4ac370496
Test fix for plain_t in 32 bit mode
2018-10-20 09:46:24 +02:00
Jens Steube
4a9171ca5d
Fix use of select() on stdin on windows
...
Fixes #1705
2018-10-18 11:20:01 +02:00
philsmd
73ed017daf
stdin: add read timeout checks (abort if no input for a long time)
2018-10-17 10:55:47 +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
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
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
philsmd
2933f3320a
outfile check: performance improvement by using binary instead of linear search
2018-08-31 12:55:05 +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
jsteube
6092308324
Add sempaphore macros for later use
...
Switch from CriticalSection to regular Mutex on windows
2018-08-16 14:57:10 +02:00
Michael Sprecher
5536ab9917
Getting rid of OPTS_TYPE_HASH_COPY for Ansible Vault
2018-08-15 23:32:58 +02:00
jsteube
4963357fac
Update to v4.2.1
2018-08-07 14:04:04 +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
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
13151996bc
Update version number for restore
2018-08-01 22:32:12 +02:00
Michael Sprecher
3a321c8dce
Added hash-mode 16900 = Ansible Vault
2018-08-01 19:44:30 +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
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
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
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
34bf28f9d4
Fix __add3 bitops in host code
2018-07-22 12:23:18 +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
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
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
jsteube
82457d2904
Fixed a missing check for errors on OpenCL device leading to invalid removal of restore file
2018-07-10 13:17:07 +02:00
jsteube
1b30a1d6c7
The following parser functions have been rewritten to make use of input_tokenizer():
...
nsec3_parse_hash
wbb3_parse_hash
racf_parse_hash
androidfde_parse_hash
scrypt_parse_hash
2018-07-09 12:49:42 +02:00
jsteube
f02e72425b
The following parser functions have been rewritten to make use of input_tokenizer():
...
sapb_parse_hash
sapg_parse_hash
drupal7_parse_hash
sybasease_parse_hash
netscaler_parse_hash
cloudkey_parse_hash
2018-07-08 12:55:31 +02:00
jsteube
1c121ef79c
The following parser functions have been rewritten to make use of input_tokenizer():
...
sha512macos_parse_hash
sha512grub_parse_hash
rakp_parse_hash
krb5pa_parse_hash
2018-07-07 11:25:25 +02:00
jsteube
0820fe4100
The following parser functions have been rewritten to make use of input_tokenizer():
...
sha1aix_parse_hash
agilekey_parse_hash
lastpass_parse_hash
fortigate_parse_hash
2018-07-06 13:48:39 +02:00
jsteube
18fed3053a
The following parser functions have been rewritten to make use of input_tokenizer():
...
md5aix_parse_hash
sha256aix_parse_hash
sha512aix_parse_hash
2018-07-05 11:11:24 +02:00
jsteube
7e18ab05be
The following parser functions have been rewritten to make use of input_tokenizer():
...
ikepsk_md5_parse_hash
ikepsk_sha1_parse_hash
2018-07-04 12:58:30 +02:00
jsteube
afd5fa760c
The following parser functions have been rewritten to make use of
...
input_tokenizer():
androidpin_parse_hash
chap_parse_hash
lotus5_parse_hash
lotus6_parse_hash
radmin2_parse_hash
gost2012sbog_256_parse_hash
gost2012sbog_512_parse_hash
2018-07-03 10:23:04 +02:00
jsteube
8b2478d744
The following parser functions have been rewritten to make use of input_tokenizer():
...
sha256crypt_parse_hash
sha512crypt_parse_hash
keccak_parse_hash
blake2b_parse_hash
juniper_parse_hash
oracleh_parse_hash
gost_parse_hash
2018-07-02 09:20:15 +02:00
jsteube
87be2e8cce
The following parser functions have been rewritten to make use of input_tokenizer():
...
sha224_parse_hash
sha256_parse_hash
sha256s_parse_hash
sha384_parse_hash
sha512_parse_hash
sha512s_parse_hash
ripemd160_parse_hash
whirlpool_parse_hash
hmacmd5_parse_hash
hmacsha1_parse_hash
hmacsha256_parse_hash
hmacsha512_parse_hash
mysql323_parse_hash
2018-07-01 10:49:30 +02:00
jsteube
c6eb269784
The following parser functions have been rewritten to make use of input_tokenizer():
...
mssql2000_parse_hash
mssql2005_parse_hash
mssql2012_parse_hash
oracles_parse_hash
episerver4_parse_hash
sha512b64s_parse_hash
hmailserver_parse_hash
phps_parse_hash
mediawiki_b_parse_hash
peoplesoft_parse_hash
skype_parse_hash
djangosha1_parse_hash
redmine_parse_hash
punbb_parse_hash
sha256b64s_parse_hash
atlassian_parse_hash
2018-07-01 09:49:33 +02:00
jsteube
06a34bd026
Convert sha1b64s_parse_hash() to make use of input_tokenizer()
2018-06-30 10:51:21 +02:00
jsteube
384fe1ba15
Add support for multiple valid signatures in input_tokenizer()
2018-06-30 10:39:28 +02:00
jsteube
5728933cd2
Convert sha1b64_parse_hash() to make use of input_tokenizer()
2018-06-30 10:25:10 +02:00
jsteube
d36e70b598
Convert pstoken_parse_hash() to make use of input_tokenizer()
2018-06-30 10:13:26 +02:00
jsteube
3caee75913
Remove some unused enums
2018-06-30 10:03:54 +02:00
jsteube
4991bb85d2
Remove the following obsolete functions and replace them with input_tokenizer():
...
dcc_parse_hash
ipb2_parse_hash
sha1sha1_parse_hash
smf_parse_hash
vb3_parse_hash
2018-06-29 20:31:52 +02:00
jsteube
10556b6324
The following parser functions have been rewritten to make use of
...
input_tokenizer():
descrypt_parse_hash()
md5pix_parse_hash()
md5asa_parse_hash()
netntlmv1_parse_hash()
netntlmv2_parse_hash()
joomla_parse_hash()
2018-06-28 14:24:52 +02:00
jsteube
9196f1ba55
Added rounds_count_length() function to detect optional rounds=
...
substring in *crypt hashes
The following parser functions have been rewritten to make use of
input_tokenizer():
phpass_parse_hash()
md5crypt_parse_hash()
md5apr1_parse_hash()
episerver_parse_hash()
2018-06-27 11:12:35 +02:00
jsteube
f574cbc88a
the following parser functions have been rewritten to make use of
...
input_tokenizer()
dcc2_parse_hash()
dpapimk_parse_hash()
2018-06-26 12:32:58 +02:00
jsteube
a2d99c5ac6
Rewrite several *_parse_hash() functions to use parse_and_store_generic_salt()
2018-06-25 16:30:40 +02:00
jsteube
50824a24c6
Rewrite parse_and_store_salt from scratch and rename original to parse_and_store_salt_legacy() for migration phase
...
Rewrite several *_parse_hash() functions to use parse_and_store_generic_salt()
2018-06-25 11:36:09 +02:00
jsteube
5f83dd8620
Convert cisco4_parse_hash() to make use of input_tokenizer()
...
Convert lm_parse_hash() to make use of input_tokenizer()
2018-06-24 14:04:05 +02:00
jsteube
2abe8caf24
Convert bcrypt_parse_hash() to make use of input_tokenizer()
...
Add more code to input_tokenizer()
2018-06-23 22:32:49 +02:00
jsteube
26dea37c9d
TEST CODE: tokenizer function in order to simplify parsing functions
2018-06-23 16:00:49 +02:00
jsteube
c28fdf7f44
Added hash-mode 16700 = FileVault 2
2018-06-18 14:38:35 +02:00
jsteube
547025ec47
HCCAPX management: Use advanced hints in message_pair stored by hcxtools about endian bitness of replay counter
...
Fixed missing code section in -m 2500 and -m 2501 to crack corrupted handshakes with a LE endian bitness base
2018-06-15 17:00:41 +02:00
jsteube
b88c956d97
Rule Engine: Add JtR compatible support for hex notations in rule engine
2018-06-14 15:08:00 +02:00
jsteube
469fece141
OpenCL Kernels: Abort session if kernel self-test failed
2018-06-13 12:22:54 +02:00