Each word of a dictionary is appended to each word in a dictionary.
If our dictionary contains the words:
pass 12345 omg Test
Hashcat creates the following password candidates:
passpass pass12345 passomg passTest 12345pass 1234512345 12345omg 12345Test omgpass omg12345 omgomg omgTest Testpass Test12345 Testomg TestTest
Using the Combinator Attack within oclhashcat (not standalone version of Combinator Attack).
The command for the Combinator Attack in oclhashcat is -a 1
You need to specify exactly 2 dictionaries in you command line: e.g.
./oclHashcat64.bin -m 0 -a 1 hash.txt dict1.txt dict2.txt
If you wish to add rules to either the left or right dictionary or both at once then you can use the -j or -k commands.
-j, --rule-left=RULE Single rule applied to each word on the left dictionary -k, --rule-right=RULE Single rule applied to each word on the right dictionary
yellow green black blue
Note: the quotes are only there to escape the $ character, which would otherwise allow $- to be interpreted as a variable. The rules that are used here are still just $- and $!. Escaping might not work exactly the same way on each operating system and with each shell interpreter (if you are unsure about what needs to be escaped and how it should be escape, please consider looking up your OS and/or shell interpreter manual).
The output would be…
yellow-car! green-car! black-car! blue-car! yellow-bike! green-bike! black-bike! blue-bike!
Hashcat (or cpu hashcat, hashcat-cli*) does also support the combinator attack mode.
The only (and important) difference between combinator attacks within oclHashcat and hashcat is that cpu hashcat does the combination of the plains given in a single dictionary file (word list), while for oclHashcat you need to specify exactly 2 files.
This implies that one should specify only and exactly 1 (dictionary) file within the command line for hashcat (besides the hash file).
The combinator attack hence will combine each and every word within the single dictionary file.
hashcat-cli64 -m 0 -a 1 hash.txt dict.txt