Thread: pg_shadow / pg_user

pg_shadow / pg_user

From
"Rudi"
Date:
Hi friends,
 
I've been learning about security using Pg lately.
Up until last night I thought system user passwords were stored safely away in pg_user.
So far I haven't been able to get any passwords out only '*******'.
Then last night was observing each system table and found that pg_shadow stores user passwords in clear text.
??
pg_shadow = clear text password
pg_user = hidden password
 
I guess this means if an intruder gets an appropriate account on the box the can view all passwords.
I had assumed that system passwords were stored hidden from all eye balls.
Sort of like apache storing http passwords in binary form in a db.
 
Is this how it is ?
 
If so I was thinking I like to know if someone tries or succeeds in querying the pg_shadow table.
I thought maybe to increase the postmaster debug level so that all sql queries are logged.
Then write a cron job to check this log and email me if it is detected that a user is attempted or did query
the pg_shadow table.
 
How does this sound ?
Am I totaly on track ?
 
Thank for your time and attention
Kind regards
Rudi.
 
 
 
 
 
 

Re: pg_shadow / pg_user

From
"Christopher Kings-Lynne"
Date:
Hi Rudi,

In the newly-released Postgres 7.2, the passwords are now MD5 encrypted
(IIRC).  I highly suggest upgrading to the new version.

Chris

-----Original Message-----
From: pgsql-sql-owner@postgresql.org
[mailto:pgsql-sql-owner@postgresql.org]On Behalf Of Rudi
Sent: Thursday, 7 February 2002 9:51 AM
To: pgsql-sql@postgresql.org
Subject: [SQL] pg_shadow / pg_user


Hi friends,

I've been learning about security using Pg lately.
Up until last night I thought system user passwords were stored safely away
in pg_user.
So far I haven't been able to get any passwords out only '*******'.
Then last night was observing each system table and found that pg_shadow
stores user passwords in clear text.
??
pg_shadow = clear text password
pg_user = hidden password

I guess this means if an intruder gets an appropriate account on the box the
can view all passwords.
I had assumed that system passwords were stored hidden from all eye balls.
Sort of like apache storing http passwords in binary form in a db.

Is this how it is ?

If so I was thinking I like to know if someone tries or succeeds in querying
the pg_shadow table.
I thought maybe to increase the postmaster debug level so that all sql
queries are logged.
Then write a cron job to check this log and email me if it is detected that
a user is attempted or did query
the pg_shadow table.

How does this sound ?
Am I totaly on track ?

Thank for your time and attention
Kind regards
Rudi.



Re: pg_shadow / pg_user

From
"Rudi"
Date:
Hi Chris,

Thanks for your reply.
That's very good news.
I am using Pg 7.0 at home for research and dev.
It's an old box. At work we are using 7.1.3

Cheers
Rudi.




----- Original Message -----
From: "Christopher Kings-Lynne" <chriskl@familyhealth.com.au>
To: "Rudi" <rudi@oasis.net.au>; <pgsql-sql@postgresql.org>
Sent: Thursday, February 07, 2002 12:05 PM
Subject: RE: [SQL] pg_shadow / pg_user


> Hi Rudi,
>
> In the newly-released Postgres 7.2, the passwords are now MD5 encrypted
> (IIRC).  I highly suggest upgrading to the new version.
>
> Chris
>
> -----Original Message-----
> From: pgsql-sql-owner@postgresql.org
> [mailto:pgsql-sql-owner@postgresql.org]On Behalf Of Rudi
> Sent: Thursday, 7 February 2002 9:51 AM
> To: pgsql-sql@postgresql.org
> Subject: [SQL] pg_shadow / pg_user
>
>
> Hi friends,
>
> I've been learning about security using Pg lately.
> Up until last night I thought system user passwords were stored safely
away
> in pg_user.
> So far I haven't been able to get any passwords out only '*******'.
> Then last night was observing each system table and found that pg_shadow
> stores user passwords in clear text.
> ??
> pg_shadow = clear text password
> pg_user = hidden password
>
> I guess this means if an intruder gets an appropriate account on the box
the
> can view all passwords.
> I had assumed that system passwords were stored hidden from all eye balls.
> Sort of like apache storing http passwords in binary form in a db.
>
> Is this how it is ?
>
> If so I was thinking I like to know if someone tries or succeeds in
querying
> the pg_shadow table.
> I thought maybe to increase the postmaster debug level so that all sql
> queries are logged.
> Then write a cron job to check this log and email me if it is detected
that
> a user is attempted or did query
> the pg_shadow table.
>
> How does this sound ?
> Am I totaly on track ?
>
> Thank for your time and attention
> Kind regards
> Rudi.



Re: pg_shadow / pg_user

From
Bruce Momjian
Date:
You are correct.  Pre-7.2 required this because of the way passwords
from the client were comparied.  7.2 has a postgresql.conf setting
"password_encryption" which controls whether passwords are stored on the
server encrypted or plaintext.  The only reason this is false in 7.2 by
default is that once it is true, you can't communicate with pre-7.2
clients.  There is also an ENCRYPTED option to the PASSWORD clause of
CREATE USER that forces the password to be stored encrypted.  Again,
works fine with 7.2 clients but not with 7.1 and earlier.

---------------------------------------------------------------------------

Rudi wrote:
> Hi friends,
> 
> I've been learning about security using Pg lately.
> Up until last night I thought system user passwords were stored safely away in pg_user. 
> So far I haven't been able to get any passwords out only '*******'.
> Then last night was observing each system table and found that pg_shadow stores user passwords in clear text.
> ??
> pg_shadow = clear text password
> pg_user = hidden password
> 
> I guess this means if an intruder gets an appropriate account on the box the can view all passwords.
> I had assumed that system passwords were stored hidden from all eye balls.
> Sort of like apache storing http passwords in binary form in a db.
> 
> Is this how it is ?
> 
> If so I was thinking I like to know if someone tries or succeeds in querying the pg_shadow table.
> I thought maybe to increase the postmaster debug level so that all sql queries are logged.
> Then write a cron job to check this log and email me if it is detected that a user is attempted or did query 
> the pg_shadow table.
> 
> How does this sound ?
> Am I totaly on track ?
> 
> Thank for your time and attention
> Kind regards
> Rudi.
> 
> 
> 
> 
> 
> 

--  Bruce Momjian                        |  http://candle.pha.pa.us pgman@candle.pha.pa.us               |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


Nested Transactions

From
John Hasler
Date:
I can't find the changelog for 7.2.  Did nested transactions make it in?
-- 
John Hasler
john@dhh.gt.org
Dancing Horse Hill
Elmwood, Wisconsin


Re: Nested Transactions

From
Bruce Momjian
Date:
John Hasler wrote:
> I can't find the changelog for 7.2.  Did nested transactions make it in?

No, sorry.

--  Bruce Momjian                        |  http://candle.pha.pa.us pgman@candle.pha.pa.us               |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026