Jens Steube
8d93b160c4
Combinator mode for slow hashes wasn't set since self-test functionality was added
7 years ago
jsteube
4174f06008
PoC using a length-independant MD4 hash processing in -m 2100
7 years ago
jsteube
a673aee037
Very hot commit, continue reading here:
...
This is a test commit using buffers large enough to handle both passwords and salts up to length 256.
It requires changes to the kernel code, which is not included in here.
It also requires some of the host code to be modified. Before we're going to modify kernel code to support the larger lengths I want to be
sure of:
1. Host code modification is ok (no overflows or underflows)
2. Passwords and Salts are printed correctly to status, outfile, show, left, etc.
3. Performance does not change (or only very minimal)
This is not a patch that supports actual cracking both passwords and salts up to length 256, but it can not fail anyway.
If if it does, there's no reason to continue to add support for both passwords and salts up to length 256.
7 years ago
jsteube
94a35ae50a
Add support for hooks in selftest function
7 years ago
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
7 years ago
Jens Steube
5be3840d9a
Add some hint for the user to a scrypt error message
7 years ago
Royce Williams
3fc185a66b
tidy changes.txt and name normalizations
7 years ago
Jens Steube
3d888b6b2d
it's possible to crack scrypt on GPU even with higher scrypt setting
...
the trick is to intentionally under-utilize the GPU warps
120H/s on my 4*1080: https://pastebin.com/z124G2cN
7 years ago
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
7 years ago
Jens Steube
ab2610d9df
Also add reduced startup time for GPU for scrypt
7 years ago
Jens Steube
872f2b4f8b
Improve scrypt cracking speed on CPU by 20%, preparation for Ethereum KDF
7 years ago
jsteube
b5f149476d
Trim OpenCL device name whitespaces
7 years ago
jsteube
318ba234f8
OpenCL Runtime: Updated AMDGPU-Pro driver version check, do warn if version 17.10 is detected which is known to be broken
8 years ago
Royce Williams
067372f5ce
more event_log_* standardization
8 years ago
jsteube
98cedd9422
Remove unused argument
8 years ago
Royce Williams
68ae2bc791
event_log_: length <80, end logs with '.', grammar
8 years ago
jsteube
368f8b39bc
Add function to distinguish between warning and advice messages
8 years ago
jsteube
2bc65c2c4d
A bit a different _comp kernel iteration for WPA which can have lots of handshakes
8 years ago
jsteube
33a043ec63
Refactored internal use of esalt from sync with number of salts to sync with number of digests
...
This enables a true N esalts per salt feature which is required for WPA/WPA2 handling
In case we need that for a future algorithm, just make sure to have a unique value in digest in hash parser.
Fixes https://github.com/hashcat/hashcat/issues/1158
8 years ago
jsteube
da93d216da
Update for scrypt patch
8 years ago
jsteube
b2684553f0
In scrypt we really need to get all memory we can get, thus we workaround the 1/4 limit by allocating 4 blocks but this can eventually be larger than the total maximum available memory
8 years ago
jsteube
6f33d799c2
Remove temporary 2gb limit testwise
8 years ago
jsteube
fea62b78dc
Fixed cracking of Plaintext (-m 99999) in case MD4 was used in a previous session
8 years ago
jsteube
708adbc54b
Fixed cracking of Plaintext (-m 99999) in case MD4 was used in a previous session
8 years ago
Rosen Penev
4ceb7a1afa
Prefer _WIN to _POSIX for defines.
...
Also miscellaneous fixes here and there.
8 years ago
jsteube
de186ceda5
Fix some typo
8 years ago
jsteube
d6b843901b
In case of multiline error message use only the first line as error and the description as warning
8 years ago
jsteube
aa5ed1ca89
OpenCL Runtime: Added a warning about using Mesa OpenCL runtime
8 years ago
jsteube
c3251cebd8
Hardware Management: Bring back kernel exec timeout detection for NVidia on user request
8 years ago
philsmd
056d1f3da4
minor: use 2 distinct return value to avoid dead code detections
8 years ago
philsmd
f535eb2bd0
always check the input for NULL before the strtok_r () calls
8 years ago
philsmd
a82f6fb77c
our usage of strtok_r () was not totally correct (but almost)
8 years ago
philsmd
f87c65d081
minor: check return value of hc_stat () and use fclose () in case of error
8 years ago
jsteube
906bcf52f9
CID 1402488 ( #1 of 1): Resource leak
8 years ago
jsteube
7f3d107129
Fixed pointer to local outside scope in case -j or -k is used
8 years ago
jsteube
cc223123e9
OpenCL Kernel: Refactored read_kernel_binary to load only a single kernel for a single device
8 years ago
jsteube
5a2e7f2a3a
CID 1402490 ( #1 of 1): Resource leak
8 years ago
jsteube
dcdafdbc08
CID 1402467 ( #1 of 1): Resource leak
8 years ago
jsteube
20ab1af2b3
OpenCL Kernel: Move kernel binary buffer from heap to stack memory
8 years ago
jsteube
302f528796
OpenCL Kernel: Move kernel binary buffer from heap to stack memory
8 years ago
philsmd
5594a6703c
mem problem in OpenCL device management: free () the platforms string
8 years ago
philsmd
f1900686f5
OpenCL kernel run: minor copy-paste error removed
8 years ago
philsmd
6ef802a148
OpenCL platforms/devices: Fixed several memory leaks when a platform/device could not be used/initialized
8 years ago
jsteube
8ebd5188eb
CID 1402518 ( #1 of 1): String not null terminated
8 years ago
jsteube
9c5cfd17ac
Added support for automatic merge of LM halfes when --show and --left is used
...
Fixes https://github.com/hashcat/hashcat/issues/1034
8 years ago
sgroat
113fe102f5
Cleanup zero-length printf format string warnings
8 years ago
Jens Steube
dec6307729
Merge pull request #1031 from neheb/master
...
Add NVML and NVAPI support to Cygwin. Disable file globbing.
8 years ago
Rosen Penev
ee0911c26e
Add NVML and NVAPI support to Cygwin
8 years ago
Jens Steube
9005b66626
Fixed clEnqueueNDRangeKernel(): CL_UNKNOWN_ERROR caused by an invalid work-item count during weak-hash-check
8 years ago
Rosen Penev
2a2bd0e2b1
Restore strerror as %m is unsupported by the BSDs
...
The BSDs just print m instead of the actual error message. Benefit
is not worth the cost.
8 years ago
jsteube
0309afc273
OpenCL Device: Do a check on available constant memory size and abort if it's less than 64kB
8 years ago
jsteube
34aac18faf
OpenCL Runtime: Updated AMDGPU-Pro driver version check, do warn if version 16.60 is detected which is known to be broken
8 years ago
jsteube
351a1f1ffc
Remove some old debugging
8 years ago
jsteube
17548d3ee8
Helper: Added functions to check existence, type, read- and write-permissions and rewrite sources to use them instead of stat()
8 years ago
Jens Steube
07c89833c9
Added hash-mode 14800 = iTunes Backup >= 10.0
8 years ago
philsmd
6fe0173a79
#965 : new hook function to support LZMA1/LZMA2 decompression for -m 11600 = 7-Zip
8 years ago
jsteube
8257883ec1
Added hash-mode 14600 = LUKS
8 years ago
Gabriele Gristina
b66d53bca1
Filter out OpenCL Intel Runtime broken check on Apple
8 years ago
jsteube
78d73e64fe
Workaround added for Intel OpenCL runtime: GPU support is broken, skip the device unless user forces to enable it
8 years ago
jsteube
33aeae6090
For CYGWIN prefer to use "opencl.dll" (installed by drivers) instead of optional "cygOpenCL-1.dll"
8 years ago
jsteube
45479978c4
Fix some warning messages
8 years ago
jsteube
89d0d99bdb
Shader Model version message is confusing users, rename it to CUDA version
8 years ago
jsteube
72af615e8b
WPA cracking: Reuse PBKDF2 intermediate keys if duplicate essid is detected
8 years ago
jsteube
e4ba40dd7e
OpenCL Runtime: Updated AMDGPU-Pro driver version check, do warn if version 16.50 is detected which is known to be broken
8 years ago
jsteube
72599fd109
Fixed kernel loops in leading to slower performance in --increment mode
8 years ago
jsteube
0d31ee3b53
Alternative --progress-only in case of multiple salts cracking
8 years ago
jsteube
367024da3f
Fix --progress-only in case of multiple salts cracking
8 years ago
jsteube
ec5610271a
New option --progress-only: Quickly provides ideal progress step size and time to process it per device based on the user hashes and selected options, then quit
8 years ago
Rosen Penev
5c0bd0a15f
Remove strerror in favor of thread safe %m
8 years ago
jsteube
cc1dca7a2b
Fixed double free (actually, double fclose()) in opencl.c
8 years ago
Rosen Penev
4d09cc10fd
Fix some formats and conversion errors
8 years ago
Rosen Penev
f5f17997b2
Fix cppcheck warnings
8 years ago
Rosen Penev
96783ed7a3
Fix compilation for native Cygwin
8 years ago
jsteube
f6e0f1494a
Add a warning using beignet driver
8 years ago
Gabriele Gristina
49b44da588
Request build log only if size > 1 (v2)
8 years ago
jsteube
e77c029dad
Fixed event_log_warning() format in debug builds
8 years ago
jsteube
ed149fdd52
More benchmark fixes
8 years ago
jsteube
a56aa30754
Fix reported speed for slow hashes which was broken somewhere between hashcat (v3.10-809-g7fe575e) to hashcat (v3.10-820-g899413f)
8 years ago
jsteube
ac8c4d946a
Fix benchmark of extreme slow hashes, updated changes.txt
8 years ago
jsteube
90b9d5c12c
Fix some potential resource leaks in case of an error
8 years ago
jsteube
ea4fd1de50
Remove complicated checks after memory allocation and in case of error print to stderr instead. This makes the memory allocation functions more natural to use.
8 years ago
jsteube
38514895b3
Rewrite some calls to clGetProgramInfo() to make scan-build happy
8 years ago
jsteube
6efe557cdc
Fix cached kernel checksum building on oversized device version or driver version strings
8 years ago
jsteube
0c55626689
Remove kernel exec timeout detection, should no longer occur due to autotune
8 years ago
jsteube
dc2689a996
Move skipped_temp check out of main loop
8 years ago
Gabriele Gristina
6af37ecc10
Prevent exit from benchmark mode if all devices are skipped (OSX)
8 years ago
Jens Steube
1321cbdcf8
Merge pull request #599 from neheb/master
...
Sign fixes
8 years ago
jsteube
105513e307
On OSX, unset device_param->skipped back to true in case skipped_temp is set to true
8 years ago
jsteube
72e39a7ec0
Try to use true and false in case we're handling a bool data-type just as kind of a hint it's a bool
8 years ago
Gabriele Gristina
28ec87aa2b
Skip unstable hash modes (OSX only)
8 years ago
jsteube
888fbdafe7
Using platform vendor name is better than using device vendor name when it comes whatever to use builtin amd_bytealign() or hand-written version because pocl uses its own platform vendor name but uses AMDs device vendor name
8 years ago
jsteube
d62d0d8a71
Fix some error messages
8 years ago
Rosen Penev
c13ef5aacd
Fix formats found by cppcheck
8 years ago
jsteube
c254138c21
Fix some code in opencl.c to make cppcheck happy
8 years ago
jsteube
536dcef7eb
Replaced all calls to strtok() with strtok_r() to ensure thread safety
8 years ago
jsteube
8645571a7c
Improve CPU detection on AMDGPU-Pro
8 years ago
Rosen Penev
22abb22c13
Fix a few printf formats
8 years ago
jsteube
01171a7b3b
Moved OpenCL requirement from v1.1 to v1.2
8 years ago
Gabriele Gristina
dff72bbfb3
Fix clang warning on OSX
8 years ago
jsteube
98b6371cd7
No more branch needed to check cracked after moving check for speed only above
8 years ago
jsteube
f178769863
Do not wait for the progress mutex to read and store speed timer
8 years ago
jsteube
a3190986d4
Added a missing error check after using run_kernel_bzero()
8 years ago
jsteube
bc26cae58c
Add some safety check for AMDGPU-Pro driver in combination with non-root user
8 years ago
Jens Steube
15100059fa
Fix Intel OpenCL runtime version check
8 years ago
jsteube
80a4f234f5
Update OpenCL runtime- and driver-requirements
...
Update changes.txt
8 years ago
jsteube
9eb9543cda
Basic sysfs support to read temp and read/write fan speed for amd-gpu-pro
8 years ago
jsteube
e63bc4d328
Query PCI-Express bus/device/function and store for later use
8 years ago
jsteube
42bcb8bdc8
Revert "Testwise commit, this could be a problem but never actually created a problem. Need to keep an eye on it"
...
This reverts commit 96e963b0d0
.
8 years ago
jsteube
96e963b0d0
Testwise commit, this could be a problem but never actually created a problem. Need to keep an eye on it
8 years ago
jsteube
93adde9d2f
* Wrap everything related to *stat() into own functions
...
* Testwise remove early includes to stdin for OSX, see if they are still required
8 years ago
jsteube
7eef713ff7
Fix compiler warnings caused by -Wshadow
8 years ago
Jens Steube
25bc960a09
Merge pull request #560 from matrix/fix_string_format
...
Fix string format
8 years ago
Gabriele Gristina
f500727bd8
Fix string format
8 years ago
Gabriele Gristina
6bf5ee95a6
Fix resource leak
8 years ago
jsteube
df8a9ab5e5
Support mixed kernel thread count for mixed kernels in the same source file
...
Get rid of one global kernel_threads variable
Recognize reqd_work_group_size() values from OpenCL kernels and use them in host if possible
Fix some white spaces
Remove unused weak* kernels
Rename hashconfig_enforce_kernel_threads() to hashconfig_get_kernel_threads() - we do not enforce anymore
Rename hashconfig_enforce_kernel_loops() to hashconfig_get_kernel_loops() - we do not enforce anymore
Add some missing checks for --quiet
8 years ago
jsteube
05634fe727
Do not run any caching rounds in autotune in DEBUG mode if -n and -u are specified
8 years ago
jsteube
636d953996
Move out all use of event_log_info() from library code to main.c or terminal.c
8 years ago
jsteube
e26b08f61f
Move opencl_info() to terminal.c
8 years ago
jsteube
001ba8a655
Replace some printf() in opencl.c with event_log_info()
8 years ago
jsteube
5906f1ab54
Fix some format string for 64 bit
8 years ago
jsteube
824654e2fb
Create opencl_ctx_devices_show() as an example for how to access opencl devices from library and as replacement for inlined code for -I
8 years ago
jsteube
e1010ffba1
Prepare library user access to OpenCL device information without running an attack
8 years ago
jsteube
2005f5d193
Remove terminal.h where's it's not needed
8 years ago
jsteube
df521d664b
Move restore_* variables into separate functions for later use in status.c
8 years ago
jsteube
b044271b01
Move more status display calculate logic into separate functions
8 years ago
jsteube
f8a6d156eb
Add some more returncode checks
8 years ago
jsteube
d2bcb19740
Fix some rc check
8 years ago
jsteube
7383bb14f5
Add some more returncode checks
8 years ago
jsteube
694de36694
Print warnings in yellow and errors in red
8 years ago
jsteube
91979bff69
Mark OpenCL devices as listing
8 years ago
jsteube
017555e257
Fix some log levels
8 years ago
jsteube
191269f4f0
Add --speed-only mode
8 years ago
jsteube
ef80e3f074
Some newline fixes
8 years ago
jsteube
8598a79732
Removed exit() from memory.c, resulting in all exit() calls removed from all code in the repository
8 years ago
jsteube
ebc26ecac5
Fix some log levels in opencl.c
8 years ago
jsteube
20832d29d6
Do not reset innerloop_left and outerloop_left too early so we can access it from status display
8 years ago
jsteube
af9de0a7b7
Fix some error string formats
8 years ago
jsteube
8fc4da795b
Replace fprintf(stderr, ...) on malloc.c with log_event_error()
8 years ago
jsteube
27bec8be13
Get rid of logging.c and most exit() calls replaced with return() for true library usage
8 years ago
jsteube
42677df2a6
Start context-related logging with goal to get rid of logging.c
8 years ago
jsteube
14248d38e3
Update tuning_db.c function parameters
8 years ago
jsteube
a5e83c27c3
Update wordlist.c function parameters
8 years ago
jsteube
a97e31881c
Update interface.c function parameters
8 years ago
jsteube
0579f93402
Update opencl.c and autotune.c function parameters
8 years ago
jsteube
15d2f9b11e
Add some reserved scratch buffer for innerloop combinator instead of reallocating each time
8 years ago
jsteube
c1aba9e314
Reset innerloop_* and outerloop_* variables when no longer needed
8 years ago
jsteube
eeb8210951
Added the current first and last password candidate test queued for execution per device on status view
8 years ago
coolbry95
a78fd4e915
changed uint to u32
8 years ago
jsteube
d80653b014
Fix some clSetKernelArg() size error that caused slow modes to not work anymore in -a 1 mode
8 years ago
jsteube
9413ed8f56
Centralize hashcat_ctx memory allocation and deallocation
8 years ago
jsteube
743dba56db
Replaced timer macros with inlines
8 years ago
jsteube
fb3e6bab0d
Finished refactoring to remove all global variables
8 years ago
jsteube
ae0300dabb
Rename kernel read and write function and make them static
8 years ago
jsteube
af1701c765
Fix some memleaks on shutdown
8 years ago
jsteube
6bc0d94f56
Make opencl support modular
8 years ago
jsteube
a5800b41f4
Rename hash_management.c to hashes.c
8 years ago
jsteube
ed571a3ec8
Remove unneeded includes
8 years ago
jsteube
c53de67cd4
Remove some unneeded mutex
8 years ago
jsteube
133c9295f5
Cleaned up data_t, only contexts left
8 years ago
jsteube
12a2d6d2a0
Move more stuff to status_ctx_t
8 years ago
jsteube
831ef1490b
Prepare status_ctx_t
8 years ago
jsteube
84f96c4dda
Add cpt_ctx_t
8 years ago
jsteube
e12abeb9de
Add inner2_loop()
8 years ago
jsteube
1cf4b2a093
Fix a bug on CPU-only systems
8 years ago
jsteube
7191780296
Make use of hwmon_ctx_t
8 years ago
coolbry95
ac1792f943
change id numbers to add one to be consistent with the rest of hashcat output
8 years ago
jsteube
f8d538413e
Move pw_min and pw_max to hashconfig_t and bring back data.shutdown_*
8 years ago
jsteube
c3338f0a9a
Fix -m 8900 bug
8 years ago
jsteube
94680cb311
Move hardware_power_all, kernel_power_all and kernel_power_final to opencl_ctx_t
8 years ago
jsteube
48917b5843
Move tmp size and hook size to hashconfig_init()
8 years ago
jsteube
ce02b3c54f
Add hashconfig_enforce_kernel_loops ()
8 years ago
jsteube
47f027d249
Created hashconfig_kernel_thread_force()
8 years ago
jsteube
c71f1bfb0c
Introduct combinator_ctx_t
8 years ago
jsteube
8dea3d2eb9
Fix optimizers values in kernel_params_mp_*
8 years ago
jsteube
67dd2e9b67
Separate rules and straight mode from each other, remove rules_ctx_t
8 years ago
jsteube
edd50de047
Add opencl_session_update_mp() and opencl_session_update_mp_rl()
8 years ago
jsteube
eeccb01998
Add opencl_ctx_devices_reset()
8 years ago
jsteube
69ad06ec12
Fix some casts
8 years ago
jsteube
75682a5008
Get rid of local_free() and global_free(), no longer required
8 years ago
jsteube
54a4ea3db2
Large but needed refactoring of mask handling, maskfiles, default mask, etc., expect smaller bugs
8 years ago
jsteube
59ebe10b07
Move functions from filenames.c to opencl.c and shared.c
8 years ago
jsteube
3279607a4e
Some better newline handling
8 years ago
jsteube
6fef4a53fb
Add goodbye_screen()
8 years ago
jsteube
62b97a6fe6
Move loading rules into outer loop
8 years ago
jsteube
8c6907a3d7
Move force_jit_compilation initialization to opencl_session_begin() as it depends on hash_mode
8 years ago
jsteube
ca48c49575
Move OpenCL device initialization to outer loop
8 years ago
jsteube
1e2869e8bd
Fix benchmark unwanted exit with long running kernels
8 years ago
jsteube
b6f966970b
Move all bitmap related host code into bitmap.c
8 years ago
jsteube
f9ec232b9b
Get rid of attack_kern variable in data. context
8 years ago
jsteube
f1d93d576a
Get rid of attack_mode variable in data. context
8 years ago
jsteube
3da185a3c8
Get rid of wordlist_mode variable in data. context
8 years ago
jsteube
5b0835258c
Get rid of hex_wordlist variable in data. context
8 years ago
jsteube
21d852b194
Get rid of benchmark variable in data. context
8 years ago
jsteube
e4b4855fbd
Get rid of status* variables in data. context
8 years ago
jsteube
1c9027cb03
Get rid of rule_buf_l, rule_buf_r, rule_len_l and rule_len_r in data. context
8 years ago
jsteube
458d6b37f9
Fix benchmark crashing
8 years ago
jsteube
1cc4358820
Introduce folder_config_t
8 years ago
jsteube
c008b11de3
Make more use of new user_options_t*
8 years ago
jsteube
ced3b3b82f
Move global mux_counter variable into opencl_ctx_t
8 years ago
jsteube
3adbf3d0d5
Move global mux_dispatcher variable into opencl_ctx_t
8 years ago