Attack succeeds with brute-force, but same attack fails with dictionary
#1
Hello, I am running into an issue where an IPB2/MyBB hash fails to crack using attack mode 0, but succeeds with attack mode 3. Both attacks should be using the same keyspace, yet only the brute-force method succeeds. I have placed the IPB/MyBB hash in a file called a.hash.

Code:
hashcat-3.10>more a.hash

2a43909624132cfc594118ec990467da:aaaaa

2a43909624132cfc594118ec990467da is the hash, aaaaa is the salt, and aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa (32 lowercase a's) is the solution.

When I run a brute-force attack:

Code:
hashcat-3.10>hashcat64 -a 3 -m 2811 a.hash aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
hashcat (v3.10) starting...

Hashes: 1 hashes; 1 unique digests, 1 unique salts

2a43909624132cfc594118ec990467da:aaaaa:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

Session.Name...: hashcat
Status.........: Cracked
Input.Mode.....: Mask (aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) [32]
Hash.Target....: 2a43909624132cfc594118ec990467da:aaaaa
Hash.Type......: IPB2+, MyBB1.2+
Time.Started...: 0 secs
Speed.Dev.#2...:        0 H/s (0.02ms)
Recovered......: 1/1 (100.00%) Digests, 1/1 (100.00%) Salts
Progress.......: 1/1 (100.00%)
Rejected.......: 0/1 (0.00%)

The attack succeeds, and the hash is cracked. Now I have placed the solution in a dictionary file called a.dict.

Code:
hashcat-3.10>more a.dict
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

Now I remove the pot file and run a dictionary attack using a.dict:

Code:
hashcat-3.10>hashcat64 -a 0 -m 2811 a.hash a.dict
hashcat (v3.10) starting...

Hashes: 1 hashes; 1 unique digests, 1 unique salts

Cache-hit dictionary stats a.dict: 33 bytes, 1 words, 1 keyspace

Session.Name...: hashcat
Status.........: Exhausted
Input.Mode.....: File (a.dict)
Hash.Target....: 2a43909624132cfc594118ec990467da:aaaaa
Hash.Type......: IPB2+, MyBB1.2+
Time.Started...: 0 secs
Speed.Dev.#2...:        0 H/s (0.02ms)
Recovered......: 0/1 (0.00%) Digests, 0/1 (0.00%) Salts
Progress.......: 1/1 (100.00%)
Rejected.......: 0/1 (0.00%)

The keyspace was not rejected, so why was the hash not cracked? Have I done something wrong? I've tried burying the correct solution in a much longer dictionary, but the hash still fails to crack. I have tried the same tests using the latest beta version (3.10+131), but the problem persists.
#2
I can reproduce this locally, please open a github issue