Re: Salt in encrypted password in pg_shadow - Mailing list pgsql-general

From Greg Stark
Subject Re: Salt in encrypted password in pg_shadow
Date
Msg-id 87isamuajh.fsf@stark.xeocode.com
Whole thread Raw
In response to Salt in encrypted password in pg_shadow  (David Garamond <lists@zara.6.isreserved.com>)
List pgsql-general
Chris Travers <chris@metatrontech.com> writes:

> This only works because you have a theoretical delay between incorrect
> password attempts, so dictionary attacks directly are supposed to be
> difficult to impliment. I say theoretically because a smart attacker will
> use a program to open multiple telnet connections simultaneously to try a
> large number of passwords at once.

No, this is irrelevant to salts. People actually trying to log in is not the
threat model that salts are there to protect. This is not what is meant by
"dictionary attack".

What is meant by dictionary attack in the context of hashed passwords is
someone generating a "dictionary" of hashes for every guessable password. Then
they can take any hash they find in a password database and look up in their
"dictionary" a valid password it.

Salts prevent this by forcing someone to generate 2^16 possible hashes for
every possible guessable password. Essentially making them hash every
guessable password again anew for each user attacked.

They're only relevant for attackers who have access to the password database.
Not for attackers who are just knocking on the door over and over.

The weakness described would apply to someone who had access to many
pg_shadows from many installations. They could check every "postgres" user
against their dictionary quickly. Or an unscrupulous dba could assign
usernames starting with the same two letters for everyone and then guess
people's passwords by looking up the hashes in a dictionary.

--
greg

pgsql-general by date:

Previous
From: Aaron Birkland
Date:
Subject: Re: Memory exhausted (leak?)
Next
From: Bruce Momjian
Date:
Subject: Re: So, would it make sense to do something like a CRC on