Hashcat not running/detecting CPU at all?
#1
I've read through a few forum posts and FAQ's to help make this question as easy to answer as possible, but using a Windows 10 machine here, AMD CPU, with a VERY old NVidia GPU 610. When I run 
Code:
hashcat64.exe -I
, I get the following output:

Code:
hashcat (v5.1.0) starting... OpenCL Info: Platform ID #1   Vendor  : NVIDIA Corporation   Name    : NVIDIA CUDA   Version : OpenCL 1.2 CUDA 9.1.75   Device ID #1     Type          : GPU     Vendor ID      : 32     Vendor        : NVIDIA Corporation     Name          : GeForce GT 610     Version        : OpenCL 1.1 CUDA     Processor(s)  : 1     Clock          : 1620     Memory        : 512/2048 MB allocatable     OpenCL Version : OpenCL C 1.1     Driver Version : 388.13


So I don't see my CPU in there at all. When I try to run hashcat with the GPU, it tells me that the CUDA version is too old/I know this GPU is old, I don't want to use the GPU (per se, unless there's a way to update the driver to allow it but I doubt it). I just want to start crackin' on my CPU.

The command I run and output looks like this:

Code:
hashcat64.exe hashes.hash -m 10500 -a 3 -D 1 -w 2 ?l

(The logic I'm going for is, run hashcat on the hashes.hash file, hash-type is PDF 1-5, attack type I want to be just brute force, device should be CPU, workload 2 and lowercase characters. Not sure how to set min and max characters)

Code:
hashcat (v5.1.0) starting... No devices found/left. Started: Thu Oct 21 13:57:55 2021 Stopped: Thu Oct 21 13:57:55 2021


So I take out the
Code:
-D 1
part, and get this:

Code:
hashcat (v5.1.0) starting... * Device #1: This hardware has outdated CUDA compute capability (2.1).             For modern OpenCL performance, upgrade to hardware that supports             CUDA compute capability version 5.0 (Maxwell) or higher. * Device #1: WARNING! Kernel exec timeout is not disabled.             This may cause "CL_OUT_OF_RESOURCES" or related errors.             To disable the timeout, see: https://hashcat.net/q/timeoutpatch nvmlDeviceGetCurrPcieLinkWidth(): Not Supported nvmlDeviceGetClockInfo(): Not Supported nvmlDeviceGetClockInfo(): Not Supported nvmlDeviceGetTemperatureThreshold(): Not Supported nvmlDeviceGetTemperatureThreshold(): Not Supported nvmlDeviceGetUtilizationRates(): Not Supported OpenCL Platform #1: NVIDIA Corporation ====================================== * Device #1: GeForce GT 610, 512/2048 MB allocatable, 1MCU Hashes: 2 digests; 2 unique digests, 2 unique salts Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates Applicable optimizers: * Zero-Byte * Not-Iterated * Brute-Force Minimum password length supported by kernel: 0 Maximum password length supported by kernel: 32 Watchdog: Temperature abort trigger set to 90c The wordlist or mask that you are using is too small. This means that hashcat cannot use the full parallel power of your device(s). Unless you supply more work, your cracking speed will drop. For tips on supplying more work, see: https://hashcat.net/faq/morework Approaching final keyspace - workload adjusted. Session..........: hashcat Status...........: Exhausted Hash.Type........: PDF 1.4 - 1.6 (Acrobat 5 - 8) Hash.Target......: hashes.hash Time.Started.....: Thu Oct 21 13:58:35 2021 (0 secs) Time.Estimated...: Thu Oct 21 13:58:35 2021 (0 secs) Guess.Mask.......: ?l [1] Guess.Queue......: 1/1 (100.00%) Speed.#1.........:      529 H/s (0.20ms) @ Accel:256 Loops:17 Thr:64 Vec:1 Recovered........: 0/2 (0.00%) Digests, 0/2 (0.00%) Salts Progress.........: 52/52 (100.00%) Rejected.........: 0/52 (0.00%) Restore.Point....: 1/1 (100.00%) Restore.Sub.#1...: Salt:1 Amplifier:25-26 Iteration:68-70 Candidates.#1....: x -> x Hardware.Mon.#1..: Temp: 69c Fan: 49% Started: Thu Oct 21 13:58:34 2021 Stopped: Thu Oct 21 13:58:36 2021


So, the two issues I see here are 1) it's trying to use the only available device, which is giving me that outdated CUDA error, but also 
Code:
The wordlist or mask that you are using is too small.
, even though I'm wanting to use Brute-force only? Any ideas on what I need to do? The FAQ regarding "device not found/left" looks like it only pertains to GPU's and yes, that's probably what I need to invest in, but how can I get it working on my CPU?
Reply
#2
UPDATE

I downloaded the Intel® CPU Runtime for OpenCL program from here and installed it:

https://registrationcenter-download.inte....0.616.exe

Now when I run -I my CPU shows up:

Code:
hashcat (v5.1.0) starting... OpenCL Info: Platform ID #1 Vendor : NVIDIA Corporation Name : NVIDIA CUDA Version : OpenCL 1.2 CUDA 9.1.75 Device ID #1 Type : GPU Vendor ID : 32 Vendor : NVIDIA Corporation Name : GeForce GT 610 Version : OpenCL 1.1 CUDA Processor(s) : 1 Clock : 1620 Memory : 512/2048 MB allocatable OpenCL Version : OpenCL C 1.1 Driver Version : 388.13 Platform ID #2 Vendor : Intel(R) Corporation Name : Intel(R) OpenCL Version : OpenCL 2.1 WINDOWS Device ID #2 Type : CPU Vendor ID : 8 Vendor : Intel(R) Corporation Name : AMD Ryzen 5 3600 6-Core Processor Version : OpenCL 2.1 (Build 0) Processor(s) : 12 Clock : 0 Memory : 4077/16309 MB allocatable OpenCL Version : OpenCL C 2.0 Driver Version : 2021.11.3.0.17_160000

BUT, now when I run the same
Code:
hashcat64.exe hashes.hash -m 10500 -a 3 -D 1 -w 2 ?l
command, I get the following output:

Code:
hashcat (v5.1.0) starting... OpenCL Platform #1: NVIDIA Corporation ====================================== * Device #1: GeForce GT 610, skipped. OpenCL Platform #2: Intel(R) Corporation ======================================== * Device #2: AMD Ryzen 5 3600 6-Core Processor, 4077/16309 MB allocatable, 12MCU Hashes: 2 digests; 2 unique digests, 2 unique salts Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates Applicable optimizers: * Zero-Byte * Not-Iterated * Brute-Force Minimum password length supported by kernel: 0 Maximum password length supported by kernel: 32 Watchdog: Temperature abort trigger set to 90c INFO: Removed 1 hash found in potfile. Initializing OpenCL runtime for device #2...

...and then the program just ends there, I see my command line at the bottom again. I'm wondering if it has something to do with the hashes, I read to not post them here unless asked to, but what else could I be missing? Thanks!
Reply
#3
please also update your hashcat (where are all these people get these old versions?)
version 5.1 is really old, actual version 6.2.4
get the latest beta https://hashcat.net/beta/

one hash was already cracked and removed
if your hashcat seems to stuck, just press enter in your cmd-window or try adding option for automitic refresh
--status --status-timer=10

second

your mask just consist of one position with ?l
so just 23 possibilities, so all possibilities are checked and hashcat is finisching this attack in what? a second...
Reply
#4
@Snoopy worked like a charm! The update got er goin. Thanks!

One (or two) last things, could you point me in the direction of some resources regarding the masks? Like how to structure them so that it's guessing what I need it to? And also on how to set min/max character lengths? Thanks!!!
Reply
#5
well depends on the language you are trying to crack

you could start with some known plain pw list for your language and feed them to https://github.com/iphelix/pack

there you will get a good overview of mainly used length and some basic masks like

word+year like dog1981
Reply
#6
Wicked, thanks a lot!
Reply