Add generic support for Iterated-SHA256 hashes#5948
Add generic support for Iterated-SHA256 hashes#5948kholia wants to merge 1 commit intoopenwall:bleeding-jumbofrom
Conversation
There was a problem hiding this comment.
Pull request overview
This pull request adds support for cracking Cisco-ISE Hashed Password (SHA256) format to John the Ripper. The implementation follows the established conventions for John the Ripper format plugins and correctly implements the algorithm: SHA256(salt || password) repeated 128 times.
Changes:
- Added new format plugin
cisco_ise_sha256_fmt_plug.cwith OpenMP support - Implemented the Cisco-ISE SHA256 algorithm with 128 iterations
- Included test vectors for validation
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
magnumripper
left a comment
There was a problem hiding this comment.
Looks good to me. Good to see you Dhiru!
|
For what it's worth I believe adding a generic "iterated-sha256" format trivially modelled after iterated-sha1 would crack these hashes (after adding a tag). That would also give OpenCL support with very little work. We'd have to implement this format's optimization in set_salt(). It may not add a huge performance boost but it would add support for arbitrary length salts while keeping the "single limb" optimizations in iterated-shaXX. EDIT: There is no sha_final() in set_salt so it doesn't buy as arbitrary length salt. We'd have to limit plaintext length to 23. Or add slightly more logic. |
80a3952 to
6e36602
Compare
|
@magnumripper Neat idea! I have modified the whole PR now to implement your |
Tests:
It has been a while... ;)
PS: I am trying out
Codex CLIto auto-generate the code.