Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Fri, 10 May 2013 19:03:41 +0530
From: Dhiru Kholia <>
Subject: Re: Please help a beginner :)

On Thu, May 9, 2013 at 4:01 PM, Alexandre Coutouly
<> wrote:
> Could you tell me please what is this:
> bdd.kdbx:$keepass$*2*6000*222*b469890d.

john doesn't like raw / unprocessed) files (like .kdbx ones). So we
extract the necessary information using keepass2john and then feed it
to john.

> This is the content of the file generated by keepass2john.
> But, I am asking what that is, is it the password (in my case test)
> encrypted with keepass format or is it something else ?

It is all the "information" we require to crack the password.

The names of the variables in KeePass code are descriptive enough.
Just look at them to see what the individual fields are.

> Also, one of your member who nicely answered my mails told me to look at
> keepass_fmt.c but I don't really manage to see which method I can use.

See keepass_fmt_plug.c and trace the flow of data (just put some print
statements). Soon enough, you will figure out how it works.

> As I catch the words generated by john in entry, I suppose I have to crypt
> them in keepass format and if what I suppose is true, compare it with what
> keepass2john generate.

Not really. I recommend reading the code again.

Some hints,

+ Look at how get_salt processes the output of keepass2john.
+ Look at how crypt_all works. Focus on stuff it requires (get_salt's
output, the password). All the interesting stuff is done in crypt_all.

if(!memcmp(out, cur_salt->contents_hash, 32))
   any_cracked = cracked[index] = 1;

See how "out" is generated.


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.