Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sat, 4 May 2013 09:05:37 +0200
From: Frank Dittrich <frank_dittrich@...mail.com>
To: john-dev@...ts.openwall.com
Subject: Re: Paths rework

On 05/04/2013 07:19 AM, Alexander Cherepanov wrote:
> On 2013-05-01 18:23, D A wrote:
>> The "run" directory in JTR-jumbo is a mess, so I tidied it up a bit.
> 
> What's the problem with run/ dir?

In core, there is not much of a problem.
But in a jumbo version, there really are too many files with different
contents.
Executables which are part of JtR (some of which are rebuilt with make,
some aren't), config files, .chr files, a stats file, password.lst.
Similar files created by the user, especially .chr files, Markov mode
stats files, config files (or just a changed john.local.conf), may be
even word lists. (If password.lst is in run, why not rockyou.txt?)

Files containing password hashes (cracked and to be cracked).

And finally, files which are created when executing john to crack
passwords: .rec files, .log files, .pot files.

This really can get messy. And, BTW, with such a full run dir, bash
completion will be less useful when trying to complete file names in
that directory.

Of course, with the jumbo version, you can use --config=, --pot=, and so
on. But then, it is more effort, so you just keep most of the stuff in
the run directory.

>> The charsets have been moved to $JOHN/run/charsets and their paths
>> have been modified accordingly in john.conf
> 
> If you want to move some files to another dir why make it subdir?
> $JOHN/charsets/ seems better.

Yes, I also like this better than a subdirectory.
A related question:
If you use
$ ./john --make-charset=new.chr
Should new.chr be created in the current directory?

Would this result in creating the .chr file in $JOHN/charsets:
$ cd ../charsets.
$ ../run/john --make-charset=new.chr

Or do you have to use
$ ./john --make-charset=../charsets/new.chr

Should markov mode stats files also move to $JOHN/charsets?

>> Everything in charge of converting a fileformat to a john-compatible
>> format has been moved to $JOHN/run/xyz2john
>> The others misc utils and scripts have been moved to $JOHN/run/utils
> 
> Having 3 distinct dirs with executables doesn't seem very useful to me.

I would also prefer to have just a single directory for all the executables.

What about moving .rec, .log and .pot files into one ore more separate
directories?
Or, instead, leaving all these files in $JOHN/run, but moving
executables to $JOHN/bin?
(Disadvantage: even more diversion from core john)

If the new directory structure is decided and hard coded into john, then
--list=build-info must provide information about this change.
Otherwise, tools will not be able to support different jumbo versions.
(This starts with such simple tools a john.bash_completion, but applies
to Johnny the GUI and other tools as well.)

An alternative would be to make all the (default) subdirectories
configurable.

Invent a new john.conf section, and add variables which point to the
appropriate directories per file type.


Frank

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.