Commit Graph

1853 Commits (3c603019c32afee0480ef27b221b5189a14e8345)

Author SHA1 Message Date
jsteube 9a70655f34 No more need for rcon[] in AES
5 years ago
jsteube 7cb510f1ce More manually unrolled cipher code
5 years ago
jsteube a063e9ef62 Remove automatic unrolling on some ciphers and replace with manually unrolled code
5 years ago
jsteube 70d1343d57 Fix variables s_Ch and s_Cl in whirlpool hashes in non REAL_SHM mode
5 years ago
jsteube 970e5f3518 Fix -m 6100 in optimized mode for use with REAL_SHM
5 years ago
jsteube 218322f630 Support for inline VeraCrypt PIM Brute-Force
5 years ago
Fist0urs afb010870a Add hash modes 19600 (krb5tgs enctype 17) and 19700 (krb5tgs enctype 18)
5 years ago
jsteube 26d7602bbd No longer need reqd_work_group_size() in OpenCL kernels since modules taken care of this using threads_min and threads_max
5 years ago
jsteube 85452e12be Fix inc_cipher_des.cl for vector use
5 years ago
jsteube 84d6b8ecc1 Add function prototypes in OpenCL kernels to make some compilers happy
5 years ago
jsteube ce32d57f9b Make use of inc_cipher_des.cl in -m 3100
5 years ago
jsteube 27610008cb Testwise disable aligned constants
5 years ago
jsteube aeb570ca8b Add inc_cipher_des.cl and make use of SHM_TYPE
5 years ago
jsteube 8c47a947a1 Fix some includes in -m 14600
5 years ago
Jens Steube bc8ffadccc Remove more occurances of netntlm_t in Whirlpool kernel
5 years ago
Jens Steube 07b8cafcad Fix datatypes in -m 14600
5 years ago
Jens Steube d64529ed47 Fix kernel header in -m 14900
5 years ago
Jens Steube fda04609cd Fix datatypes in -m 14600
5 years ago
Jens Steube 898000b7aa Fix datatypes in -m 12400
5 years ago
Jens Steube 09b8bfc3a5 Fix datatypes in -m 10700
5 years ago
Jens Steube 7932d8c91f Fix datatypes in -m 64xx and -m 137xx
5 years ago
Jens Steube 34850df1c0 Fix datatypes in -m 2501 and -m 16801
5 years ago
Jens Steube 74abff44d9 Move remaining module specific typedefs and structures from inc_types.cl to kernels
5 years ago
Jens Steube 30681e5151 Move remaining module specific typedefs and structures from inc_types.cl to kernels
5 years ago
Jens Steube 4bce25dd9d Move remaining module specific typedefs and structures from inc_types.cl to kernels
5 years ago
Jens Steube cace799187 Move more no unrolling exceptions from inc_vendor.cl to specific modules
5 years ago
Sein Coray ee97d18af9
Added hash mode 19500
5 years ago
Sein Coray deacf3a2b9
fix constant name for sha224
5 years ago
jsteube eb07d2108c Fixed cracking of NetNTLMv1 passwords in mask-attack mode if mask > length 16 (optimized kernels only)
5 years ago
jsteube 8d6a69b2a9 Fix salt array for -m 19300 in -a 3 mode if SIMD is used
5 years ago
jsteube a9bafb7edb Add more valid plaintext pattern for -m 12700/15200
5 years ago
jsteube dc9279c95c New Strategy: Instead of using volatile, mark the mode as unstable. Remove all volatiles
5 years ago
jsteube 7c1120b784 Migrate unroll handling for -m 15900 from OpenCL/inc_vendor.cl to module_jit_build_options()
5 years ago
jsteube ed7765d8fd Manually unroll aes128_InvertKey and aes256_InvertKey to workaround some JiT compiler errors
5 years ago
jsteube 0fce6b663b Testwise remove all hardcoded volatiles from cipher includes
5 years ago
jsteube 1714382daa Migrate unroll handling for -m 14100 from OpenCL/inc_vendor.cl to module_jit_build_options()
5 years ago
jsteube b0a83b28d1 Migrate unroll handling for -m 12300 from OpenCL/inc_vendor.cl to module_jit_build_options()
5 years ago
jsteube 1937b67595 Migrate unroll handling for -m 8200 from OpenCL/inc_vendor.cl to module_jit_build_options()
5 years ago
jsteube fee37ac4c3 Migrate unroll handling for -m 8000 from OpenCL/inc_vendor.cl to module_jit_build_options()
5 years ago
jsteube f92ebc6586 Fix -m 15200 and -m 12700 search string in kernel
6 years ago
jsteube 0b1169e523 My Wallet: Added additional plaintext pattern used in newer versions
6 years ago
jsteube 93760dab34 Fix -m 8100 in pure kernel mode for password length 256
6 years ago
jsteube 88a051629c Support module specific JiT compiler build options
6 years ago
jsteube a5743c5572 Fix invalid kernel declaration in optimized Whirlpool kernel
6 years ago
jsteube 4359418918 OpenCL Runtime: Not using amd_bytealign (amd_bitalign is fine) on AMDGPU driver drastically reduces JiT segfaults
6 years ago
jsteube e1fe3e755b Optimize some switch_buffer_* functions for generic OpenCL devices (CPU, various OSX, ...)
6 years ago
jsteube 23917455ef Added hash-mode 19300 sha1(..)
6 years ago
jsteube 87c24200da Added QNX /etc/shadow hash cracking support
6 years ago
jsteube 5da1e4b872 Fixed maximum password length limit which was announced as 256 but actually was 255
6 years ago
jsteube b1a056f1b0 Add hc_lop_0x96 as template for eventual later use
6 years ago
jsteube 540b405e3a Replace IS_ROCM with HAS_VPERM and HAS_VADD3
6 years ago
jsteube 2c0c82c8af OpenCL Runtime: Workaround JiT compiler error on AMDGPU driver compiling WPA-EAPOL-PBKDF2 OpenCL kernel
6 years ago
jsteube 69c3ea2d27 Fixed invalid transfer from __constant to __local memory in -m 9100
6 years ago
jsteube be365acef8 Remove some optimization in -m 18700 which ROCM doesn't like
6 years ago
jsteube d0d4ce9f8c Added hash-mode 18800 Blockchain, My Wallet, Second Password (SHA256)
6 years ago
jsteube 684256022e Small fix for -m 18900
6 years ago
jsteube 29fedf2c41 Added hash-mode 18900 Android Backup
6 years ago
jsteube 3dd0a7140d Respect combs_mode in -a 1/6/7 attack in -m 18700
6 years ago
jsteube a0fba5fb11 Improve -m 18700 cracking speed
6 years ago
jsteube b4d52e412b Rename -m 18700 to Java Object hashCode()
6 years ago
jsteube 51eb9ebff7 Added hash-mode 18700 DJB 32
6 years ago
jsteube 9fc193ce47 Bitcoin Wallet: Be more user friendly by allowing a larger data range for ckey and public_key
6 years ago
jsteube 63fac132e3 Fix cracking streebog 256/512 hmac cracking with password length > 64
6 years ago
jsteube f4e43da456 Fix whirlpool final() handling
6 years ago
jsteube 158b93832c Fixed cracking of Cisco-PIX and Cisco-ASA MD5 passwords in mask-attack mode if mask > length 16
6 years ago
jsteube dd293f7a93 Fixed -m 600 in -a 3 mode for passwords > 16
6 years ago
jsteube e571b890e9 Fixed length check for raw PBKDF2 modules
6 years ago
jsteube c16a3feabc Add -m 16500 module
6 years ago
jsteube 57da64533c Add missing kernel in -m 1100 -a 3 -O mode
6 years ago
jsteube 3d203af066 Add module for -m 5700 and -m 5800
6 years ago
jsteube 0bd244c051 Undef some macros to avoid collisions
6 years ago
jsteube c88a837196 Rename d_scryptVX_buf to d_extraX_buf
6 years ago
R. Yushaev 393916c0bf Allow cracking non-unique salts for Office 2013
6 years ago
R. Yushaev b5a7e967c1 Add support for Open Document Format 1.1
6 years ago
Sein Coray a70a0513bf
Added hash mode 18500 sha1(md5(md5($pass)))
6 years ago
Jens Steube 15ece0902f
Merge pull request #1804 from Naufragous/odf-cracking
6 years ago
Jens Steube 9d213147e8
Merge pull request #1805 from mcovalt/electrum_salt_type_2
6 years ago
R. Yushaev 6a5b0c821e Add support for Open Document Format 1.2
6 years ago
Matt Covalt bb9328f48b Add salt type 2 support for optimized functions
6 years ago
Matt Covalt a913db6390 Add salt type 2 support for pure functions
6 years ago
Matt Covalt 36bdcf844a Add function to check if vector represents a Base58 string
6 years ago
Sein Coray c941e55a35
Extended IKE PSK md5/sha1 (-m 5300/5400) to print hashes correctly
6 years ago
R. Yushaev 5efebb7b48 Cleanup VeraCrypt related code
6 years ago
R. Yushaev baf47d409e Add Camellia support for VeraCrypt kernels
6 years ago
Jens Steube 65abccc93e Migrate inc_truecrypt_keyboard.cl into inc_common.cl
6 years ago
Jens Steube fca4f7e8a6 Prepare to use --keyboard-layout-mapping for algorithms other than TC/VC
6 years ago
Jens Steube ee2854ec2a Support multi-byte characters for TC/VC keyboard layout mapping tables
6 years ago
R. Yushaev 8b04be0e93 Add Kuznyechik support for VeraCrypt kernels
6 years ago
Jens Steube c15f741dca Fixed out-of-boundary read in DPAPI masterkey file v2 OpenCL kernel
6 years ago
Jens Steube e117e750fc Add restrict keyword to kernel declarations to help the compiler with caching optimizations
6 years ago
Jens Steube 64dfd40113 Give the compiler a hint for automatic optimizations based on password length
6 years ago
Jens Steube 53c8600089 Give the compiler a hint for automatic optimizations based on password length
6 years ago
Jens Steube 0e428b3c40 Give the compiler a hint for automatic optimizations based on password length
6 years ago
Jens Steube c9da60c73a Fixed thread count maximum for pure kernels in straight attack mode
6 years ago
Jens Steube 2a6444c05a Give the compiler a hint for automatic optimizations based on password length
6 years ago
Jens Steube ae577410d0 OpenCL Device: Do a real query on OpenCL local memory type instead of just assuming it
6 years ago
jsteube 240f6298be Fix some leftovers from switching kernel parameters to macros
6 years ago
jsteube eec1fba4c3 Fix some leftovers from switching kernel parameters to macros
6 years ago
jsteube a930c5c24e Do not use KERN_ATTR_VECTOR() if there is no SIMD
6 years ago
jsteube c672182b44 Fix some leftovers from switching kernel parameters to macros
6 years ago
R. Yushaev fbbe5f6282 Use macros in remaining kernel functions
6 years ago
Jens Steube 6d39fb1feb Make all kernel parameter macro helper a function
6 years ago
R. Yushaev 5de004103a Replace kernel parameter lists with macros
6 years ago
R. Yushaev 31dc7a3453 Add macros for kernel function declarations
6 years ago
R. Yushaev b80ada1d65 Unify esalt_bufs parameter declarations
6 years ago
R. Yushaev 3f0a3ef3f7 Unify kernel function parameter names
6 years ago
Jens Steube 49fc7d45b7 - Keymaps: Added hashcat keyboard mapping us.hckmap (can be used as template)
6 years ago
Jens Steube 5d5ac1c935 Prepare for on-the-fly keyboard layout substituations required to crack booting TrueCrypt/VeraCrypt volumes
6 years ago
Jens Steube a4200ba167 Added hash-mode 18300 (Apple File System)
6 years ago
R. Yushaev 47bd838e25 Add VeraCrypt Streebog support
6 years ago
Royce Williams 6053f473eb trailing whitespace
6 years ago
R. Yushaev a8eb611b1c Add HMAC-Streebog-512 (pure kernels)
6 years ago
Arseniy Sharoglazov ee873da300 Added hash-modes 18200 (Kerberos 5 AS-REP etype 23)
6 years ago
R. Yushaev 224315dd62 Add pure kernels and tests for Streebog hashes
6 years ago
Jens Steube 5eca3f5316 Fix kernel names in -a 1 kernels of -m 7701 and 7801
6 years ago
Jens Steube 48cf3f722b
Merge pull request #1725 from unix-ninja/master
6 years ago
unix-ninja 6196e23069 Cleanup unused register definitions
6 years ago
Jens Steube e2a9409413
Merge pull request #1710 from unix-ninja/master
6 years ago
unix-ninja 8c5c225d8f Optimize performance on NVIDIA GTX
6 years ago
Jens Steube b0077860c7 Workaround some padding issues with host compiler and OpenCL JiT on 32 and 64 bit systems
6 years ago
Jens Steube a4ac370496 Test fix for plain_t in 32 bit mode
6 years ago
Jens Steube 6d03da369b Fix gid datatype in mark_hash()
6 years ago
unix-ninja fddfd835d2 Support 64 bit timestamps properly
6 years ago
unix-ninja 7904b9ae05 Fix kernel types to align with style guide
6 years ago
Jens Steube 0a74f058ac Synchronize salt_t datatypes in types.h and inc_types.cl
6 years ago
unix-ninja 0e5704c77e Disable NEW_SIMD_CODE for 18100 (it's not compatible)
6 years ago
unix-ninja b657c75583 Explicity cast otp_offset
6 years ago
unix-ninja 3869ce9246 More coding style fixes
6 years ago
unix-ninja 24ab7cae2a Add a1 kernel for mode 18100
6 years ago
unix-ninja db4ec8ed2c Fix formatting to comply with hashcat coding guidelines
6 years ago
unix-ninja 1d43540fc4 Simplify alignment masks for mode 18100
6 years ago
unix-ninja b29b7b8188 Convert arithmetic ops to logical ops in byte alignment
6 years ago
unix-ninja 3c3b05d1e5 Resolve conflicts
6 years ago
unix-ninja 6cda8f7077 Change TOTP index from 17300 to 18100
6 years ago
unix-ninja 73aae1a734 Add a0 kernel for TOTP
6 years ago
unix-ninja 2249ab4c13 Cleanup debug code
6 years ago
unix-ninja 977b560bb4 Add support for TOTP (RFC 6238)
6 years ago
R. Yushaev 5c87720acc Add SHA3 and Keccak
6 years ago
Michael Sprecher 1892b842d7
Increased the maximum size of edata2 in Kerberos 5 TGS-REP etype 23
6 years ago
jsteube 6e1aec0563 Fix kernel name in 16801 kernel source
6 years ago
Jens Steube 466ea8eaba Fixed detection of unique ESSID in WPA-PMKID-* parser
6 years ago
Michael Sprecher 5536ab9917
Getting rid of OPTS_TYPE_HASH_COPY for Ansible Vault
6 years ago
jsteube a5746548e8 Allow use of hash-mode 7900, 10700 and 13731 on AMD devices after workaround
6 years ago
jsteube 6469357c74 Remove SCR_TYPE macro from OpenCL code
6 years ago
jsteube 68bff94980 Workaround rocm OpenCL runtime bug when copy data from constant to local memory
6 years ago
jsteube 188a9568ce Replace double MAYBE_VOLATILE
6 years ago
jsteube dad05d9f69 Testing: Workaround some AMD OpenCL runtime segmentation faults
6 years ago
jsteube 103fdf04a1 Fixed a invalid scalar datatype return value in hc_bytealign() where it should be a vector datatype return value
6 years ago
Jens Steube 1c280e4a6e Small performance boost for bcrypt on CPU
6 years ago
Michael Sprecher 3a321c8dce
Added hash-mode 16900 = Ansible Vault
6 years ago
jsteube fbf434146d Add set_mark_1x4() and set_mark_1x4_S()
6 years ago
Jens Steube 14c444fd47 Replace c_append_helper_mini[] table with on-the-fly calculation in order to workaround compiler bugs in AMD OpenCL runtime
6 years ago
jsteube 88ebca40b8 Added hash-mode 16800 = WPA-PMKID-PBKDF2
6 years ago
philsmd 2e1845ec11
fixes #1624: increase esalt/nonce buffer to 1024 for -m 11400 = SIP
6 years ago
Jens Steube a43d3ad176 Rename some hashcat specific OpenCL functions to avoid conflicts with existing OpenCL functions from OpenCL runtime
6 years ago
Jens Steube 02a2495349 Switched array pointer types in function declarations in order to be compatible with OpenCL 2.0
6 years ago
Jens Steube 0ab7ab9cec OpenCL kernels: Removed the use of 'volatile' in inline assembly instructions where it is not needed
6 years ago
jsteube c1622d6593 Fixed detection of AMD_GCN version in case the rocm driver is used
6 years ago
jsteube 81a447b167 Fixed a function declaration attribute in -m 8900 kernel leading to unuseable -m 9300 which shares kernel code with -m 8900
6 years ago
jsteube 32d6b3e10e OpenCL kernels: Add '-pure' prefix to kernel filenames to avoid problems caused by reusing existing hashcat installation folder
6 years ago
jsteube 547025ec47 HCCAPX management: Use advanced hints in message_pair stored by hcxtools about endian bitness of replay counter
6 years ago
Mathieu Geli 4dbc1f4a87 Implement 7701/7801 SAP CODVN half-hashes
7 years ago
jsteube 8079abffb0 Fixed a missing kernel in -m 5600 in combination with -a 3 and -O if mask is >= 16 characters
7 years ago
Jens Steube a71c69983d Make words_buf_r in DES bitsliced kernels __constant
7 years ago
jsteube ca1115a1ee No longer need to use 32 threads on second dimension for bitsliced algorithms
7 years ago
Jens Steube ad50883080 Allow unroll for DES based algorithms but not bitsliced versions
7 years ago
Jens Steube e79feb0b6f Add more reqd_work_group_size attributes to kernels
7 years ago
Jens Steube ea2f158cf8 Give JiT a hint about bcrypt running at 8 threads always
7 years ago
Jens Steube 81b229c08a Make new c_append_helper a bit more AMD friendly
7 years ago
jsteube 3a23b275e5 Improved c_append_helper[] handling
7 years ago
jsteube 64eb9ca9ef Fix md5crypt speed on GTX1080
7 years ago
Jens Steube aa82d8d34d Re-enable CPU optimizations and some CPU case in thread management
7 years ago
Jens Steube 483ae613ee Copy/paste error in optimized -m 2500 AUX 3 kernel
7 years ago
Jens Steube a15c165773 Revert the pos == 0 change due to some unexpected results on nvidia
7 years ago
jsteube 874635cc49 Do not use a vector function to write into a scalar variable even if vectorize support is disabled
7 years ago
jsteube 71adf1bd09 Do not use a vector function to write into a scalar variable even if vectorize support is disabled
7 years ago
jsteube f596d076aa Optimize some WPA comparison kernel
7 years ago
Jens Steube e0e796bc2d More optimized -m 500, -m 1600 and -m 6300 pure kernel
7 years ago
Jens Steube 97f569a8ca More optimized -m 500, -m 1600 and -m 6300 pure kernel
7 years ago
Jens Steube f6f16f56af A bit optimized -m 500 pure kernel
7 years ago
jsteube b626e7f61b Optimize update functions in inc_hash_* helper files by testing for pos == 0
7 years ago
Jens Steube ec63c2f017 switch_buffer_* function can return sooner if offset is zero
7 years ago
Jens Steube 2dddef839c Fix sha1_update_64 debugging comment
7 years ago
Jens Steube 2a19f19904 Drop -m 6800 from no-unroll list in inc_vendor.cl
7 years ago
jsteube dfb95024bc Fix temporary datatype in wpapmk kernels
7 years ago
jsteube fe4413797e OpenCL Kernels: Use three separate comparison kernels (depending on keyver) for WPA instead of one
7 years ago
jsteube 00bd356ade Synchronize m01000s with m00900s
7 years ago
jsteube aa65ed28e5 Switch back c_append_helper to static
7 years ago
Jens Steube d656e9c3a4 OpenCL Kernels: Use the kernel local buffer size as additional reference in order to limit the thread-count
7 years ago
jsteube 5951207365 Get rid of some old volatiles
7 years ago
jsteube 05a01d3843 fix some datatypes
7 years ago
jsteube d5153539e2 Some syntax error
7 years ago
jsteube 786384664e DECLSPEC for CPU
7 years ago
jsteube 4cbd0eb812 Fix missing compressor kernel in --stdout mode
7 years ago
jsteube 512fb5f6fb No inline keyword for rules
7 years ago
jsteube e4e1c1d515 We can't mix inline functions with static constants
7 years ago
Jens Steube 8273bb8376 NV JiT doesn't like static inline keywords
7 years ago
jsteube 3e08750900 OpenCL Kernels: Add general function declaration keyword (static inline)
7 years ago
jsteube 5391edca0d Weird macOS JiT likes this more
7 years ago
jsteube a3a16f676f OpenCL Kernels: Add a decompressing kernel and a compressing host code in order to reduce PCIe transfer time
7 years ago