Toon posts:

[Linux / *BSD] SUID binary + root identificatie

Pagina: 1
Acties:

Verwijderd

Topicstarter
Simpel gezegd: is het mogelijk een programma te schrijven dat een ander proces forked en ervoor zorgt dat het geforkte proces denkt door de "root" user te worden aangeroepen? En dat terwijl het oorspronkelijke programma door een normale gebruiker werd aangeroepen?

Ik heb namelijk het volgende probleem: ik wil dat standaard gebruikers op mijn server het "lpc topq" commando kunnen gebruiken, maar het is een "privileged command", wat zoveel betekent als dat je er "root" voor moet zijn.

Met betrekking tot de veiligheid wil ik nu dus een klein programma schrijven wat niets anders kan als dit "lpc topq" proces uit te voeren als root.

Als voorbeeld voor het forken van een programma heb ik het volgende programma gezien. Kan ik hier met seteuid() en getuid() niet iets uitspoken dat het werkt?

Het lukt me nog niet op het moment. Ik maak van het programma uiteraard een suid-binary.

Help! :+

[edit]
Toevoeging: lpc maakt gebruik van getuid() om mij te identificeren.

Verwijderd

Topicstarter
Probleem opgelost! :D :D :D

Het is: setuid(geteuid());

En dan op het programma:

# chown root.root myprog
# chmod +s myprog

En daarna werkt het :)

  • windancer
  • Registratie: Maart 2000
  • Laatst online: 08-09 01:06
$ man sudo

is your friend :)