"We are back" « oc.at

Script für user ausführbar machen

alexsb 09.04.2004 - 16:36 700 4
Posts

alexsb

hmm
Avatar
Registered: Jun 2001
Location: near Graz
Posts: 1566
Hi,
ich habe ein (winzig kleines) Skript geschrieben, das einige commandos enthält für die man root rechte braucht. Ich möchte dieses Script aber als user ausführen dürfen. Das Skript habe ich nach /usr/sbin kopiert.

Wie kann ich das machen?

tia

Alex

atrox

in fairy dust... I trust!
Avatar
Registered: Sep 2002
Location: HTTP/1.1 404
Posts: 2782
suid bit bei shell scripts setzen ist eine ganz schlechte idee, deshalb lieber mit sudo oder super die entsprechenden aufrufe skript erlauben, bzw das ganze skript per sudo/super aufrufen lassen.

alexsb

hmm
Avatar
Registered: Jun 2001
Location: near Graz
Posts: 1566
ich will eigentlich nur meine netzwerkkarte, wlankarte, samba server usw starten ohne das ich mich als root einloggen muss bzw lang passwörter eingebe

wenn ich sudo verwende muss ich wieder ein passwort eingeben (natürlich nicht das root) und das dauer lange

wie setzte ich das suid bit? mit chmod 4000 file ?
ist das ein sicherheitsproblem für die oben genannten 3 operationen?

disorgoth

Bloody Newbie
Registered: Jun 2003
Location: /dev/null
Posts: 7
ohne oktal schreibweise einfach chmod {u|g|o}+s <file>

atrox

in fairy dust... I trust!
Avatar
Registered: Sep 2002
Location: HTTP/1.1 404
Posts: 2782
afaik kann man sudo und super so verwenden, daß kein passwort notwendig ist, man muß den entsprechenden befehl, bzw das entsprechende skript (besser) in der jeweiligen config für die user freischalten.

SUID bit ist deshalb schlecht, weil die user die ausführungsumgebung der scripts beeinflussen können... zb mit variablen, wie $LD_PRELOAD, $PATH, $IFS, usw... all diese funktionen könnten sich leicht ausnutzen lassen, um <suiduser>-rechte zu erlangen, mitunter auch root.
Bearbeitet von atrox am 11.04.2004, 01:04
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz