1
0
mirror of https://github.com/hashcat/hashcat.git synced 2025-02-04 20:01:43 +00:00
Commit Graph

322 Commits

Author SHA1 Message Date
jsteube
8abd7ae9d1 Fix some old GCC compiler warnings 2017-07-06 10:35:25 +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
52c1e15f3f Move kernel-code for -L to standalone files with -pure suffix 2017-07-01 13:02:07 +02:00
jsteube
f97c0d38d7 Allow using -L with -a 7 (other modes need no modification) for fast hashes 2017-06-30 16:51:57 +02:00
jsteube
f7a8e7c54b Multiple changes:
* Added more preparations to support to crack passwords and salts up to length 256
* Added option --length-limit-disable to disable optimization based on password- and salt-length
* Added option --self-test-disable to disable self-test functionality on startup
2017-06-29 12:19:05 +02:00
jsteube
c918173fcf Get rid of comb_t which can be safely replace with pw_t now 2017-06-25 00:56:25 +02:00
Jens Steube
8d93b160c4 Combinator mode for slow hashes wasn't set since self-test functionality was added 2017-06-22 10:49:57 +02:00
jsteube
4174f06008 PoC using a length-independant MD4 hash processing in -m 2100 2017-06-18 23:31:40 +02:00
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.
2017-06-17 17:57:30 +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
5be3840d9a Add some hint for the user to a scrypt error message 2017-06-09 10:20:05 +02:00
Royce Williams
3fc185a66b tidy changes.txt and name normalizations 2017-06-04 13:54:41 -08:00
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
2017-06-04 15:49:09 +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
ab2610d9df Also add reduced startup time for GPU for scrypt 2017-06-03 19:36:19 +02:00
Jens Steube
872f2b4f8b Improve scrypt cracking speed on CPU by 20%, preparation for Ethereum KDF 2017-06-03 19:19:03 +02:00
jsteube
b5f149476d Trim OpenCL device name whitespaces 2017-06-02 10:08:19 +02:00
jsteube
318ba234f8 OpenCL Runtime: Updated AMDGPU-Pro driver version check, do warn if version 17.10 is detected which is known to be broken 2017-04-11 13:33:25 +02:00
Royce Williams
067372f5ce more event_log_* standardization 2017-04-01 23:50:06 -08:00
jsteube
98cedd9422 Remove unused argument 2017-03-27 10:35:31 +02:00
Royce Williams
68ae2bc791 event_log_: length <80, end logs with '.', grammar 2017-03-25 22:49:13 -08:00
jsteube
368f8b39bc Add function to distinguish between warning and advice messages 2017-03-25 20:50:37 +01:00
jsteube
2bc65c2c4d A bit a different _comp kernel iteration for WPA which can have lots of handshakes 2017-03-10 19:54:00 +01:00
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
2017-03-07 09:44:58 +01:00
jsteube
da93d216da Update for scrypt patch 2017-02-28 12:45:26 +01:00
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 2017-02-28 12:12:06 +01:00
jsteube
6f33d799c2 Remove temporary 2gb limit testwise 2017-02-28 12:11:20 +01:00
jsteube
fea62b78dc Fixed cracking of Plaintext (-m 99999) in case MD4 was used in a previous session 2017-02-28 09:55:38 +01:00
jsteube
708adbc54b Fixed cracking of Plaintext (-m 99999) in case MD4 was used in a previous session 2017-02-27 14:47:41 +01:00
Rosen Penev
4ceb7a1afa
Prefer _WIN to _POSIX for defines.
Also miscellaneous fixes here and there.
2017-02-23 15:55:06 -08:00
jsteube
de186ceda5 Fix some typo 2017-02-23 18:34:51 +01:00
jsteube
d6b843901b In case of multiline error message use only the first line as error and the description as warning 2017-02-23 11:59:34 +01:00
jsteube
aa5ed1ca89 OpenCL Runtime: Added a warning about using Mesa OpenCL runtime 2017-02-23 11:48:21 +01:00
jsteube
c3251cebd8 Hardware Management: Bring back kernel exec timeout detection for NVidia on user request 2017-02-20 18:38:31 +01:00
philsmd
056d1f3da4 minor: use 2 distinct return value to avoid dead code detections 2017-02-14 21:24:45 +01:00
philsmd
f535eb2bd0
always check the input for NULL before the strtok_r () calls 2017-02-14 20:46:03 +01:00
philsmd
a82f6fb77c
our usage of strtok_r () was not totally correct (but almost) 2017-02-14 19:48:07 +01:00
philsmd
f87c65d081
minor: check return value of hc_stat () and use fclose () in case of error 2017-02-14 19:12:24 +01:00
jsteube
906bcf52f9 CID 1402488 (#1 of 1): Resource leak 2017-02-14 17:18:57 +01:00
jsteube
7f3d107129 Fixed pointer to local outside scope in case -j or -k is used 2017-02-14 17:13:36 +01:00
jsteube
cc223123e9 OpenCL Kernel: Refactored read_kernel_binary to load only a single kernel for a single device 2017-02-14 17:08:08 +01:00
jsteube
5a2e7f2a3a CID 1402490 (#1 of 1): Resource leak 2017-02-14 17:02:08 +01:00
jsteube
dcdafdbc08 CID 1402467 (#1 of 1): Resource leak 2017-02-14 17:01:13 +01:00
jsteube
20ab1af2b3 OpenCL Kernel: Move kernel binary buffer from heap to stack memory 2017-02-14 16:56:41 +01:00
jsteube
302f528796 OpenCL Kernel: Move kernel binary buffer from heap to stack memory 2017-02-14 16:51:03 +01:00
philsmd
5594a6703c
mem problem in OpenCL device management: free () the platforms string 2017-02-14 12:17:33 +01:00
philsmd
f1900686f5
OpenCL kernel run: minor copy-paste error removed 2017-02-14 12:03:45 +01:00
philsmd
6ef802a148
OpenCL platforms/devices: Fixed several memory leaks when a platform/device could not be used/initialized 2017-02-14 11:52:53 +01:00
jsteube
8ebd5188eb CID 1402518 (#1 of 1): String not null terminated 2017-02-14 10:45:50 +01:00
jsteube
9c5cfd17ac Added support for automatic merge of LM halfes when --show and --left is used
Fixes https://github.com/hashcat/hashcat/issues/1034
2017-02-13 16:46:37 +01:00
sgroat
113fe102f5 Cleanup zero-length printf format string warnings 2017-02-10 10:46:52 -08:00
Jens Steube
dec6307729 Merge pull request #1031 from neheb/master
Add NVML and NVAPI support to Cygwin. Disable file globbing.
2017-02-08 10:19:22 +01:00
Rosen Penev
ee0911c26e Add NVML and NVAPI support to Cygwin 2017-02-07 16:19:41 -08:00
Jens Steube
9005b66626 Fixed clEnqueueNDRangeKernel(): CL_UNKNOWN_ERROR caused by an invalid work-item count during weak-hash-check 2017-02-07 17:50:02 +01:00
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.
2017-02-03 17:53:50 -08:00
jsteube
0309afc273 OpenCL Device: Do a check on available constant memory size and abort if it's less than 64kB 2017-01-29 10:11:13 +01:00
jsteube
34aac18faf OpenCL Runtime: Updated AMDGPU-Pro driver version check, do warn if version 16.60 is detected which is known to be broken 2017-01-27 20:40:55 +01:00
jsteube
351a1f1ffc Remove some old debugging 2017-01-27 11:50:20 +01:00
jsteube
17548d3ee8 Helper: Added functions to check existence, type, read- and write-permissions and rewrite sources to use them instead of stat() 2017-01-27 11:46:45 +01:00
Jens Steube
07c89833c9 Added hash-mode 14800 = iTunes Backup >= 10.0 2017-01-26 21:16:29 +01:00
philsmd
6fe0173a79
#965: new hook function to support LZMA1/LZMA2 decompression for -m 11600 = 7-Zip 2017-01-24 10:28:35 +01:00
jsteube
8257883ec1 Added hash-mode 14600 = LUKS 2017-01-21 15:37:44 +01:00
Gabriele Gristina
b66d53bca1 Filter out OpenCL Intel Runtime broken check on Apple 2017-01-11 23:15:46 +01:00
jsteube
78d73e64fe Workaround added for Intel OpenCL runtime: GPU support is broken, skip the device unless user forces to enable it 2017-01-04 11:23:57 +01:00
jsteube
33aeae6090 For CYGWIN prefer to use "opencl.dll" (installed by drivers) instead of optional "cygOpenCL-1.dll" 2017-01-04 10:59:21 +01:00
jsteube
45479978c4 Fix some warning messages 2016-12-26 12:02:10 +01:00
jsteube
89d0d99bdb Shader Model version message is confusing users, rename it to CUDA version 2016-12-25 14:52:12 +01:00
jsteube
72af615e8b WPA cracking: Reuse PBKDF2 intermediate keys if duplicate essid is detected 2016-12-22 02:17:49 +01:00
jsteube
e4ba40dd7e OpenCL Runtime: Updated AMDGPU-Pro driver version check, do warn if version 16.50 is detected which is known to be broken 2016-12-18 22:35:23 +01:00
jsteube
72599fd109 Fixed kernel loops in leading to slower performance in --increment mode 2016-12-15 13:19:10 +01:00
jsteube
0d31ee3b53 Alternative --progress-only in case of multiple salts cracking 2016-12-10 18:12:03 +01:00
jsteube
367024da3f Fix --progress-only in case of multiple salts cracking 2016-12-10 16:16:48 +01:00
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 2016-12-09 23:44:43 +01:00
Rosen Penev
5c0bd0a15f
Remove strerror in favor of thread safe %m 2016-12-02 21:26:10 -08:00
jsteube
cc1dca7a2b Fixed double free (actually, double fclose()) in opencl.c 2016-12-02 20:39:42 +01:00
Rosen Penev
4d09cc10fd
Fix some formats and conversion errors 2016-11-30 15:14:42 -08:00
Rosen Penev
f5f17997b2 Fix cppcheck warnings 2016-11-30 14:45:21 -08:00
Rosen Penev
96783ed7a3 Fix compilation for native Cygwin 2016-11-29 14:10:39 -08:00
jsteube
f6e0f1494a Add a warning using beignet driver 2016-11-29 13:02:05 +01:00
Gabriele Gristina
49b44da588 Request build log only if size > 1 (v2) 2016-11-27 21:40:01 +01:00
jsteube
e77c029dad Fixed event_log_warning() format in debug builds 2016-11-27 12:43:26 +01:00
jsteube
ed149fdd52 More benchmark fixes 2016-11-26 20:14:30 +01:00
jsteube
a56aa30754 Fix reported speed for slow hashes which was broken somewhere between hashcat (v3.10-809-g7fe575e) to hashcat (v3.10-820-g899413f) 2016-11-26 19:48:39 +01:00
jsteube
ac8c4d946a Fix benchmark of extreme slow hashes, updated changes.txt 2016-11-25 16:27:22 +01:00
jsteube
90b9d5c12c Fix some potential resource leaks in case of an error 2016-11-20 23:15:54 +01:00
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. 2016-11-20 22:54:52 +01:00
jsteube
38514895b3 Rewrite some calls to clGetProgramInfo() to make scan-build happy 2016-11-20 21:14:51 +01:00
jsteube
6efe557cdc Fix cached kernel checksum building on oversized device version or driver version strings 2016-11-20 14:42:45 +01:00
jsteube
0c55626689 Remove kernel exec timeout detection, should no longer occur due to autotune 2016-11-19 16:57:24 +01:00
jsteube
dc2689a996 Move skipped_temp check out of main loop 2016-11-18 22:26:55 +01:00
Gabriele Gristina
6af37ecc10 Prevent exit from benchmark mode if all devices are skipped (OSX) 2016-11-18 19:44:18 +01:00
Jens Steube
1321cbdcf8 Merge pull request #599 from neheb/master
Sign fixes
2016-11-18 10:30:35 +01:00
jsteube
105513e307 On OSX, unset device_param->skipped back to true in case skipped_temp is set to true 2016-11-18 10:26:48 +01:00
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 2016-11-18 10:09:03 +01:00
Gabriele Gristina
28ec87aa2b Skip unstable hash modes (OSX only) 2016-11-17 23:15:32 +01:00
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 2016-11-17 18:00:17 +01:00
jsteube
d62d0d8a71 Fix some error messages 2016-11-17 10:22:16 +01:00
Rosen Penev
c13ef5aacd
Fix formats found by cppcheck 2016-11-16 20:30:14 -08:00
jsteube
c254138c21 Fix some code in opencl.c to make cppcheck happy 2016-11-16 15:59:39 +01:00
jsteube
536dcef7eb Replaced all calls to strtok() with strtok_r() to ensure thread safety 2016-11-16 10:35:01 +01:00
jsteube
8645571a7c Improve CPU detection on AMDGPU-Pro 2016-11-14 13:05:40 +01:00
Rosen Penev
22abb22c13
Fix a few printf formats 2016-11-13 17:45:36 -08:00
jsteube
01171a7b3b Moved OpenCL requirement from v1.1 to v1.2 2016-11-13 17:46:45 +01:00
Gabriele Gristina
dff72bbfb3 Fix clang warning on OSX 2016-11-13 12:56:04 +01:00
jsteube
98b6371cd7 No more branch needed to check cracked after moving check for speed only above 2016-11-13 00:05:34 +01:00
jsteube
f178769863 Do not wait for the progress mutex to read and store speed timer 2016-11-13 00:03:37 +01:00
jsteube
a3190986d4 Added a missing error check after using run_kernel_bzero() 2016-11-12 15:11:40 +01:00
jsteube
bc26cae58c Add some safety check for AMDGPU-Pro driver in combination with non-root user 2016-11-11 21:43:10 +01:00
Jens Steube
15100059fa Fix Intel OpenCL runtime version check 2016-11-11 14:51:30 +01:00
jsteube
80a4f234f5 Update OpenCL runtime- and driver-requirements
Update changes.txt
2016-11-11 13:10:24 +01:00
jsteube
9eb9543cda Basic sysfs support to read temp and read/write fan speed for amd-gpu-pro 2016-11-05 23:19:13 +01:00
jsteube
e63bc4d328 Query PCI-Express bus/device/function and store for later use 2016-11-05 20:23:05 +01:00
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.
2016-11-03 00:31:12 +01:00
jsteube
96e963b0d0 Testwise commit, this could be a problem but never actually created a problem. Need to keep an eye on it 2016-11-03 00:02:53 +01:00
jsteube
93adde9d2f * Wrap everything related to *stat() into own functions
* Testwise remove early includes to stdin for OSX, see if they are still required
2016-10-31 11:28:06 +01:00
jsteube
7eef713ff7 Fix compiler warnings caused by -Wshadow 2016-10-30 20:37:02 +01:00
Jens Steube
25bc960a09 Merge pull request #560 from matrix/fix_string_format
Fix string format
2016-10-30 19:31:52 +01:00
Gabriele Gristina
f500727bd8 Fix string format 2016-10-30 16:11:20 +01:00
Gabriele Gristina
6bf5ee95a6 Fix resource leak 2016-10-30 16:08:41 +01:00
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
2016-10-29 14:02:29 +02:00
jsteube
05634fe727 Do not run any caching rounds in autotune in DEBUG mode if -n and -u are specified 2016-10-27 00:51:26 +02:00
jsteube
636d953996 Move out all use of event_log_info() from library code to main.c or terminal.c 2016-10-26 11:24:00 +02:00
jsteube
e26b08f61f Move opencl_info() to terminal.c 2016-10-25 16:40:06 +02:00
jsteube
001ba8a655 Replace some printf() in opencl.c with event_log_info() 2016-10-25 16:01:03 +02:00
jsteube
5906f1ab54 Fix some format string for 64 bit 2016-10-25 15:51:44 +02:00
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 2016-10-25 15:43:09 +02:00
jsteube
e1010ffba1 Prepare library user access to OpenCL device information without running an attack 2016-10-23 17:31:22 +02:00
jsteube
2005f5d193 Remove terminal.h where's it's not needed 2016-10-18 00:41:24 +02:00
jsteube
df521d664b Move restore_* variables into separate functions for later use in status.c 2016-10-17 14:25:16 +02:00
jsteube
b044271b01 Move more status display calculate logic into separate functions 2016-10-17 13:44:07 +02:00
jsteube
f8a6d156eb Add some more returncode checks 2016-10-15 21:34:38 +02:00
jsteube
d2bcb19740 Fix some rc check 2016-10-15 19:58:39 +02:00
jsteube
7383bb14f5 Add some more returncode checks 2016-10-15 19:30:57 +02:00
jsteube
694de36694 Print warnings in yellow and errors in red 2016-10-15 16:12:20 +02:00
jsteube
91979bff69 Mark OpenCL devices as listing 2016-10-15 14:34:07 +02:00
jsteube
017555e257 Fix some log levels 2016-10-15 14:28:46 +02:00
jsteube
191269f4f0 Add --speed-only mode 2016-10-14 21:38:52 +02:00
jsteube
ef80e3f074 Some newline fixes 2016-10-14 20:18:45 +02:00
jsteube
8598a79732 Removed exit() from memory.c, resulting in all exit() calls removed from all code in the repository 2016-10-13 10:07:04 +02:00
jsteube
ebc26ecac5 Fix some log levels in opencl.c 2016-10-12 11:45:24 +02:00
jsteube
20832d29d6 Do not reset innerloop_left and outerloop_left too early so we can access it from status display 2016-10-11 15:02:54 +02:00
jsteube
af9de0a7b7 Fix some error string formats 2016-10-11 10:55:02 +02:00
jsteube
8fc4da795b Replace fprintf(stderr, ...) on malloc.c with log_event_error() 2016-10-10 11:03:11 +02:00
jsteube
27bec8be13 Get rid of logging.c and most exit() calls replaced with return() for true library usage 2016-10-09 22:41:55 +02:00
jsteube
42677df2a6 Start context-related logging with goal to get rid of logging.c 2016-10-08 23:16:40 +02:00
jsteube
14248d38e3 Update tuning_db.c function parameters 2016-10-06 16:51:01 +02:00
jsteube
a5e83c27c3 Update wordlist.c function parameters 2016-10-06 16:16:56 +02:00
jsteube
a97e31881c Update interface.c function parameters 2016-10-06 15:49:07 +02:00
jsteube
0579f93402 Update opencl.c and autotune.c function parameters 2016-10-06 15:16:30 +02:00