Angesichts der Nachricht, dass es jetzt eine Ransomware für Mac in freier Wildbahn gibt , habe ich über die Sicherheit meiner Zeitmaschinen-Backups nachgedacht.
Berechtigungen
Zuerst habe ich mir die Berechtigungen der Dateien angesehen, die sich auf meiner Zeitkapsel befinden, und zwar die folgenden:
Datenverzeichnis
Benutzer (unbekannt) Lesen & Schreiben
Gruppe (jeder) Lesen & Schreiben
Einzelne Sparsebundles pro gesichertem Computer innerhalb des Datenverzeichnisses
Benutzer (unbekannt) Lesen & Schreiben
Gruppe (Mitarbeiter) Lesen & Schreiben
Gruppe (jeder) Lesen & Schreiben
Hier scheint es Raum für Verbesserungen zu geben. Erstens verstehe ich nicht, warum ein unbekannter Benutzer aufgeführt ist. Gibt es dafür einen Grund oder kann ich diesen Artikel löschen? Zweitens: Gibt es eine Notwendigkeit, „jeder“ und „Mitarbeitern“ Lese- und Schreibberechtigungen zu erteilen?
Wenn ich das richtig verstehe, werden Time Machine-Sicherungen vom gesicherten Prozess ausgeführt, der auf meinem Computer als Benutzer root ausgeführt wird . Es scheint also, dass nur der Root- Benutzer Lese- und Schreibzugriff haben muss. Ist das korrekt? Kann ich die vorhandenen Berechtigungen löschen und den Benutzer „root“ mit Lese- und Schreibberechtigungen hinzufügen?
Würde diese Änderung schließlich eine weitere Verteidigungslinie gegen Ransomware darstellen? Wenn eine Ransomware als normaler Benutzer X läuft und nicht root wird, könnte sie alle Dateien verschlüsseln, auf die X Schreibzugriff hat, aber sie könnte keine Time-Machine-Backups verschlüsseln, da nur root darauf Zugriff hat. Ist diese Linie oder Argumentation richtig?
Ausführen von OSX El Capitan, 10.11.3.
Update nach Diskussion mit bmike (siehe unten)
Während einer tatsächlichen Time Machine-Sicherung stellt backupd zwei Freigaben bereit. /Volumes/Whatever und /Volumes/Time Machine Backups. Während Ersteres nicht von einem Nicht-Root-Benutzer aufgerufen werden kann, ist Letzteres möglich. Es ist zwar möglich, ACLs von Dateien zu löschen und anschließend zu überschreiben. Das Sicherheitsproblem ist also weit offen.
Ursprüngliche Antwort
Als ich ein wenig mehr über das zugrunde liegende Montagesystem nachdachte, kam ich zu dem Schluss, dass meine ursprüngliche Frage eine fehlgeleitete Annahme enthielt, deren Entfernung die Frage vielleicht obsolet macht. Ich beschloss, eine Antwort zu schreiben, anstatt die Frage zugunsten der gleichermaßen Irregeleiteten zu entfernen.
Als ich die Berechtigungen meiner Sparsebundle-Dateien überprüfte, habe ich die Time Capsule-Festplatte manuell gemountet. Da ich die Festplatte als normaler Benutzer gemountet habe, wurde dieser Benutzer der Besitzer des Einhängepunkts (wenn ich im Terminal nachschaue, kann ich sehen, dass mein Benutzerkonto der Besitzer des Einhängepunkts ist, wobei "Staff" die Gruppe ist).
Nun war meine Annahme (die für mich nicht transparent war), dass, wenn Time Machine die Festplatte während einer Sicherungssitzung einbindet, sie im System vorhanden wäre, als ob ich sie manuell eingehängt hätte. Aber das ist falsch. Denn da backupd als root läuft, gehört der Mount-Point zu root (nach Überprüfung im Terminal ist der Besitzer "root", die Gruppe ist "wheel", Gruppe und Welt haben keine Rechte.) und damit ein Prozess, der zu einem normalen gehört Benutzer wäre nicht in der Lage, Dateien auf einer Time Machine Disk zu verschlüsseln, die von backupd gemountet wurde .
In einem Time-Capsule-Setup scheint also vorerst keine Gefahr zu bestehen, dass eine Ransomware das Backup verschlüsselt. Bei einer lokal angeschlossenen externen Festplatte kann es jedoch anders sein. Ich erinnere mich vage, dass ich, als ich noch eine externe Festplatte benutzte, die Time Machine-Partition als im Finder gemountet sehen konnte (was ich jetzt nicht tue) und daher möglicherweise mit Benutzerrechten gemountet wurde. Ich kann das nicht testen, da ich keine externe Time-Machine-Festplatte habe, aber vielleicht kann jemand anderes etwas dazu sagen.
Time Machine-Backups werden in erster Linie durch ACL geschützt, die jedem die Berechtigung verweigert, in eine Datei zu schreiben.
$ ls -le /Volumes/Whatever/Backups.backupdb/Mac/Latest/Macintosh\ HD/Users/me/Desktop/file.text
-rw-r--r--@ 1 me staff - 14 Mar 8 11:54 /Volumes/Whatever/Backups.backupdb/Mac/Latest/Macintosh\ HD/Users/me/Desktop/file.text
0: group:everyone deny write,delete,append,writeattr,writeextattr,chown
Damit ein bösartiges Programm eine Datei auf dem Backup-Subsystem ändern kann, müsste es zuerst alle ACLs lesen und löschen und dann eine Änderung an einer Datei vornehmen, die im Time Machine-Verzeichnis gespeichert ist.
$ chmod -a# 0 /Volumes/Whatever/Backups.backupdb/Mac/Latest/Macintosh\ HD/Users/me/Desktop/file.text
Nach dem obigen Befehl kann die Datei geändert oder vollständig gelöscht werden.
Der Code des Programms würde keinen speziellen Root-Zugriff benötigen - nur dass es unter einem normalen Admin-Benutzer lief, um diese Änderung vorzunehmen und dann in die Dateien schreiben zu können.
Weder Sandboxing noch Systemintegritätsschutz würden einen böswilligen Prozess, der als Administrator ausgeführt wird, daran hindern, Benutzerdatendateien auf einem Backup-Laufwerk zu verschlüsseln/zu ändern/zu löschen, das gemountet werden kann (Netzlaufwerke) oder angeschlossen und bereits gemountet ist.
Um Ihre Backups zu härten, müssten Sie auf die eine oder andere Weise eine Kopie offline haben, vorausgesetzt, der Angreifer weiß, dass er die ACL überprüfen und ändern/entfernen muss, bevor er sie manipuliert.
Ich würde mir Verschlüsselungsoptionen ansehen, um einige Dateien zu schützen, bei denen Sie es sich nicht leisten können, dass sich ein zufälliges Programm verjüngt, und optional Ihren Verschlüsselungsschlüssel nicht für ein zweites Backup-Volume in Ihrem Schlüsselbund speichern.
Auf diese Weise könnte das erste Backup-Ziel oft ausgeführt werden, aber anfällig für Malware sein. Das zweite Ziel würde Sie alle zwei Wochen oder so auffordern, dass es veraltet ist, wenn Sie es nicht mounten und eine manuellere Sicherung starten.
Es ist nicht ideal, aber ich würde vermuten, dass Apple das System überarbeiten könnte, wenn dieses potenzielle Risiko im Laufe der Zeit unter OS X zu einem tatsächlichen Risiko wird Es ist wahrscheinlicher, dass Apple die Ausführung auf Computern verbietet, die sich für den Gatekeeper-Schutz entscheiden. In diesem Fall sieht es so aus, als hätte es weniger als 48 Stunden nach der öffentlichen Ankündigung der Bedrohung gedauert, bis das Mittel von Apple verfügbar war.
/Volumes/Time Machine Backups
erstellt und ohne sudo kann ich nichts aus der eigentlichen Sicherung löschen, und das Ändern der ACL erfordert auch erhöhte Berechtigungen.
Fahrrad
Philipp
Fahrrad