06-03-2016, 05:38 PM
Regarding brute force: AFAIK hashcat is byte-oriented because of performance reasons - this is why it can only handle single-byte chars. Handling multi-byte chars would require completely different inner workings.
I had an idea of a new attack mode that would solve the utf8-brute force problem, but it seems that no one was interested so I didn't want to pollute the github tracker with this feature request: https://hashcat.net/forum/thread-5188.ht...light=UTF8
Anyway I do multi-byte bruteforce with programatically generating hcmask files, and using appropriate hex charset files (e.g. ?l?l?1?2?l?l style masks where ?1 has the interesting first bytes and ?2 the interesting 2nd bytes - for certain languages this works quite well, as there are only 1-2 first bytes). I haven't tried >2 byte chars though - although if you only want a few, it may be worth generating maskfiles with literal UTF 8 chars, e.g. ß?l?l?l, ?lß?l?l, ... Maskprocessor piped into some sed scripts is very useful for this purpose.
I had an idea of a new attack mode that would solve the utf8-brute force problem, but it seems that no one was interested so I didn't want to pollute the github tracker with this feature request: https://hashcat.net/forum/thread-5188.ht...light=UTF8
Anyway I do multi-byte bruteforce with programatically generating hcmask files, and using appropriate hex charset files (e.g. ?l?l?1?2?l?l style masks where ?1 has the interesting first bytes and ?2 the interesting 2nd bytes - for certain languages this works quite well, as there are only 1-2 first bytes). I haven't tried >2 byte chars though - although if you only want a few, it may be worth generating maskfiles with literal UTF 8 chars, e.g. ß?l?l?l, ?lß?l?l, ... Maskprocessor piped into some sed scripts is very useful for this purpose.