From fe847bd5697306796dbefd5e02f05c77b67c0365 Mon Sep 17 00:00:00 2001 From: Jens Steube Date: Thu, 6 May 2021 11:04:14 +0200 Subject: [PATCH] Update docs/changes.txt missing entries --- docs/changes.txt | 48 +++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 41 insertions(+), 7 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index 5a37ca613..ab206b4a5 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -10,6 +10,7 @@ - Added hash-mode: BestCrypt v3 Volume Encryption - Added hash-mode: Bitwarden - Added hash-mode: Dahua Authentication MD5 +- Added hash-mode: KNX IP Secure - Device Authentication Code - Added hash-mode: MongoDB ServerKey SCRAM-SHA-1 - Added hash-mode: MongoDB ServerKey SCRAM-SHA-256 - Added hash-mode: Mozilla key3.db @@ -34,10 +35,10 @@ ## Features ## -- Added command prompt [f]inish to tell hashcat to quit after finishing the current attack +- Added new attack-mode: Association Attack (aka "Context Attack") to attack hashes from a hashlist with associated "hints" - Added support for true UTF-8 to UTF-16 conversion in kernel crypto library - Added option --hash-info to show generic information for each hash-mode -- Removed option --example-hashes, now an alias of --hash-info +- Added command prompt [f]inish to tell hashcat to quit after finishing the current attack ## ## Bugs @@ -47,18 +48,24 @@ - Fixed both false negative and false positive results in -m 3000 in -a 3 (affecting only NVIDIA GPU) - Fixed buffer overflow in -m 1800 in -O mode which is optimized to handle only password candidates up to length 15 - Fixed buffer overflow in -m 4710 in -P mode and only in single hash mode if salt length is larger than 32 bytes +- Fixed include guards in several header files - Fixed incorrect maximum password length support for -m 400 in optimized mode (reduced from 55 to 39) - Fixed internal access on module option attribute OPTS_TYPE_SUGGEST_KG with the result that it was unused - Fixed invalid handling of outfile folder entries for -m 22000 - Fixed memory leak causing problems in sessions with many iterations - for instance, --benchmark-all or large mask files +- Fixed memory leaks in several cases of errors with access to temporary files +- Fixed NVML initialization in WSL2 environments - Fixed out-of-boundary reads in cases where user activates -S for fast but pure hashes in -a 1 or -a 3 mode +- Fixed out-of-boundary reads in kernels using module_extra_buffer_size() if -n is set to 1 - Fixed password reassembling for cracked hashes on host for slow hashes in optimized mode that are longer than 32 characters - Fixed race condition in potfile check during removal of empty hashes - Fixed race condition resulting in out of memory error on startup if multiple hashcat instances are started at the same time - Fixed rare case of misalignment of the status prompt when other user warnings are shown in the hashcat output -- Fixed too-early execution of some module functions that use non-final values opts_type and opti_type - Fixed search of tuning database - if a device was not assigned an alias, it couldn't be found in general +- Fixed test on gzip header in wordlists and hashlists +- Fixed too-early execution of some module functions that use non-final values opts_type and opti_type - Fixed unexpected non-unique salts in multi-hash cracking in Bitcoin/Litecoin wallet.dat module which led to false negatives +- Fixed unit test for -m 3000 by preventing it to generate zero hashes - Fixed vector datatype support in -m 21100 only -P mode and only -a 3 mode were affected ## @@ -66,28 +73,55 @@ ## - Apple Keychain: Notify the user about the risk of collisions / false positives -- CUDA Backend: Give detailed warning if either the NVIDIA CUDA or the NVIDIA RTC library cannot be initialized - CUDA Backend: Do not warn about missing CUDA SDK installation if --backend-ignore-cuda is used +- CUDA Backend: Give detailed warning if either the NVIDIA CUDA or the NVIDIA RTC library cannot be initialized - CUDA Backend: Use blocking events to avoid 100% CPU core usage (per GPU) - OpenCL Runtime: Workaround JiT compiler deadlock on NVIDIA driver >= 465.89 - RAR3 Kernels: Improved loop code, improving performance by 23% -- Startup time: Improved startup time by avoiding some time-intensive operations for skipped devices +- Scrypt Kernels: Added a number of GPU specific optimizations per hash modes to hashcat.hctune +- Scrypt Kernels: Added detailed documentation on device specific tunings in hashcat.hctune +- Scrypt Kernels: Optimized Salsa code portion by reducing register copies and removed unnecessary byte swaps - Scrypt Kernels: Reduced kernel wait times by making it a true split kernel where iteration count = N value +- Scrypt Kernels: Refactored workload configuration strategy based on available resources +- Startup time: Improved startup time by avoiding some time-intensive operations for skipped devices ## ## Technical ## +- Bcrypt: Make BCRYPT entry for CPU in hashcat.hctune after switch to OPTS_TYPE_MP_MULTI_DISABLE (basically set -n to 1) +- Benchmark: Update benchmark_deep.pl with new hash modes added (also new hash modes which were added with v6.1.0) +- Building: Declare phony targets in Makefile to avoid conflicts of a target name with a file of the same name +- Building: Fixed build warnings on macOS for unrar sources +- Building: Fixed test for DARWIN_VERSION in Makefile +- Commandline Options: Removed option --example-hashes, now an alias of --hash-info +- Compute API: Skipping devices instead of stop if error occured in initialization - Documentation: Added 3rd party licenses to docs/license_libs -- Module Structure: Add 3rd party library hook management functions. This also requires an update to all existing module_init() - Hash-Mode 11600 (7-Zip): Improved memory handling (alloc and free) for the hook function - Hash-Mode 13200 (AxCrypt): Changed the name to AxCrypt 1 to avoid confusion - Hash-Mode 13300 (AxCrypt in-memory SHA1): Changed the name to AxCrypt 1 in-memory SHA1 -- Kernel Crypto Library: Removed unnecessary utf16 conversion functions which would apply on HMAC data portion +- Hash-Mode 16300 (Ethereum Pre-Sale Wallet, PBKDF2-HMAC-SHA256): Use correct buffer size allocation for AES key +- Hash-Mode 20710 (sha256(sha256($pass).$salt)): Removed unused code and fixed module_constraints +- Hash-Mode 22000 (WPA-PBKDF2-PMKID+EAPOL): Support loading a hash from command line +- Hash-Mode 23300 (Apple iWork): Use correct buffer size allocation for AES key +- Hash Parser: Output support for machine-readable hash lines in --show and --left and in error messages - Kernel Development: Kernel cache is disabled automatically when hashcat is compiled with DEBUG=1 +- Kernel Functions: Added generic AES-GCM interface see OpenCL/inc_cipher_aes-gcm.h +- Kernel Functions: Refactored OpenCL/inc_ecc_secp256k1.cl many functions, add constants and documentation +- Kernel Functions: Refactored OpenCL/inc_ecc_secp256k1.cl to improve usage in external programs +- Kernel Functions: Wrap atomic functions with hc_ prefix. Custom kernels need to rename "atomic_inc()" to "hc_atomic_inc()" +- Kernel Parameters: Added new parameter 'salt_repeat' to improve large buffer management +- Module Parameters: Add OPTS_TYPE_MP_MULTI_DISABLE for use by plugin developers to prevent multiply -n with the MCU count +- Module Parameters: Add OPTS_TYPE_NATIVE_THREADS for use by plugin developers to enforce native thread count +- Module Structure: Add 3rd party library hook management functions. This also requires an update to all existing module_init() +- OpenCL Runtime: Add support for clUnloadPlatformCompiler() to release some resources after JiT compilation - OpenCL Runtime: Switched default OpenCL device type on macOS from GPU to CPU. Use -D 2 to enable GPU devices +- OpenCL Runtime: Update module_unstable_warnings() for all hash modes based on most recent versions of many OpenCL runtimes +- Unit tests: Added 'potthrough' (like passthrough, but hash:plain) to tools/test.pl - Unit tests: Added Python 3 support for all of the Python code in our test framework - Unit tests: Fixed the packaging of test (-p) feature +- Unit tests: Updated test.sh to show kernel type (pure or optimized) in output +- Unit tests: Use python3/pip3 instead of just python/pip in tools/install_modules.sh * changes v6.1.0 -> v6.1.1