Bugtraq mailing list archives

Re: majordomo local exploit


From: spidey () IRO UMONTREAL CA (Spidey)
Date: Wed, 29 Dec 1999 11:29:03 -0500


It would be important to note that on POSIX systems, the wrapper is
compiled to setuid() to the majordomo user, so this won't give a root
shell...

On other systems, you are advised to install majordomo suid 'majordomo'
instead of root.

From the "INSTALL" file:

3) Edit the Makefile, defining where Perl and the C compiler are, the
   Majordomo home directory (chosen in step 2), the location of the
   manual pages, the user and group that Majordomo will run under, and
   the permissions for the various files and directories. If running on
   a non-POSIX system, comment out the POSIX SECTION in the Makefile.
   Under POSIX, wrapper must be setuid "root", even if the programs will
   be running as something other than "root" (i.e., "daemon"), or it
   won't work. The symptom of this is that Perl starts complaining about
   security violations and "unsafe usages".

Hum... In fact, it is not really written clearly that one non-POSIX
system should not install the wrapper suid root, but that's how I see it
since:

#ifdef POSIX_GID
    setgid(POSIX_GID);
#else
    setgid(getegid());
#endif

#ifdef POSIX_UID
    setuid(POSIX_UID);
#else
    setuid(geteuid());
#endif

I think I will warn majordomo about this...

AnarCat

Si l'image donne l'illusion de savoir
C'est que l'adage pretend que pour croire,
L'important ne serait que de voir

Lofofora


Current thread: