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
a4200ba167
Added hash-mode 18300 (Apple File System)
...
Fixes https://github.com/hashcat/hashcat/issues/1686
2018-11-12 11:37:01 +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
3eab677bdf
Move the system include where it belongs to
2018-11-04 14:26:19 +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
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
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
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
Michael Sprecher
1892b842d7
Increased the maximum size of edata2 in Kerberos 5 TGS-REP etype 23
2018-09-12 12:25:02 +02:00
Michael Sprecher
5536ab9917
Getting rid of OPTS_TYPE_HASH_COPY for Ansible Vault
2018-08-15 23:32:58 +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
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
philsmd
2e1845ec11
fixes #1624 : increase esalt/nonce buffer to 1024 for -m 11400 = SIP
2018-07-23 15:51:39 +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
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
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
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
Mathieu Geli
4dbc1f4a87
Implement 7701/7801 SAP CODVN half-hashes
2018-03-06 16:42:53 +03:00
jsteube
c4f30220a0
OpenCL Kernels: Refactored kernel thread management from native to maximum per kernel
2018-02-11 21:29:57 +01:00
jsteube
ce8f445ebe
Fix a few warnings and divide by zero (speed_pos)
2018-02-11 14:25:55 +01:00
jsteube
05a01d3843
fix some datatypes
2018-02-08 19:13:29 +01:00
jsteube
553668bb9f
Added hash-mode 16600 = Electrum Wallet (Salt-Type 1-3)
2018-01-25 15:28:21 +01:00
jsteube
7a8239b4c1
Fixed the maximum password length check in password reassembling function
...
Fixes #1492
2018-01-22 18:59:46 +01:00
jsteube
ce0cee0ac4
Stick to original JWT format from jwt.io
2018-01-21 19:57:24 +01:00
jsteube
0796c074c3
Added -m 16500 Kernels
...
Also changed function declaration of parser function from const hashconfig_t to just hashconfig_t
2018-01-21 18:53:55 +01:00
jsteube
ee9ec0f9a7
Add JWT esalt datatype
2018-01-21 15:32:37 +01:00
Arseniy Sharoglazov
928cf471fb
The hash-mode for "CRAM-MD5 Dovecot" changed from 10201 to 16400
2018-01-17 11:25:21 +03:00
Arseniy Sharoglazov
798f05355f
added -m 10201 = CRAM-MD5 Dovecot
2018-01-15 15:52:52 +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
838a71637a
Remove fixed iteration count for apple secure notes
2017-12-17 23:29:02 +01:00
jsteube
d9c5c42966
Rename $SN$ signature to $ASN$ for apple secure notes
2017-12-13 12:36:01 +01:00
jsteube
0d89ddfcd9
Finish adding hash-mode 16200 = Apple Secure Notes
2017-12-13 12:32:38 +01:00
jsteube
5847067c96
First working -m 16100 kernel
2017-11-29 17:00:14 +01:00
Rosen Penev
353d3c3008
Fix a bunch of cast-qual warnings
2017-11-13 20:46:26 -08:00
jsteube
1b312d14fd
Added hash-mode 16000 = Tripcode
2017-11-11 14:44:56 +01:00
jsteube
980f04a7b6
Rename instances of OSX to MacOS
2017-10-20 11:58:31 +02:00
Fist0urs
e3cb3e9b4c
test.pl ready and 0 error. Ready for PR
2017-09-21 16:55:30 +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
4f72c8bee6
Add pure kernels for SIP digest authentication (MD5)
2017-08-07 13:39:17 +02:00
jsteube
8f2cbb26de
Update some salt lengths in interface.h
2017-07-20 18:43:55 +02:00
jsteube
03bb234045
Preparation for WPA/WPA2 AES-CMAC: works till PMK
2017-07-20 12:46:18 +02:00
jsteube
f80d91aa94
Allow the skype parser to accept usernames of length SALT_MAX
2017-07-19 22:14:48 +02:00
jsteube
f87ac21065
Some small corrections on salt length for MD5-ASA
2017-07-17 20:25:08 +02:00
jsteube
6c932e7ba1
Remove some unused macros
2017-07-14 17:35:53 +02:00
jsteube
f70da8a04c
Increase salt length for salt of generic hash types
...
Remove --hex-salt support for non-generic hash types
2017-07-13 11:03:57 +02:00
jsteube
af46a1560b
Vectorized Blockchain, My Wallet and added support for long passwords
2017-07-07 23:32:41 +02:00
jsteube
d3e6ae42f0
Added long passwords support for 7-Zip
2017-07-07 16:48:18 +02:00
jsteube
819b53eb1d
Added long passwords support for sha256crypt $, SHA256 (Unix)
2017-07-05 13:43:14 +02:00
jsteube
907b065e00
Vectorized TrueCrypt PBKDF2-HMAC-SHA512 and added support for long passwords
2017-07-04 12:19:40 +02:00
jsteube
fc100a852b
Added hash-mode 2501 = WPA/WPA2 PMK
...
Fixes https://github.com/hashcat/hashcat/issues/1287
Limited hash-mode 2500 to max length 63
Fixes https://github.com/hashcat/hashcat/issues/1286
2017-07-03 16:11:57 +02:00
jsteube
b9b2112b64
Add pure kernel for -m 1800
2017-07-02 23:27:54 +02:00
jsteube
ad242c2f12
Working example of generic salt up to length 256 for mode 2100
2017-06-20 17:17:13 +02:00
jsteube
94a35ae50a
Add support for hooks in selftest function
2017-06-14 12:07:33 +02:00
Jens Steube
08fc0ec1fb
Added self-test funcionality for OpenCL kernels on startup
...
Fixed a parser error for mode -m 9820 = MS Office <= 2003 $3, SHA1 + RC4, collider #2
2017-06-13 19:07:08 +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
2a1fe6962d
Move blake2_t and chacha20_t to interface.h
2017-06-04 21:21:18 +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
Jens Steube
f2ad095191
Merge pull request #1237 from DoZ10/master
...
New algorithm: Chacha20
2017-05-18 13:51:47 +02:00
philsmd
af3619f3c5
-m 11600 = 7zip: do not allow truncated hashes anymore, but increase supported data length to ~320KB
2017-05-17 15:07:16 +02:00
philsmd
1f93d2060f
fixes #1239 : remove AES padding attack for 7zip since we can't guarantee that the padding is always zero
2017-05-17 13:53:55 +02:00
DoZ10
5683df2e17
Fixed conflicts
2017-05-16 20:36:55 -04:00