Das ist eine vernünftige Sache zu berücksichtigen: Andere Plattformen wie MacOS-X und Anwendungen wie Chrome verwenden Sandboxing, um ganze Anwendungen oder Teile von Anwendungen so auszuführen, dass sie nicht mehr die volle Kontrolle über das haben, was Sie haben.
Wenn Sie also eine Anwendung als sich selbst starten, haben Sie als Antwort auf die Antwort 1 den gleichen Zugriff auf das, was Sie tun: jede Datei, die Sie bearbeiten können, sie kann bearbeiten und so weiter. Die einzige Ausnahme ist, wenn die Anwendung die Berechtigungen einschränkt.
In Antwort auf Punkt 2 sollten Sie sich wahrscheinlich vage mehr Sorgen machen, als Sie sich aktiv darum kümmern . Schließlich hat jede einzelne Anwendung, die Sie ausführen, denselben Zugriff - das einzige, was DropBox unterscheidet, ist, dass es von einer anderen Person als der Upstream-Distribution kam.
Also, 3: Kannst du das beheben? Die Antwort lautet "wahrscheinlich nicht". Es ist nicht so, dass es unmöglich ist, es ist wahrscheinlich schwierig, dies auf eine Weise zu tun, die Ihren Wünschen nach Verwendung der Anwendungen oder Dienste entspricht.
Wenn Sie chroot verwenden, können Sie so tun, als gäbe es ein anderes "Wurzelverzeichnis" als das echte. Dadurch werden Anwendungen (wie Dropbox) von Ihrem echten Root-Server isoliert - und Sie können möglicherweise der Gefahr entgehen, dass der Rest Ihres Home-Verzeichnisses gelesen werden kann. (Fügen Sie einen Symlink von ~/.dropbox
zu hinzu ~/chroot/whatever/home/you/.dropbox
und es ist nicht einmal so unpraktisch).
Sie müssen jedoch root sein oder ein Tool wie schroot verwenden, um den Zugriff auf die Ausführung der Anwendung zu verwalten. Die Chroot-Datei isoliert nur einige Teile der Systemdateien. Anwendungen mit root innerhalb, die noch nach außen sehen oder entkommen können. Verschiedene andere Ressourcen (IP-Ports, Pids usw.) werden weiterhin gemeinsam genutzt.
Ich wette auch, dass DropBox eine UI-Komponente hat, und das funktioniert nicht gut chrootiert. Selbst wenn dies der Fall ist, schadet diese Einschränkung anderen Anwendungen.
Die Alternative, eine setuid- Anwendung, ist eine Möglichkeit, mit der Sie sagen können: "Unabhängig davon, wer dies ausführt, starten Sie es als diesen anderen Benutzer und nicht als den Benutzer, der es gestartet hat".
Dies wird meistens verwendet, um Anwendungen zuzulassen, die Sie als normaler Benutzer als root ausführen können, beispielsweise sudo. Es kann jedoch auch den Benutzer oder die Gruppe des Prozesses auf einen nicht privilegierten Benutzer setzen.
Das Problem dabei ist, dass es als ein anderer Benutzer ausgeführt wird - so wie Sie es mit sudo -u another-user dropbox
oder was auch immer ausgeführt haben. Dies bedeutet, dass es keinen Zugriff auf Ihr Home-Verzeichnis hat und Sie ohne hartes Arbeiten keinen Zugriff auf das Home-Verzeichnis der anderen Benutzer haben.
Sie können das umgehen, aber im Normalfall ist das weder trivial noch praktisch. Normalerweise möchten Sie eine Gruppe freigeben und versuchen zu arrangieren, dass die Dateien, die es lesen kann, dieser Gruppe gehören und nicht Ihrer Standardgruppe. Dies ist selbst bei setuid-Verzeichnissen (die die Gruppe oder den Eigentümer der unter ihnen erstellten Dateien ändern) nicht trivial, zum Teil, weil Sie Ihre umask verwalten müssen, was unter Linux ein Problem ist.
Schließlich können Sie AppArmor oder SELinux verwenden, um die Anwendung zu sichern. Ich glaube, dass AppArmor das ist, was Ubuntu als bevorzugte Option gewählt hat. Es wird zwar überzeugend argumentiert, dass es weniger sicher ist als SELinux, aber es ist auch konzeptionell einfacher, auf sichtbaren Namen und Pfaden zu basieren als auf sicheren Labels.
Dies könnte eine effektive Möglichkeit sein, um Ihre Sicherheit zu verbessern, ohne die komplexeren Pfade durchgehen zu müssen. Theoretisch sollte es Ihnen möglich sein, DropBox auf genau den ~/.dropbox
Ordner und nichts anderes zu beschränken, ohne als anderer Benutzer ausgeführt zu werden.
Wenn Sie Ihre Sicherheit dort wirklich verbessern möchten, schauen Sie sich den Chroot-Pfad an. Dies ist der am wenigsten schmerzhafte Weg, um die Sicherheit von DropBox auf Ubuntu zu verbessern - weitaus weniger als eine Setuid-Anwendung.
Die Chancen sind jedoch das größte Risiko für die Exposition eines Angestellten von DropBox. Wir wissen, dass sie selbst zwischen Benutzern deduplizieren, sodass ihre Systeme den unverschlüsselten Inhalt sehen können, was bedeutet, dass jemand, der für sie arbeitet, das Gleiche tun kann.
Sie können stattdessen encfs verwenden, um Dateien zu verschlüsseln, bevor sie an DropBox gesendet werden.