hashcat Forum
Specific pattern syntax help - Printable Version

+- hashcat Forum (https://hashcat.net/forum)
+-- Forum: Support (https://hashcat.net/forum/forum-3.html)
+--- Forum: hashcat (https://hashcat.net/forum/forum-45.html)
+--- Thread: Specific pattern syntax help (/thread-10228.html)



Specific pattern syntax help - CaptainAdaquit - 07-24-2021

I've been reading and reading, and came across this thread:  https://hashcat.net/forum/thread-7024.html?highlight=multi+word

It looks like this person had a similar goal, but I'm not quite following the solution.  Let me give my scenario:
Small word list, maybe 40 total words or so, but with many words and an unknown separator.  So, it would be something like this:   My!Really!Great!Super!long!Password!  or it could be my/really/great/super/long/password or even MY^Super^LONG^password.   I'm having trouble trying to figure out how to use all words in the short list in combination with an unknown separator.  One thing to dramatically narrow it down, is that I know that the separator is all the same.  So it will always be ! or ^ or / through the whole thing.  It would not have random ones.  I've attempted the substitution, but it goes through every separator combination, making it way too large.  I'd love some help on getting the syntax right to finally solve this problem.


RE: Specific pattern syntax help - royce - 07-24-2021

I don't have a hashcat-only solution for you, but something like this might work - basically, append that separate to all your words, and then use a rule that *removes* the final separator from the string.

https://gist.github.com/roycewilliams/18e3fb14b97cc05eb95a5645692bccc2

And if that's too slow (for faster hashes), you can use a file containing rules that append the the words.


RE: Specific pattern syntax help - CaptainAdaquit - 07-24-2021

(07-24-2021, 03:12 AM)royce Wrote: I don't have a hashcat-only solution for you, but something like this might work - basically, append that separate to all your words, and then use a rule that *removes* the final separator from the string.

https://gist.github.com/roycewilliams/18e3fb14b97cc05eb95a5645692bccc2

And if that's too slow (for faster hashes), you can use a file containing rules that append the the words.

If I am reading this correctly, this is the syntax they used in total:
pp64 --elem-cnt-min=2 --elem-cnt-max=2 \
    <(LC_ALL=C sort -u dict1 dict2 dict3 | 's/^/ /') \
    | hasht -m 100 -a 0 hashes.txt -r prince-twoword-infix-simulator.rule



I'm usually good at picking out variables in things and swapping them out with what I need.  I get most of this.  It starts off with element count min max, not clear on the LC_ALL portion of it though.  The last line makes sense enough.

One other issue I have though, is I don't know exactly how many words.  Could be four words, could be seven.


RE: Specific pattern syntax help - royce - 07-24-2021

That would be --elem-cnt-min=4 --elem-cnt-max=7, then. Big Grin