[linux-l] /etc/group neu einlesen

Steffen Dettmer steffen at dett.de
So Jan 6 03:01:46 CET 2008


* olafBuddenhagen at gmx.net wrote on Thu, Jan 03, 2008 at 21:39 +0100:
> > Unter Linux darf setgroups nur root - feature, oder?
> 
> Nicht wirklich. Natuerlich darf sich ein normaler Prozess nicht einfach
> irgendwelche Rechte holen, die der Nutzer nicht besitzt. In diesem Falle
> hat der Nutzer aber schon die zusaetzliche Gruppe; nur die laufenden
> Prozesse noch nicht! Es gibt eigentlich keinen Grund, wieso laufende
> Prozesse nicht die neue Gruppe bekommen sollten -- ist unter Linux nur
> eben aus technischen Gruenden nicht machbar.

> Unter klassischen UNIX-Systemen (einschlieszlich Linux) ist es naemlich
> meines Wissens nicht moeglich, einem laufenden Prozess zusaetzliche
> Berechtigungen zu geben. 

Aber sowas (zusätzliche Rechte) geht doch mit Linux zumindestens über
seteuid() und setguid(), oder? Obwohl das und capabilities natürlich
eine Sonderform von zusätzlichen Rechten sind, da sie ja schonmal bzw.
potentiell ständig verfügbar sind. `potentiell ständig verfügbar' macht
nun sprachlich überhaupt keinen Sinn, aber vielleicht weisst Du ja
trotzdem, was ich meine :)

> (Auszer ueber den Umweg durch Ausfuehren von suid-Programmen -- so wie
> newgrp, was im Grunde einen neuen Login zu machen scheint.)

(Damit würde natürlich ein neuer Prozess erzeugt, so dass das keine
Ausnahme in dem Sinne wäre).

> Das kann auf verschiedenen Wegen geschehen. Wenn ein Prozess zum
> Beispiel das Passwort eines anderen Users bekommt, kann er die ID dieses
> Nutzers annehmen -- so kann man zum Beispiel "su" ohne suid
> implementieren, oder einen ssh-Server.

Ja, ich könnte mir eine Art capability vorstellen, dann müssten Sachen
wie login nicht mit root-Rechten gestartet werden. Obwohl ich mich
frage, wie wichtig das ist, denn root-Rechte kann man ja u.U. auch stark
einschränken, wie bei z.B. SELinux.

> Eine andere Moeglichkeit ist, dass ein Prozess, der die zusaetzlichen
> Berechtigungen bereits hat, sie an andere Prozesse weitergeben kann. In
> dem hier Beschriebenen Fall zum Beispiel koennte man allen laufenden
> KDE-Prozessen die neue Gruppe geben.

Klingt aber ziemlich gefährlich (und nicht nur wegen dem KDE ;)).
Irgendwie fehlt dem die Eleganz der Schlichtheit. Obwohl es vielleicht
Probleme/Aufgaben gibt, wo so ein Feature viel spart...

> (Disclaimer: Ich habe nicht ausprobiert, wie gut das in der Praxis
> funktioniert; hatte bisher keinen Anlass dazu... Oder vielleicht haette
> ich sogar Anlass gehabt, habe aber nicht daran gedacht, dass es die
> Moeglichkeit gibt :-) )

Du meinst, so eine Art chown auf laufende Prozesse zu probieren? Wo
wäre sowas nützlich?

oki,

Steffen

-- 
Dieses Schreiben wurde maschinell erstellt,
es trägt daher weder Unterschrift noch Siegel.




Mehr Informationen über die Mailingliste linux-l