> Ok, the example wasn't good.
> It was a long day for me, thus, please forgive me that slip-up.
>
This is certainly a much better example, but:

> On example, many httpd servers works with the same privilages,
> it means that you can read any CGI temporary file, and other
> files readable only by CGI scripts.

httpd servers shouldn't be running as user nobody they should be
running as user www or something similar.

> I think about a case where a CGI script saves some important
> information in a temporary file, like PHP do with the sessions:
>
>  -rw------- 1 nobody nobody    329 May 14 12:16  /tmp/sess_0cd156a633

The bug is in one of PHP/CGI/httpd NOT in in.fingerd.

nobody has a very special meaning, it is the user id that root gets mapped
to over NFS.  It was created for that reason and that reason alone, it
is NOT a general purpose account to run daemons or cgi or anything else
under.  If applications need to run as a user other than root then they
should have a user for that application, eg Oracle DB server runs as
the user oracle.

in.fingerd is a special case and it is running as nobody explicitly because
there should be no sensitive files that are owned by the nobody user.  If
you have a system where there are local files that are owned by nobody
then you have a configuration error or a bug in another application but it
isn't in.fingerd's problem.

--
Darren J Moffat

Reply via email to