root-Rechte für C++ Programm
-
Hi, ich bins wieder.
Kann mir jemand sagen, wie ich es in C++ programmiere, dass ein C++ Programm das irgendein User ausführt, bestimmte Systemprogramme (die root-Rechte brauchen) starten kann?
kurz gesagt: Wie gebe ich meinem C++ Programm root-Rechte?
-
ähh, garnet!?
dann wär ja der ganze sinn der root-rechte weg, wenn jedes programm selbst bestimmen könnte, was es darf und was nicht...
-
Wir währs mit
su root
./meinProgramm
su usernameDann hat dein Prog. Rootrechte
-
chown root && chmod +s
-
oder sudo
-
Gib deinem Programm das SUID-Bit. Und in Programm solltest du dann nur für die Zeit, indem ROOT-Rechte gebraucht werden, den User zu ROOT wechseln und danach wieder zum Original-ID wechseln, sprich: Lass das Programm nicht die ganze Zeit unter ROOT-Rechte laufen <- Angriffspunkt wird so kleiner.