Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 1 Aug 2012 17:28:11 -0500
From: "jfoug" <jfoug@....net>
To: <john-dev@...ts.openwall.com>
Subject: RE: Output for dynamic formats in --list=format-details (and --list=format-all-details

I 

>From: Frank Dittrich [mailto:frank_dittrich@...mail.com]
>
>> This may have been more for historical
>> compatibility than anything else.  If all that it was is
>> -format=dynamic no longer works, then I am not too concerned.
>
>You are right,k without changing it, you can use --test --format=dynamic
>ad get all dynamic formats tested.
>
>
>BTW: What change would be needed to make the following command test
>valid() for dynamic formats as well?
>
>$ ./john hashes-all.txt-1.mscash2
>Warning: detected hash type "lm", but the string is also recognized as
>"lotus5"
> clip.....

I do not think dynamic checks for 'raw' hashes, without being forced to.
The problem with dynamic, is that for every raw hash, it will simply match
almost every single dynamic.

Yes, we could change that, but why?  That would be MUCH more confusing than
it is today.

Here is todays 'listing' for a raw hex-32 string:

$ ../run/john in
Warning: detected hash type "lm", but the string is also recognized as
"lotus5"
Use the "--format=lotus5" option to force loading these as that type instead
Warning: detected hash type "lm", but the string is also recognized as
"mscash"
Use the "--format=mscash" option to force loading these as that type instead
Warning: detected hash type "lm", but the string is also recognized as
"mscash2"
Use the "--format=mscash2" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"raw-md4"
Use the "--format=raw-md4" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"raw-md5"
Use the "--format=raw-md5" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"raw-md5u"
Use the "--format=raw-md5u" option to force loading these as that type
instead
Loaded 2 password hashes with no different salts (LM DES [128/128 BS SSE2])
guesses: 0  time: 0:00:00:09 0.00% (3)  c/s: 21035K  trying: BLYENIO -
BLYENOV
Session aborted

Here is the change for dynamic with testing 'on' for cases OTHER than single
format specified:

$ ../run/john in
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_0"
Use the "--format=dynamic_0" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_2"
Use the "--format=dynamic_2" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_3"
Use the "--format=dynamic_3" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_15"
Use the "--format=dynamic_15" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_19"
Use the "--format=dynamic_19" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_22"
Use the "--format=dynamic_22" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_29"
Use the "--format=dynamic_29" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_30"
Use the "--format=dynamic_30" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_33"
Use the "--format=dynamic_33" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_34"
Use the "--format=dynamic_34" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_1001"
Use the "--format=dynamic_1001" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_1002"
Use the "--format=dynamic_1002" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_1003"
Use the "--format=dynamic_1003" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_1004"
Use the "--format=dynamic_1004" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_1005"
Use the "--format=dynamic_1005" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_1006"
Use the "--format=dynamic_1006" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"dynamic_1010"
Use the "--format=dynamic_1010" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"lotus5"
Use the "--format=lotus5" option to force loading these as that type instead
Warning: detected hash type "lm", but the string is also recognized as
"mscash"
Use the "--format=mscash" option to force loading these as that type instead
Warning: detected hash type "lm", but the string is also recognized as
"mscash2"
Use the "--format=mscash2" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"raw-md4"
Use the "--format=raw-md4" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"raw-md5"
Use the "--format=raw-md5" option to force loading these as that type
instead
Warning: detected hash type "lm", but the string is also recognized as
"raw-md5u"
Use the "--format=raw-md5u" option to force loading these as that type
instead
Loaded 2 password hashes with no different salts (LM DES [128/128 BS SSE2])
guesses: 0  time: 0:00:00:01 0.00% (3)  c/s: 920522  trying: K5JK - SAMUTT
Session aborted


I do not find this 2nd to be any 'help'.  We 'can' do it this way, but
damn.....


TO make this happen, simply change this line, at the top part of
dynamic_fmt.c (static data)

  // If we are run in 'specific' mode (say, -format=dynamic
-subformat=dynamic_0, then we
  // want to 'allow' raw hashes to be 'valid'. This is how we will do this.
We have a boolean
  // that if set to true, we will perform a 1 time check within the valid
function. If at
  // that time we find out that we are cracking (or showing, etc) that we
will accept lines
  // that are either format of $dynamic_0$hhhhhh...32 or simply in the
format of hhhhhhh..32
- static int m_allow_rawhash_fixup = 0;
+ static int m_allow_rawhash_fixup = 1;

This 'normally' gets set later on, in the part of code which prepares the
array of
format structures (in the dynamic_Register_formats() function).  Setting it
to 1
in the static data declaration, simply makes it turned on no matter what.

I personally think it is the wrong way to make the code, and much more
confusing for
the end user.

Jim.

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.