Page 1 of 1

als nicht-root Script mit Root-rechten ausführen

Posted: 2003-11-16 19:49
by fuchsmi
Hallo!
Ich habe z.B. ein Script "beispiel.sh" (rwxrwxr-x, User root Group root), mit folgendem Inhalt:

Code: Select all

#/bin/sh
pkill -1 named
wie kann ich erreichen dass ein nicht-root User das Scipt mit Rootrechten ohne Rootpasswort ausführen kann?

michi

Re: als nicht-root Script mit Root-rechten ausführen

Posted: 2003-11-16 19:51
by oxygen
Entweder per su, sudo oder per suid.

Re: als nicht-root Script mit Root-rechten ausführen

Posted: 2003-11-16 20:10
by wirsing
SUID funktioniert nicht, da es sich um ein Script handelt. Bei Perl gibt es dann den Mechanismus suidperl, der das wieder ermöglicht, aber bei bash?

Re: als nicht-root Script mit Root-rechten ausführen

Posted: 2003-11-16 20:17
by oxygen
Klar geht das mit suid. chmod +xs beispiel.sh und schon kann jeder named reloaden.

Re: als nicht-root Script mit Root-rechten ausführen

Posted: 2003-11-16 20:56
by rootmaster
øxygen wrote:Klar geht das mit suid. chmod +xs beispiel.sh und schon kann jeder named reloaden.
bei shellscripten ist das suid ohne wirkung, da sie nur sehr schwer abzusichern wären (race-conditions etc.)

ein simples beispiel...

lsroot.sh mit setuid root:
---
#!/bin/bash
cd /root
ls -al
---

jetzt geht jemand daher und setzt

PATH=/home/userxy/bin:$PATH; export PATH

wenn er jetzt in ~/bin ein program mit namen "ls" installiert, wird dieses mit root-rechten ausgeführt und kann böse sachen machen, wenn er lsroot.sh aufruft

"back to the roots"

Re: als nicht-root Script mit Root-rechten ausführen

Posted: 2003-11-16 21:32
by boozedǃ
Interessante Ausführung, rootmaster. :-)

Re: als nicht-root Script mit Root-rechten ausführen

Posted: 2003-11-16 21:34
by captaincrunch
Daher : su oder sudo