Word Mangling/Wordlist generator
#1
Hi There,

I'm trying to crack a lost password. I think I know what it is, but must have originally entered it incorrectly as it is not working. Is there a way in Hashcat to enter the password and have Hashcat mangle each letter, misspelling it. 

I have tried to generate a wordlist of misspelled words but Crunch doesn't seem to work for windows 10. If this is not possible in hashcat can you recommend a wordlist generator that can do this in windows

I'd appreciate your help.
Reply
#2
That's what rules do.
Reply
#3
Yeah, what undeath said - if we're talking about typos, or misspellings that are just a single character substitution, some rules are pretty good at transposing letters. Specifically, a ruleset like this:

Code:
$ cat typo-swap.rule
*01
*12
*23
*34
*45
*56
*67
*78

... would do this:

Code:
$ echo hashcats | hashcat -r typo-swap.rule --stdout
ahshcats
hsahcats
hahscats
haschats
hashacts
hashctas
hashcast
hashcats

And rules like this for character substitutions:

Code:
$ cat typo-wrong.rule
saq
saw
sas
sax
saz


$ echo hashcat | hashcat -r typo-wrong.rule --stdout
hqshcqt
hwshcwt
hsshcst
hxshcxt
hzshczt

If it's a fast hash and you're feeling lazy, you can just throw all of the possible characters into a custom character set (-1, -2, -3, -4 syntax).

Code:
$ hashcat -m 0 -a 3 -1 'hasct' --stdout ?1?1?1?1?1?1?1 | head
sattasa
chatasa
ashaasa
tattasa
hattasa
shatasa
cattasa
aattasa
thatasa
hhatasa

$ hashcat -m 0 -a 3 -1 'hasct' --stdout ?1?1?1?1?1?1?1 | wc -l
78125

$ hashcat -m 0 -a 3 -1 'cat' --stdout hash?1?1?1
hashata
hashtat
hashcat
hashaca
hashtta
hashcca
hashaat
hashtca
hashcta
hashatt
hashtac
hashcac
hashact
hashttt
hashcct
hashaac
hashtct
hashctt
hashatc
hashtaa
hashcaa
hashacc
hashttc
hashccc
hashaaa
hashtcc
hashctc

Adjust the hard-coded characters in the mask with the wildcard ones (?1) to taste.

If the rules syntax is tricky for you, and if it's a slow hash, you might be be better off scripting something that does the mangling for you, or using a different external tool. Googling for "typo generator" has some interesting hits.
Reply
#4
Thanks for your responses. Yes I thought this might be based around rules. Just wasn't sure how to construct them to do what I wanted so thank you for your help.

Unfortunately its a slow hash (old litecoin wallet, you're probably sick of these) and a phrase. So it might be more efficient to construct a wordlist of typos instead of having hashcat try to mangle in real time. I'll look into Typo generators.

Thanks again.
Reply
#5
Good luck!

And for what it's worth, here are some nuggets for how to use kwprocessor (keyboard walk processor) and hashcat rules + stdout to generate a wordlist of typos. It's not an ideal approach, but might work for some use cases.

https://gist.github.com/roycewilliams/9d...f0e8de8371
Reply
#6
Thanks Royce. Much appreciated!
Reply