[svlug] Giving admin. power to a web mgmt. interface
Ivan Passos
lists at cyclades.com
Tue Nov 13 11:55:02 PST 2001
Hello,
Now I'm coming back to this subject, so please see below.
On Sat, 3 Nov 2001, Marc MERLIN wrote:
>
> Write the must be root part in a small perl script, make that suid root,
> make the apache deamon part or a special group, and make the perl script
> root.thatgroup 2750
As this was the most common (and most sound) solution, that's what I'm
goinf for. So, I tried that and ...
$ ls -l /tmp/test-scr
total 4
-rwsr-x--- 1 root staff 31 Nov 13 11:36 test-scr
$ cat /tmp/test-scr
#!/bin/sh
CMD=$1
$CMD
exit $?
$ ls -ld /root
drwxr-xr-x 8 root root 4096 Nov 13 11:36 /root
$ /tmp/test-scr "ls -l /root"
total 11754
-rw-r--r-- 1 root root 280 Nov 9 16:51 backup.files
-rwx------ 1 root root 779 Nov 7 18:00 backup.sh
-rw-r--r-- 1 root root 1181 Nov 13 10:38 lala
drwx------ 2 root root 4096 Oct 10 10:23 mail
drwxr-xr-x 4 root root 4096 Nov 7 12:36 tmp
$ /tmp/test-scr "cp /root/lala /root/lele"
cp: cannot create regular file `/root/lele': Permission denied
$
Why am I not being able to create the file /root/lele, if the script is
supposed to be run as root (as it has the setUID bit) and the /root
directory has write permission to root (of course :)?? I mean, if I'm
really root I can execute the command with no problems, so why can't the
script do it??
Thanks in advance for any insight!!
Later,
Ivan
P.S.: Marc, I know you said 2750, but I think that was probably a typo and
you meant 4750. Anyhow, I tried with 2750, 4750 and 6750, with the same
results. If that's all wrong, please let me know.
P.S.2: I know I can use xargs instead to avoid the need for double quotes
when calling the script. This was just a quick test (the final version
will have much more than that ...).
More information about the svlug
mailing list