|
Message-ID: <BLU0-SMTP4195E6011188464F65FCC71FDE70@phx.gbl> Date: Wed, 27 Jun 2012 14:55:34 +0200 From: Frank Dittrich <frank_dittrich@...mail.com> To: john-dev@...ts.openwall.com Subject: Re: Re: Aleksey's status report #10 Hi Aleksey, On 06/26/2012 11:47 PM, Aleksey Cherepanov wrote: > On Wed, Jun 27, 2012 at 01:40:23AM +0400, Aleksey Cherepanov wrote: >> This status report has attached code not for users so it is on >> john-dev. > > Sorry! I forgot the code... > > Frank, please look onto this. I'll just copy some source code snippets into my reply and comment on them, I think you'll recognize those... May be in the source code comments you should replace "keys" with "options" or "parameters". In the first comment, you should also list (and adjust during future development) the preconditions for using the script: -git -ssh -... my $store = '/home/a/desktop/wrapper/test-store1'; IMHO you should avoid absolute path names, and use path names relative to the current directory whenever possible. # TODO: does john accept only = and : as separater for keys? john accepts : and = as separator between (possibly abbreviated) option name and value. --markov can have several colons, e.g. --markov=200:0:0:12 --markov=section:0:0:0:10 --markov:section:200 and so on. The first : (or =) separated the option name from the parameters passed into the markov mode function. We should prefer = (the separator used in the usage output) if possible. Some options can be used with or without specifying values, separated from the option name by '=' or ':'. You can see this in john's usage output. Some options are not mentioned in the usage output. You can find them using ./john --list=hidden-options, provided that --list=WHAT is mentioned in the usage output. Some options depend on version and/or build target (e.g., additional options for CUDA / OpenCL) # TODO: respect type of key! Do not copy file named 'all' # from original dir if we just call --incremental=all . Which options use file names (or part of file names) can be seen in the bash completion script, run/john.bash_completion --incremental (without =...), or the sections that are defined in what will be the next jumbo can/should IMO be assumed to exist unmodified, so that we should assume that all the necessary files are rolled out. all all15 all6 all7 all8 alnum alpha digits digits8 lanman Unless a separate config file is used: --config=my.conf For other section names, you might even need to implement new functionality to john, like listing the contents of a section (with include statements for sections or file names being resolved). Or at least functionality to get the value of a certain variable from a config section, so that you can parse File = $JOHN/my.chr and know which file is needed for that attack. To send the attack description to the server, you could also require attacks to specify --config=..., so that you can grab the whole config file (FIXME: What if that file uses includes) instead of reading/parsing the contents of the section(s) required and sending that contents. For naming attacks, files, and so on: You could generate a checksum (sha1sum ...) on the contents, and use (part of) that as the name for storage on the server. I'll have to stop for now. 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.