Fix `john_show_passwords` colon handling

A more general solution than #3169.

Attempting to re-join passwords with colons is a task that will require some more thought. The implementation I went with for #2515 was flawed in cases where a shadow file didn't have exactly 7 `:`s, which is almost always.

[MSP-9778]

On a  side note, this bug taught me that you can generate md5 passwords for use in a shadow file with
```bash
openssl passwd -1 "password"
```
## Verification
Starting with an empty workspace:
 - [ ] echo smithj:Ep6mckrOLChF.:10063:0:99999:7::: > /tmp/foo
 - [ ] loot -a -i linux.hashes -t linux.hashes -f /tmp/foo 127.1.1.1
 - [ ] use auxiliary/analyze/jtr_linux
 - [ ] run 
 - [ ] **before** see `[+] Host: 127.1.1.1 User: smithj Pass: baseball:10063:0:99999`
       **after** see `[+] Host: 127.1.1.1  User: smithj Pass: baseball`