Re: [COMMITTERS] pgsql/src/bin/initdb initdb.sh - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: [COMMITTERS] pgsql/src/bin/initdb initdb.sh
Date
Msg-id 200106242118.f5OLIY700884@candle.pha.pa.us
Whole thread Raw
Responses Re: [COMMITTERS] pgsql/src/bin/initdb initdb.sh  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-hackers
> Bruce Momjian writes:
> 
> > This brings up a question.  If I have pid 333 and someone creates a file
> > world-writable called /tmp/333, and I go and do:
> >
> >     cat file >/tmp/$$
> >
> > isn't another user now able to modify those temp file contents.  Is that
> > the insecurity you mentioned Peter, and if so, how do you prevent this?
> 
> That is one possibility.  Another exploit is with a symlink from /tmp/333
> to a file you want to overwrite.  This is more fun with root, but it's
> still not a good idea here.
> 
> To securely create a temp file in shell you need to use mktemp(1), or do
> something like (umask 077 && mkdir $TMPDIR/$$) to create a subdirectory.
> Needless to say, it's tricky.

Wow, that symlink is a bad one.  I don't see mktemp(1) on bsd/os, only
mktemp(3).  I do see it on FreeBSD.

Good thing I don't have other shell users on my system.  I do cat
>/tmp/$$ all the time in scripts.

--  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
 


pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Why would this use 600Meg of VM?
Next
From: Alex Pilosov
Date:
Subject: Re: [PATCH] by request: base64 for bytea