"scenario" mode a.k.a. user defined batch mode
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 13.6k
- Forks
- 2.6k
- PR merge metrics
- No merged PRs in 30d
Description
This is a feature request
Imagine a situation with a series of checks needed to be done on a single file with a big set of hashes or a series of files with similar checks. For example ranged by difficulty/result level to check compliance with password policy, check against previous findings (with modification rules) and also against predefined wordlists (like known public leaks). Like one big wordlist with different sets of hashes (with varying algorithms) or one big hashlist with lots of options to try (like different masks, rules etc.).
I guess it'll be handy to eliminate those re-loads and re-deduplication checks that will be made if launching in an ordinary way step-by-step with separate john process each time. By doing the resource allocation (loading/placing in memory) and after that getting the "scenario" with a list of commands/options (from a file for example) can save the time.
Something like the thing that is made during (1) (2) (3) steps of "no options" john run but more versatile and human-controlled.
john -w=verybigdict.txt -scenario=test1.list
with test1.list containing:
-format=hash1 system1.pass
-format=hash2 system2.pass
-format=hash3 system3.pass
...
john checkme.pass -scenario=test2.list
with test2.list contaning:
-mask=XXXXXXX
-mask=YYYYYYYYY
-w=previouslyfound.txt -rules=popular_modifications
-w=verybigleak.txt
...
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with John's existing command-line handling and the no-options run described in the issue, then trace how separate wordlist, mask, rules, and format invocations are sequenced. Define the scenario-file syntax and execution semantics before locating the relevant parser and scheduling code. Done means one scenario can reuse loaded resources across the listed operations without the repeated setup described.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- cli, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100