Dropbox und Rootrechte

17/04/2015 - 13:25 von Paul-Wilhelm Hermsen | Report spam
Ich habe da einen Informationsbedarf!
Wieso làuft Dropbox mit Rootrechten? Wie kann überhaupt ein Programm mit
Rootrechten laufen, wenn der User nicht als root angemeldet ist, von
Diensten einmal abgesehen.
 

Lesen sie die antworten

#1 Thomas Kaiser
17/04/2015 - 14:12 | Warnen spam
Paul-Wilhelm Hermsen schrieb in <news:mgqqjj$pqo$
Ich habe da einen Informationsbedarf!
Wieso làuft Dropbox mit Rootrechten?



Das ist eine Frage, die Du Dropbox bzw. Dir selbst stellen solltest. Für
das, was das Programm eigentlich macht (Sachen im Users-Verzeichnis des
angemeldeten Users in der Gegend herumsyncen) braucht's das jedenfalls
mal nicht. Dafür reicht ein Andocken an den Finder (was Dropbox auch
noch zusàtzlich und ebenso als root macht!) oder Nutzen nicht der
Kernel-FSEvent-Schnittstelle sondern des FSEvents-API als eben der
angemeldete User (da schlagen dann auch nur Events auf, die dem User
"gehören")

Wie kann überhaupt ein Programm mit Rootrechten laufen, wenn der User
nicht als root angemeldet ist



SUID-Bit: Im konkreten Fall findest Du das dort, wo der aktuelle Kram
von denen liegt (in /Library/DropboxHelperTools) wie folgt:

find /Library/DropboxHelperTools \( -perm -004000 -o -perm -002000 \) -exec ls -la {} \;

Das sind dann dbfseventsd, FinderLoadBundle und DropboxHelperInstaller.
Nichts davon müsste/sollte setuid/root laufen.

von Diensten einmal abgesehen.



Das wàre die Alternative: Bei der Installation bzw. dem erstem Start von
dem Dropbox-Sync-Dings fragt es nach Admin-Logon-Credentials und startet
dann den dbfseventsd einfach per LaunchDaemon. Aber wie schon geschrieben:

Einem Programm, das mit einem Bein -- vor einem selbst verschlüsselt mit
US-Servern kommunizierend -- am Internet hàngt und das als root làuft,
darf man nicht vertrauen. Das schmeißt man *sofort* von der Platte.

Nebenbei: Es ist absolut nichts Ungewöhnliches, dass ein Programm, das
im normalen Benutzerkontext làuft, ab und an mal erweiterte Privilegien
braucht (und nach Eingabe von Admin-Logon-Credentials dann auch
zugestanden bekommt). Nur... der Weg dahin führt garantiert nicht über
setuid, da das unsichere und vor allem mißbrauchbare Scheize ist. Apple
stellte über die Jahre verschiedene APIs bereit, mit denen man sowas in
sicherer Art und Weise erledigen kann, siehe SMJobBless:

http://atnan.com/blog/2012/02/29/mo...-plus-xpc/
https://developer.apple.com/library...Intro.html

Gruss,

Thomas

Ähnliche fragen