Taking a graduate computer security class, part of our current assignment is to crack 50 Unix md5crypt password hashes, due on Thursday, October 8th (in eight days.) I've managed to crack 49 out of the 50 passwords using hashcat, but the last password seems borderline impossible within the time given to us.
The hash for this password is $1$gT$qN6H47wSbSr4TaWFkuo/c.
The restraints on this password (given through hints from the professor) are as follows:
- The plaintext is 8 characters long
- The first character and last two characters are lowercase
- There are two numeric characters, and the rest of the password consists of only uppercase and lowercase letters (no symbols).
The best approach I could come up with was using a mask attack with the mask ?l?2?2?2?2?2?l?l
, where ?2
= ?l?u?d
, but this would take a maximum of 20 days on my single desktop machine, far too long to be able to complete the assignment.
I could potentially try to assume that characters 1-5 (inclusive) are not lowercase, which allows us to use the same mask with ?2
= ?u?d
, which cuts the max crack time to 1 day 13 hours. Certainly within the realm of possibility, but that's only in the case that my assumption is correct.
To be clear, this last password apparently isn't required for full credit, but at this point, I'm just curious to see how it could be cracked as fast as possible.
Is this crack possible within the remaining 8 days we're given, or is our professor setting us up to fail without giving us any further hints? Are there any other novel approaches I could take to crack this password faster?