Quantcast
Channel: hashcat Forum - All Forums
Viewing all 7847 articles
Browse latest View live

Deep Learning on wordlist.


Hashcat Performance

$
0
0
Hello guys! 

I recently posted a thread about an Error, but deleted it because somebody else had the same Problem and so i was able to solve that.
So now i am wondering how i can change the Performance of hashcat.
If i type --help , there seem to be the options of performance 1 - 4 while 1 is normal and 4 is brutal. 
So is there a way to change or set that Performance?

And i see that when i start to crack a Password it says something about #1
Does that mean it uses CPU? And would it be better to use GPU?

NTLMv1 to NTLM Reversing

$
0
0
So I made life easy for the mode 14000 reversing NTLMv1 to NTLM both with and without SSP, I am adding this writeup on hashcat to save people time while searching for it. The original credit goes to atom for developing mode 14000 and his original writeups.

** All hashes in this writeup are synthetic and exist only in a lab machine, they are used for illustration purposes are in no way should you ever post hashes on the hashcat forums. I warrant that these did not come from a live production system or one where any kind of client or customer data every existed.

First of all the link to the tool:
https://github.com/evilmog/ntlmv1-multi

Step 1, obtain a hash:
Without SSP if LM is enabled
Code:
responder -I eth0 --lm -wrfFP

Code:
[SMB] NTLMv1 Client  : 184.64.60.62
[SMB] NTLMv1 Username : DUSTIN-5AA37877\hashcat
[SMB] NTLMv1 Hash    : hashcat::DUSTIN-5AA37877:76365E2D142B5612980C67D057EB9EFEEE5EF6EB6FF6E04D:727B4E35F947129EA52B9CDEDAE86934BB23EF89F50FC595:1122334455667788


The hash portion looks like this:
Code:
hashcat::DUSTIN-5AA37877:76365E2D142B5612980C67D057EB9EFEEE5EF6EB6FF6E04D:727B4E35F947129EA52B9CDEDAE86934BB23EF89F50FC595:1122334455667788

Now if LM is disabled but NTLMv1 is still enabled as per https://docs.microsoft.com/en-us/windows...tion-level at a level of 2 then we have to contend with SSP:

Code:
responder -I eth0 -wrfFP

The output looks like this:
Code:
[SMB] NTLMv1-SSP Client  : 184.64.60.62
[SMB] NTLMv1-SSP Username : DUSTIN-5AA37877\hashcat
[SMB] NTLMv1-SSP Hash    : hashcat::DUSTIN-5AA37877:85D5BC2CE95161CD00000000000000000000000000000000:892F905962F76D323837F613F88DE27C2BBD6C9ABCD021D0:1122334455667788

the SSP hash will look like this:
Code:
hashcat::DUSTIN-5AA37877:85D5BC2CE95161CD00000000000000000000000000000000:892F905962F76D323837F613F88DE27C2BBD6C9ABCD021D0:1122334455667788

The important thing to notice is all the 0000000's in the lm portion of the hash.

NTLMv1 looks like this
username:blank:realmname/domainname:lm:nt:challenge

The important part about SSP due to a lack of LM is that the Client challenge gets changed to an SRV Challenge....the python code for the srvchallenge looks like this:

Code:
if lmresp[20:48] == "0000000000000000000000000000":
  print("Hash response is ESS, consider using responder with --lm")
  clientchallenge = hashsplit[5]
  combinedchallenge = clientchallenge + lmresp[0:16]
  m = hashlib.md5()
  m.update(binascii.unhexlify(combinedchallenge))
  md5hash = m.hexdigest()
  srvchallenge = md5hash[0:16]
  ct1 = ntresp[0:16]
  ct2 = ntresp[16:32]

Step 2) we take our hash and we feed it to the NTLMv1 multi tool
Code:
python ntlmv1.py --ntlmv1 "hashcat::DUSTIN-5AA37877:85D5BC2CE95161CD00000000000000000000000000000000:892F905962F76D323837F613F88DE27C2BBD6C9ABCD021D0:1122334455667788"
Hash response is ESS, consider using responder with --lm
Hashfield Split:
['hashcat', '', 'DUSTIN-5AA37877', '85D5BC2CE95161CD00000000000000000000000000000000', '892F905962F76D323837F613F88DE27C2BBD6C9ABCD021D0', '1122334455667788']

Hostname: DUSTIN-5AA37877
Username: hashcat
LM Response: 85D5BC2CE95161CD00000000000000000000000000000000
NT Response: 892F905962F76D323837F613F88DE27C2BBD6C9ABCD021D0
Client Challenge: 1122334455667788
SRV Challenge: b36d2b9a8607ea77

To Calculate final 4 characters of NTLM hash use:
./ct3_to_ntlm.bin 2BBD6C9ABCD021D0 1122334455667788 85D5BC2CE95161CD00000000000000000000000000000000

To crack with hashcat create a file with the following contents:
892F905962F76D32:b36d2b9a8607ea77
3837F613F88DE27C:b36d2b9a8607ea77

echo "892F905962F76D32:b36d2b9a8607ea77">>14000.hash
echo "3837F613F88DE27C:b36d2b9a8607ea77">>14000.hash

To crack with hashcat:
./hashcat -m 14000 -a 3 -1 charsets/DES_full.charset --hex-charset hashes.txt ?1?1?1?1?1?1?1?1

To Crack with crack.sh use the following token
$NETLM$b36d2b9a8607ea77$892F905962F76D323837F613F88DE27C2BBD6C9ABCD021D0

Step 3) we create 14000.hash, thankfully the tool outputs the command to do this:
Code:
echo "892F905962F76D32:b36d2b9a8607ea77">>14000.hash
echo "3837F613F88DE27C:b36d2b9a8607ea77">>14000.hash

Step 4) crack with hashcat, that being said I already know the output, this will take about 3 days on 32 GTX 1080's ish or so, so in order to verify I have nothing up my sleeve there is a tool in the repo that converts NTLM keys to DES keys

Code:
python ntlm-to-des.py  --ntlm 8846f7eaee8fb117ad06bdd830b7586c
DESKEY1: b55d6d05e6792652
DESKEY2: bdba82e6895a9d6a

echo b55d6d05e6792652>>des.cand
echo bdba82e6895a9d6a>>des.cand

We now run the echo commands it spit out, as well as the commands for the 14000.hash creation and actually crack with hashcat:
Code:
evilmogs-MacBook-Pro-2:ntlmv1-multi evilmog$ echo '$HEX[8923bdfdaf753f63]'>>des.cand
evilmogs-MacBook-Pro-2:ntlmv1-multi evilmog$ echo '$HEX[17d741d7ddc1c36f]'>>des.cand
evilmogs-MacBook-Pro-2:ntlmv1-multi evilmog$ echo "892F905962F76D32:b36d2b9a8607ea77">>14000.hash
evilmogs-MacBook-Pro-2:ntlmv1-multi evilmog$ echo "3837F613F88DE27C:b36d2b9a8607ea77">>14000.hash
evilmogs-MacBook-Pro-2:ntlmv1-multi evilmog$ ~/git/hashcat/hashcat/hashcat -d 3 -m 14000 -a 0 14000.hash des.cand

...truncated...
892f905962f76d32:b36d2b9a8607ea77:$HEX[8923bdfdaf753f63]
3837f613f88de27c:b36d2b9a8607ea77:$HEX[17d741d7ddc1c36f]
...truncated...

step 5) convert the des keys to ntlm
Code:
evilmogs-MacBook-Pro-2:ntlmv1-multi evilmog$ ~/git/hashcat-utils/src/deskey_to_ntlm.pl 8923bdfdaf753f63
8846f7eaee8fb1

evilmogs-MacBook-Pro-2:ntlmv1-multi evilmog$ ~/git/hashcat-utils/src/deskey_to_ntlm.pl 17d741d7ddc1c36f
17ad06bdd830b7

step 6) calculate ct3
Code:
~/git/hashcat-utils/src/./ct3_to_ntlm.bin 2BBD6C9ABCD021D0 1122334455667788 85D5BC2CE95161CD00000000000000000000000000000000

586c

alternatively you can swap out 1122334455667788 for the newly calculated SRV Challenge
Code:
~/git/hashcat-utils/src/./ct3_to_ntlm.bin 2BBD6C9ABCD021D0 b36d2b9a8607ea77

586c

step 7) stitch them together:
8846f7eaee8fb1 17ad06bdd830b7 586c

step 8) verification to prove this all works:
Code:
echo -n password | iconv -f utf8 -t utf16le | openssl dgst -md4

(stdin)= 8846f7eaee8fb117ad06bdd830b7586c

~/git/hashcat/hashcat/hashcat -m 5500 -d 3 ntlmv1.txt cand
...truncated...
hashcat::DUSTIN-5AA37877:76365e2d142b5612980c67d057eb9efeee5ef6eb6ff6e04d:727b4e35f947129ea52b9cdedae86934bb23ef89f50fc595:1122334455667788:password

hashcat::DUSTIN-5AA37877:85d5bc2ce95161cd00000000000000000000000000000000:892f905962f76d323837f613f88de27c2bbd6c9abcd021d0:1122334455667788:password


Step 9) be lazy and use the crack.sh tokens provided and pay $ to crack or use the 1122334455667788 challenge if you can get a solid LM

About operators for u32x and u8x

$
0
0
Hi y'all

I have successfully implemented a FNV1 module but only for the attack mode 0 (dictionary).
I'm trying to write the same module for other attack modes (I'm working on -a 3 right now).

I noticed that the types u32 are turned into u32x and u8 into u8x. But when I'm trying to do something like u32x ^= u8x it fails saying "error: implicit conversions between vector types ('u32x' (aka 'uint8') and 'u8x' (aka 'uchar8')) are not permitted".

I have taken a look at the OpenCL/inc_types.h where the operations for types are defined (around line 120ish for vector size = 2 for example) and indeed there is no operator definition for XORing a u32x and a u8x.

My questions are the following : should I be looking into trying to cast my u8x into a u32x and then do the XOR ? or define the ^= operator for u32x ^= u8x ? or am I a fool and should not use u8x anyway even though FNV1 is working with bytes?

Thank you in advance.

ps : I love the post icon feature on this forum

Driver dilemma

$
0
0
GPU card = Nvidia GTX 760.
GeForce driver = 337.88.

The GPU accelleration in "Xilisoft Video Converter" will only work with GeForce driver 337.88 (or probably older).
GPU acc in this program is not supported with newer drivers than 337.88.  Googled it.
None of the Googled results or suggestions for making Xilisoft work with newer drivers worked.
Hashcat benchmark reports that "* Device #1: Outdated or broken NVIDIA driver detected!"
Hashcat IS working with the latest drivers.

Is there any way of getting both Xilisoft and Hashcat to work with 337.88 installed?
Like.....Can I add some driver files that Hashcat requires, but doesn't screw up GPU acc in Xilisoft?

Wordlist Processing Order

$
0
0
Hey all!

I'm new here, so go easy.  I'm working on a personal proof of concept for Comcast Xfinity modems with WPA2 cracking.  Their convention goes 5 letterword, random four numbers, 6 letter word.  I've created wordlists for 5 letter with random four numbers appended for the left side and six letter words for the right.  I collected a handshake and began the attack.  Through testing with grep, I know that the string exists in the combinations hashcat will run through.  However, the line in the text file which has the correct left side falls roughly on line 2,035,400, and the candidates being tested for the left side are in the 17,252,400 range.

That's where my question lies.  In a combinator attack, does hashcat work through the left side in order?  If so, it seems there's something wrong with my approach, as I missed the correct answer.

Thanks,
M

Token length exception on valid MSOffice hash

$
0
0
I'm trying to recover a password from a Word 2013 file, using the following command:

Code:
hashcat64.exe -a 0 -m 9400 -o cracked.txt hash.hash

When I first tried, the output from the console was the following:

Code:
Hashfile 'hash.hash' on line 1 ($offic...1ee4d91xxx8ab7ecxxx440xxx4c92): Token length exception

No hashes loaded.

After comparing it with the example hashes, it has the appropriate format. I also tried the same command with the example hash for Office 2013 and the output was the same. What am I doing wrong and how can I correct it?

Hybrid attack keyspace incosistency

$
0
0
Heya,

I've just ran into problem using hybrid attack. I've tried using --skip and --limit parameters in the same manner for both attack types, but it didn't work out since hashcat report different keyspace for each of them. This behaviour confused me because FAQ What is keyspace? clearly states following:
Quote:-a 6 – number of words in wordlist
-a 7 – number of words in wordlist

while when executing hashcat I get different results. As show this example.
Code:
$ wc -l simple.dict
8
$ ./hashcat.exe -a 7 --keyspace ?a?a?a?a simple.dict
81450625
$ ./hashcat.exe -a 6 --keyspace simple.dict ?a?a?a?a
8

I've tried hashcat 5.1.0 and latest beta release with the same results. Is this a bug or is FAQ outdated and what is the reasoning behind different behaviour? I did try searching some related topics on this forum without much luck.

RX 5700 XT OpenCL amdgpu-pro problem

$
0
0
Hi everybody, not long ago I received an rx 5700 xt and so I wanted to test it but after installing amdgpu-pro with :
Code:
./amdgpu-pro-install -y --opencl=legacy,pal --headless --no-dkms
on PopOS 19.10 perfectly. I wanted to try a benchmark but... on MD5, Hashcat doesn't do anything... and when i try many times, hashcat say : CL_OUT_OF_HOST_MEMORY.

Code:
./hashcat.bin -b -O
hashcat (v5.1.0-1718-gef47811c) starting in benchmark mode...

Benchmarking uses hand-optimized kernel code by default.
You can use it in your cracking session by setting the -O option.
Note: Using optimized kernel code limits the maximum supported password length.
To disable the optimized kernel code in benchmark mode, use the -w option.

OpenCL API (OpenCL 1.2 pocl 1.3 None+Asserts, LLVM 6.0.1, SLEEF, DISTRO, POCL_DEBUG) - Platform #1 [The pocl project]
=====================================================================================================================
* Device #1: pthread-AMD Ryzen 5 2600 Six-Core Processor, skipped

OpenCL API (OpenCL 2.1 AMD-APP (3004.6)) - Platform #2 [Advanced Micro Devices, Inc.]
=====================================================================================
* Device #2: gfx1010, 8064/8176 MB (4048 MB allocatable), 20MCU

Benchmark relevant options:
===========================
* --optimized-kernel-enable

Hashmode: 0 - MD5

^C


I've tested the beta and this the same problem.
(amdgpu-pro 19.50)

Would anyone be able to match this hash with the password?

$
0
0
Hash: c394c92c8483df769681883cb24942c1

I would be willing to pay some $.

Using hashcat's hash implementations in other projects

$
0
0
I'm working on a small personal project written in C to carry out dictionary attacks on LUKS encrypted devices. I'm sure better implementations already exist than what I'll provide but this is for self teaching purposes. I would however like to try and (within reason) maximize the speed I can get from my program, and one place I thought to look was the actual crypto libraries I'm using. 

Now, I get the feeling that while OpenSSL would work fine, it probably sacrifices small amounts of speed to ensure things like memory safety and general fitness to be distributed and relied upon across many systems. Hashcat on the other hand likely implements hash functions to be completely as fast as possible to improve cracking performance. If this is correct (please let me know if I'm wrong), I'm wondering then if it might be possible to use hashcat as a library for my own program so I can just plug into the hash implementations of hashcat with my own data and get a speed advantage over OpenSSL or other such libraries. If so, how could I go about doing this?

Also, this is off the topic of hashcat specifically, but if anybody is aware of how I can attain the fastest block cipher implementations too (assuming OpenSSL isn't optimal), I'd appreciate being pointed somewhere on that too, thanks.

about hashcat parameters

$
0
0
Hello,
I want to know how to setting -n -u -T on different gpus on same computer.

C:\Users\3ds\Desktop\hashcat-5.1.0>hashcat64.exe -b -m 2500
hashcat (v5.1.0) starting in benchmark mode...

Benchmarking uses hand-optimized kernel code by default.
You can use it in your cracking session by setting the -O option.
Note: Using optimized kernel code limits the maximum supported password length.
To disable the optimized kernel code in benchmark mode, use the -w option.

OpenCL Platform #1: Advanced Micro Devices, Inc.
================================================
* Device #1: Fiji, 3264/4096 MB allocatable, 64MCU
* Device #2: Fiji, 3264/4096 MB allocatable, 64MCU

Benchmark relevant options:
===========================
* --optimized-kernel-enable

Hashmode: 2500 - WPA-EAPOL-PBKDF2 (Iterations: 4096)

* Device #2: ATTENTION! OpenCL kernel self-test failed.

Your device driver installation is probably broken.
See also: https://hashcat.net/faq/wrongdriver

* Device #1: ATTENTION! OpenCL kernel self-test failed.

Your device driver installation is probably broken.
See also: https://hashcat.net/faq/wrongdriver

Speed.#1.........:  204.1 kH/s (69.89ms) @ Accel:128 Loops:32 Thr:256 Vec:1
Speed.#2.........:  216.8 kH/s (65.75ms) @ Accel:128 Loops:32 Thr:256 Vec:1
Speed.#*.........:  421.0 kH/s


Yes,i want setting different Accel,Loops,Thr for two gpus.

Like this:

Speed.#1.........:  204.1 kH/s (69.89ms) @ Accel:128 Loops:32 Thr:256 Vec:1

Speed.#2.........:  216.8 kH/s (65.75ms) @ Accel:64 Loops:64 Thr:128 Vec:1

Anybody knows?
Thank you very much!

Weird behaviour when cracking RAR?

$
0
0
Hello,

First of all, thanks for this wonderfull piece of software. Ive been playing with it a bit and I am impressed.

However, I ran into some weird behaviour and was wondering if someone might have some insight.

I am cracking a rar file. To do this, I first generated some test files of which I know of course the password.
I noticed some of those were being cracked, some not. So I ran some tests and I noticed that rar files with longer passwords were not being cracked, even though the correct password was in the dictionary file?

I created for now several rar files (I tried attaching them, but is not allowed). The filename is the same as the password:

test.rar --> cracked
longertest.rar --> cracked
evenlongertest.rar --> cracked
evenevenlongertest.rar --> cracked
evenevenevenlongertest.rar --> exhausted
evenevenevenevenlongertest.rar --> exhausted

the process is the same everytime: extract hash with rar2john, than hashcat on extracted hash (I understand hashes need to be removed, so I did):

hashcat -a 0 -m 12500 '$RAR3$*0* REST OF HASH' password.txt

Same password file, which has the passwords (= filenames) of the above test files.

Am I missing something? Is there a maximum password length (if so, why no error is thrown, just exhausted?)?
Can anybody reproduce this maybe?

Many thanks,

Radeon Vega 64 Compatible? OpenCl Self-Test Failed

$
0
0
I previously experimented with Hashcat to try to crack a WPA Handshake that I had already acquired using my NVIDIA 750TI graphics card, using a mask attack with just all uppercase characters only, 8 characters in length.  Hashcat reported no problems and started to run at about 56,000 hashes per second with an estimated completion time of around 37 days.

So I thought hmm could do with a better graphics card anyway and searching for benchmark tests online found I could get much faster with a better card.  So bought a RADEON Vega 64 second hand as got one for a reasonable price and didn't want to spend a fortune on a new card. So I started by installing the latest driver Adrenalin 20.2.1

I then ran a benchmark test i.e. 'Hashcat64.exe -b', but when it gets to the 2500 type, which i believe is the hash type for a WPA handshake that I need, I get the following error :-


Attention! OpenCL kernel Self-test failed - Your device driver installation is probably broken

I also noticed the mouse icon on the screen kept displaying the circle on and off as if it was loading something.

So looked through forums to try to find a solution and people were saying it was something to do with AMD not supporting OpenCL and others saying problems with their latest drivers. Someone else said to type --Self-Test-Disable to force it to continue.

I did this and seemed to run OK, reporting a much higher 467,000 hashes per second with only around 5 days to complete. However someone also said that it will not find it even if it appears to be running.

So I removed the AMD driver and installed an earlier version 19.9.2 but same problem. (Noticed I don't get the circle flashing around the Mouse Icon anymore)

Also found forum where they said to use the Beta version of Hashcat which I did but I still get the same problem

So my question is this. First will it still find the password (assuming it is an 8 character, upper case characters only that iv'e set Hashcat to only look for) running the Self Test Disable? Or will Hashcat not work with this AMD card? Is there a workaround? Can't find a solution online

Wasn't sure if to sell it and buy an AMD one such as the NVIDIA Geforce GTX 1080, which I can get for a similar price

Electrum 4 and 5 Token length exception (ver 5.1.0+1736)

$
0
0
Hello, i wanted to test feature to brute electrum 4 and 5 salt, but have such error

Hashfile 'e_hash.txt' on line 1 ($elect...f899539ae96be83fa8bb91c6bf230ba0): Token length exception
No hashes loaded.



Test Hash of  EMPTY electrum in attachments

Attack mode 6 only uses 1 GPU.

$
0
0
Hi, all.

I'm trying to use attack mode 6 to crack a hash (type -m 18300) and it only uses one GPU. When I use attack mode 0, hashcat uses all 12 GPUs.

Am I missing something, or is hashcat truly limited to only one GPU in attack mode 6?

I'm using hashcat (v5.1.0-1631-gcc4fd48a)
CUDA and NVidia drivers installed from:
cuda_10.2.89_440.33.01_linux.run

NVIDIA-Linux-x86_64-440.64.run

Base OS is Ubuntu Server 18.04

TIA for your assistance and wisdom!

JS

Strange Hashcat Freezing Issue

$
0
0
I recently added a Nvidia 2070 Super along side an RX 580 in my system. I've started to get an issue with hashcat freezing. Hashcat does not provide any error it just freezes and stops running. What's strange is this only happens when using a small set of rules. When I use a larger set of rules it will run for hours without ever freezing. Furthermore if I run the small set of rules using just one GPU (either one) it also never freezes. When the freeze happens it starts to log the error "Page fault failed for pfn[0] = 0x0" multiple times a second in syslog.log and kern.log. I'm unsure why it only happens when running a small set of rules when the GPUs are not even being pushed hard. Anyone have any idea of what could be happening?

System Specs:
MSI Performance Gaming Plus AMD X470
AMD Ryzen 5 2600
Corsair Vengeance LPX 16GB (2x8GB) DDR4 @ 3200
CORSAIR RM850, 850 Watt, 80+ Gold Certified
Samsung 970 EVO SSD 500GB - M.2 NVMe

GPUs:
Nvidia 2070 Super
AMD RX 580

OS and Hashcat Version:
Ubuntu 18.04
Hashcat Version: v5.1.0-1736-gb1d5f92c

Example Command:
./hashcat.bin -m 1000  work.txt -a 0 --outfile cracked.txt --remove ./wordlists/* -d 1,2 -O --status --status-timer 60 -w 3 -r rules/best64.rule
** I have tried with -w 2, -w 1, and the issue still occurs while using both GPUs **

Here is a screenshot of what the terminal looks like when this happens. It never continues past this point and you have to CTRL-Z to end it.
https://i.imgur.com/ENn04py.png

Any help is greatly appreciated.

Delete character using rule "s"

$
0
0
Hello,
I have a question about rule-based attack. I know I can change all "," characters to "-" by this rule:
Code:
s,-
Code:
paper,paper -> paper-paper

Is is possible to use this rule to delete all "," characters?
Code:
paper,paper -> paperpaper

I tried to use a rule
Code:
s,

but this is probably not a valid rule.

CL RESOURCES ERROR

$
0
0
Hi, running Debian on a AMD cpu and I got the following message, following the link I cant find where to solve it?
* 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


Also, I can make my CPU work on Hashcat, what drivers should I install for a FX6300 ? Tried the Intel OpenCL drivers for Apps but doesnt work.

Thanks

A question about constant Exhausted

$
0
0
So, i've been banging my head against a wall on this.
Everytime i start a session on any .hccapx file with any wordlist, it just makes progress slowly go to 100%, rejecting 0%.
Everytime it reaches 100% progress, it just goes Exhausted. 
I usually use one example of a command at all times, so it looks like this
hashcat -m 2500 -a 0 /mnt/d/stuff/captured.hccapx /mnt/d/stuff/wordlist.txt --force 
Before this, i managed to crack one password, and i still have no idea where i went wrong
I sincerely cry for your help, wise users of hashcat
Viewing all 7847 articles
Browse latest View live