problem so suid

Sekcia: Aplikácie & Desktop 24.02.2008 | 20:18
Avatar Frantisek Klabzuba Debian  Používateľ
asi nespravne chapem suid:
$ cat ./pokus
#!/bin/bash
echo "Ty si $USER"
wc -l /etc/shadow

$ chmod 755 ./pokus

$ ./pokus
Ty si dvh
wc: /etc/shadow: Permission denied

Teraz ako root:
# ./pokus
Ty si root
38 /etc/shadow
Nastavim suid
# chown root:root ./pokus 
# chmod 755 ./pokus
# chmod +s ./pokus
# ls -la ./pokus 
-rwsr-sr-x 1 root root 48 2008-02-24 19:11 ./pokus
# ./pokus
Ty si root
38 /etc/shadow

Teraz ako obyc user
$ ls -la pokus 
-rwsr-sr-x 1 root root 48 2008-02-24 19:11 pokus
$ ./pokus 
Ty si dvh
wc: /etc/shadow: Permission denied

Ked je tam suid, nemalo by to spustene pod obyc userom vypisat to ako keby som to spustil ako root?
    • Re: problem so suid 24.02.2008 | 21:30
      still   Návštevník
      Nie, pretoze suid sa na skripty nevstahuje - priliz velke bezpecnostne riziko.
      • Re: problem so suid 25.02.2008 | 19:57
        Avatar uid0 Debian  Používateľ
        typicky wrapper
        #define REAL_PATH "/bla/bla/bla"
        int main(int ac, char **av)
        {
                execv(REAL_PATH, av);
        }
        
        Debian. apt-get into it…