We're doing a password audit by loading the password file into John and letting it run for a couple of days.

One of the first questions I got in the remediation class was "How long did it take to crack my password?" According to a password calculator the guy used, his password should have taken over a century to crack, but John guessed it relatively early.

Now, my manager is asking me to record how long it takes for each password on the next audit round, but I'm letting it run when I'm not here to observe and record.

Any suggestions on a way to record the time? I'm doing this on a Kali Linux cluster.

  • 3
    Why is Kali relevant?
    – Hector
    Dec 15, 2017 at 16:55
  • 2
    Depends on the wordlist you're using, surely? "Correct Horse Battery Staple" would take 5 decillion years, according to howsecureismypassword.net but it's in a lot of wordlists now...
    – Matthew
    Dec 15, 2017 at 17:00
  • Uh - how are you getting the users to give you their passwords? This appears to be a far bigger problem than easy-to-crack passwords ...
    – schroeder
    Dec 15, 2017 at 22:47

3 Answers 3


John the ripper logs its activity to stdout. If you note that it's cracked a password, you can terminate the session with a ctrl-C.

The log file .john/john.log will note the account(s) that have been cracked, with a timestamp. Grep that for 'Cracked' to turn those up.

  • Well, but, john doesn't work on passwords one at a time, so that doesn't really help you tell the manager anything sensible, now does it?
    – SamB
    Feb 28, 2023 at 0:12

With regards to password calculators see here - https://security.stackexchange.com/a/175006/76546

Now, my manager is asking me to record how long it takes for each password on the next audit round

This is entirely pointless. It depends entirely on the approach used. With a dictionary attack you often use an alphabetically sorted password list - meaning the password "zzz" would be one of the last passwords you reached (hence taking longer) whilst the password "aaalojryd" if present would be one of the first.

If using an ascending brute force the "mypassword1" would take substantially longer than an entirely random 9 character password.

It is also massively hardware dependent.

Any suggestions on a way to record the time?

If you (or your manager) insist on doing this i'd suggest a good enough approach would be to estimate. You can work out how the software is picking phrases to try and work out how far through the cycle it would take to get to the found phrase. Then by comparing this to the total run time you should be able to make a reasonable estimate.


Be careful, especially if your user is important. They are trying to lay a trap for you, in order to deflect the blame for their lack of concern for security.

You discovered their password. Simply provide your clients and security team with that fact. "I ran a widely available password cracker and your password was one of those that it easily recovered."

Don't let them get away with "but it took you two days" kind of stuff. That's about the weakest excuse possible; especially since many attackers hide inside breached networks for a month or more before exfiltrating their data.

  • While not a direct answer of the question, is very relevant. Especially as a real attacker may have either a) more time or b) better hardware.
    – ewanm89
    Dec 16, 2017 at 0:09

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .