Toon posts:

hdparm + SetUID prob

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik (=linux n00b) wil een spindown scriptje maken waarin 'hdparm -y /dev/hda' staat. Okay, scriptje maken lukt nog :) . Maar hdparm mag alleen als root uitgevoerd worden, dus vervolgens:

code:
1
2
chown root:ikku spindown
chmod 4750 spindown


dit resulteert in
code:
1
-rwsr-x---    1 root     ikku          25 Nov 18 19:57 spindown*


Lijkt volgens mij wel ok, als ik scriptje als root uitvoer werkt ie prima, maar als ikku geeft ie '/dev/hda: Permission denied'

huh, hoe zit dat?? Wat zie ik over het hoofd?

  • deadinspace
  • Registratie: Juni 2001
  • Laatst online: 14:06

deadinspace

The what goes where now?

GNU/Linux negeert SETUID en SETGID flags op shellscripts, en de meeste (vrijwel alle?) andere Unices doen dit gelukkig ook. Dat komt omdat SET{U,G}ID shellscripts makkelijk zo te beinvloeden zijn dat iedereen die die hem uit mag voeren een root shell kan krijgen.

Om te bereiken wat jij wilt kun je perl-suid gebruiken (om -via een kleine omweg- suid perl scripts te maken), of sudo gebruiken. Met sudo kun je erg fine-grained instellen dat bepaalde users bepaalde commando's als bepaalde andere users mogen uitvoeren.

Sudo zou mijn voorkeur hebben.

  • Bergen
  • Registratie: Maart 2001
  • Laatst online: 05-05 10:41

Bergen

Spellingscontroleur

Je wilt hem starten als ikku? Ikku is toch een groepsnaam en niet een usernaam? Of weet ik iets niet wat jullie wel weten? :?

Never mind, ik had 't setuid stukje gemist. 8)7 Het is laat...

Verwijderd

Topicstarter
deadinspace schreef op 19 November 2002 @ 01:31:
GNU/Linux negeert SETUID en SETGID flags op shellscripts, en de meeste (vrijwel alle?) andere Unices doen dit gelukkig ook. Dat komt omdat SET{U,G}ID shellscripts makkelijk zo te beinvloeden zijn dat iedereen die die hem uit mag voeren een root shell kan krijgen.

Om te bereiken wat jij wilt kun je perl-suid gebruiken (om -via een kleine omweg- suid perl scripts te maken), of sudo gebruiken. Met sudo kun je erg fine-grained instellen dat bepaalde users bepaalde commando's als bepaalde andere users mogen uitvoeren.

Sudo zou mijn voorkeur hebben.
Is dat nieuw dan ofzo? Bij mn vorige install (mandrake 7, weet niet welke kernel daar bij zit, nu heb ik mandrake 9 erop staan), heb ik (volgens mij :) ) een zelfde soort probleem opgelost door zo'n scriptje als root uit te laten voeren en dat ging toen perfect...
Maar goed, bedankt voor die sudo tip, k zal er vanavond eens mee gaan spelen!

  • deadinspace
  • Registratie: Juni 2001
  • Laatst online: 14:06

deadinspace

The what goes where now?

Je kunt scripts wel als root (laten) uitvoeren, bijvoorbeeld vanuit roots crontab, de systemwide crontabs, de initsctips, etc, etc... Maar setuid en setgid flags op shellscripts zouden afaik in geen enkele versie effect moeten hebben.