Wie ist die Fähigkeit einer Person, die physischen Zugang zu Ihrem Computer erlangt hat, [mit Grub / Bash] in irgendeiner Weise root zu werden, sicher?
Denn wenn Linux dies tun würde, würden Hacker einfach andere Sicherheitslücken ausnutzen. Die erste Sicherheitsregel lautet: Wenn ich physischen Zugriff auf Ihr System habe, ist das Spiel vorbei. Ich habe gewonnen.
Stellen Sie sich außerdem vor, Ihr X-Server ist kaputt und Sie haben keine GUI mehr. Sie müssen in eine Wiederherstellungskonsole booten, um das Problem zu beheben, können dies jedoch nicht, da dies unsicher ist. In diesem Fall haben Sie ein völlig kaputtes System, aber hey, zumindest ist es "sicher"!
Aber Kaz, wie ist das möglich? Ich habe ein Passwort für meinen Grub festgelegt, damit du meinen nicht init
in Bash ändern kannst !
Oh, du hast es getan, oder? Interessant, denn das sieht aus wie dein Fotoalbum. GRUB hat überhaupt keinen inhärenten Sicherheitsfaktor. Es ist nur ein Bootloader , kein Schritt in einer sicheren Boot- und Authentifizierungskette. Das "Passwort", das Sie eingerichtet haben, ist in der Tat verdammt einfach zu umgehen.
Das, und welcher Sysadmin hat für Notfälle kein Boot-Laufwerk dabei?
Aber wie?! Du kennst mein Passwort nicht (was P@ssw0rd
übrigens gar nicht so ist )
Ja, aber das hindert mich nicht daran, Ihren Computer zu öffnen und Ihre Festplatte herauszunehmen. Von dort aus sind es nur ein paar einfache Schritte, um Ihr Laufwerk auf meinem Computer zu mounten und mir Zugriff auf Ihr gesamtes System zu gewähren. Dies hat auch den Vorteil, dass Sie Ihr BIOS-Passwort umgehen können. Das, oder ich hätte einfach dein CMOS zurücksetzen können. Entweder oder.
Also ... wie kann ich nicht zulassen, dass Sie auf meine Daten zugreifen?
Einfach. Halten Sie Ihren Computer von mir fern. Wenn ich es berühren, auf eine Tastatur zugreifen, meine eigenen Flash-Laufwerke einstecken oder es auseinander nehmen kann, kann ich gewinnen.
Kann ich meinen Computer einfach gerne in ein Rechenzentrum stellen oder so? Die sind ziemlich sicher, oder?
Ja sie sind. Aber Sie vergessen, dass Menschen auch hackbar sind, und wenn ich genügend Zeit und Vorbereitung habe, könnte ich wahrscheinlich in dieses Rechenzentrum gelangen und all diese süßen, süßen Daten von Ihrem Computer entfernen. Aber ich schweife ab. Hier geht es um echte Lösungen.
Okay, du hast meinen Bluff gerufen. Ich kann es nicht in ein Rechenzentrum stellen. Kann ich einfach meinen privaten Ordner verschlüsseln oder so?
Sicher kannst du! Es ist dein Computer! Wird es mir helfen, mich aufzuhalten? Nicht im Geringsten. Ich kann einfach etwas Wichtiges ersetzen, zum Beispiel /usr/bin/firefox
durch mein eigenes Schadprogramm. Wenn Sie Firefox das nächste Mal öffnen, werden alle Ihre geheimen Daten auf einen geheimen Server übertragen, der sich an einem geheimen Ort befindet. Und du wirst es nicht einmal wissen. Wenn ich häufig auf Ihr Gerät zugreifen kann, kann ich einfach Ihren privaten Ordner so einrichten, dass er an /usr/share/nonsecrets/home/
einen ähnlichen (nicht verschlüsselten) Speicherort kopiert wird .
Okay, was ist mit der vollständigen Festplattenverschlüsselung?
Das ist ... eigentlich ziemlich gut. Es ist jedoch noch nicht perfekt! Ich kann einen Kaltstart-Angriff immer mit meiner zuverlässigen Druckluftdose durchführen. Oder ich kann einfach einen Hardware-Keylogger an Ihren Computer anschließen. Eins ist offensichtlich einfacher als das andere, aber der Weg ist eigentlich egal.
In den allermeisten Fällen ist dies ein guter Zwischenstopp. Koppeln Sie es vielleicht mit TPM (siehe unten), und Sie sind goldrichtig. Wenn Sie nicht eine Drei-Buchstaben-Agentur oder einen sehr motivierten Hacker verärgert haben , wird niemand die Anstrengungen ausführen, die nach dieser Phase erforderlich sind.
Natürlich kann ich Sie immer noch dazu bringen, Malware / Backdoors zu installieren, indem Sie einen PPA oder ähnliches anbieten, aber dies führt zu einem sehr düsteren Bereich des Nutzervertrauens.
Also ... wie sind iPhones so sicher? Selbst mit physischem Zugang können Sie nicht viel tun.
Ja und nein Ich meine, wenn ich genug motiviert wäre, könnte ich den Flash-Chip lesen und alles bekommen, was ich brauche. IPhones unterscheiden sich jedoch grundlegend, da es sich um eine vollständig gesperrte Plattform handelt. Gleichzeitig opfern Sie jedoch die Benutzerfreundlichkeit und die Fähigkeit, sich von katastrophalen Ausfällen zu erholen. GRUB (außer wenn es sehr speziell entworfen wurde) ist nicht dazu gedacht, eine Kette in einem Sicherheitssystem zu sein. Tatsächlich haben die meisten Linux-Systeme ihre Sicherheitsketten nach dem Booten gestartet, also nachdem GRUB damit fertig ist.
Darüber hinaus verfügen iPhones über die Durchsetzung kryptografischer Signaturen (siehe auch unten), wodurch es für Malware sehr schwierig ist, sich auf legitimen Wegen auf Ihr Telefon einzuschleichen.
Aber was ist mit TPM / SmartCards / [Crypto Tech hier einfügen]?
Nun, jetzt, wo Sie physische Sicherheit in die Gleichung einbinden, wird es noch komplizierter. Dies ist jedoch keine wirkliche Lösung, da TPMs relativ schwach sind und die gesamte Verschlüsselung nicht auf dem Chip stattfindet. Wenn Ihr TPM (irgendwie) stark genug ist, um auf dem Chip selbst zu verschlüsseln (einige sehr ausgefallene Festplatten haben so etwas), wird der Schlüssel nie preisgegeben und Dinge wie Kaltstart-Angriffe sind unmöglich. Möglicherweise sind die Schlüssel (oder die Rohdaten) jedoch noch im Systembus vorhanden, sodass sie abgefangen werden können.
Trotzdem kann mein Hardware-Keylogger immer noch Ihr Passwort erhalten, und ich kann problemlos Malware auf Ihren Computer laden, und zwar nach dem Firefox-Exploit, den ich zuvor erwähnt habe. Ich brauche nur, dass Sie Ihr Haus / Ihren Computer für eine Stunde verlassen.
Wenn Sie nun Ihr TPM / Ihre Smartcard / was auch immer mitnehmen und die gesamte Verschlüsselung tatsächlich auf dem Chip erfolgt (was bedeutet, dass Ihr Schlüssel überhaupt nicht im RAM gespeichert ist), ist es für mich so gut wie unmöglich, darauf zuzugreifen alles, es sei denn, Sie (der Benutzer) rutschen aus und vergessen etwas. Das heißt, es sei denn, ich finde eine Möglichkeit, den (unverschlüsselten) Schlüssel vom Systembus zu lesen.
Aber was ist, wenn ich für alle meine Programme eine Form der Durchsetzung von kryptografischen / digitalen Signaturen verwende, um sicherzustellen, dass sie echt sind?
Wie verschiedene Smartphone-Unternehmen demonstrieren, ist dies eine sehr gute Möglichkeit, mit Sicherheit umzugehen. Sie haben jetzt meine Fähigkeit aufgehoben, Code in Ihren Computer einzufügen, um schändliche Dinge zu tun, was ein Plus ist. Tatsächlich haben Sie meine Fähigkeit deaktiviert, den dauerhaften Zugriff auf Ihren Computer aus der Ferne beizubehalten, was ein großes Plus ist.
Dies ist jedoch immer noch keine perfekte Methode! Die Durchsetzung digitaler Signaturen kann einen Hardware-Keylogger nicht stoppen. Es muss außerdem vollständig fehlerfrei sein. Das bedeutet, dass ich auf keinen Fall einen Exploit finden kann, mit dem ich mein eigenes Zertifikat in den Zertifikatspeicher Ihres Computers laden kann. Darüber hinaus muss jede ausführbare Datei auf Ihrem System signiert werden . Wenn Sie dies nicht manuell durchführen möchten, wird es sehr schwierig sein, Apt-Pakete und ähnliches zu finden, die digitale Signaturen für alles haben. In ähnlicher Weise blockiert dies legitime Verwendungen für nicht signierte ausführbare Dateien, nämlich die Wiederherstellung. Was ist, wenn Sie etwas Wichtiges kaputt machen und nicht die (signierte) ausführbare Datei haben, um es zu reparieren? Nun, da geht Ihr System.
In beiden Fällen wurde der Versuch, dies unter Linux zu tun , so gut wie aufgegeben und funktioniert nicht mehr für neue Kernel. Sie müssen also Ihre eigenen Kernel erstellen.
Also ist es unmöglich, dich von meinem Computer fernzuhalten?
Eigentlich ja, tut mir leid. Wenn ich physischen Zugang und genügend Motivation habe, ist es immer möglich, in ein System einzusteigen. Keine Ausnahmen.
In Wirklichkeit werden die meisten bösen Menschen jedoch nicht versuchen, nur für ein paar Katzenbilder so weit zu kommen. Normalerweise reicht eine vollständige Festplattenverschlüsselung (oder sogar die Ausführung von Linux!) Aus, um die meisten Skriptkinder davon abzuhalten, zwei Sekunden Ruhm zu haben.
TL; DR: Lass nur keine Menschen, denen du nicht vertraust, in die Nähe deines Computers. Das ist normalerweise gut genug.