Verschlüsseln des Dateisystems - Encrypting File System

Das Encrypting File System ( EFS ) unter Microsoft Windows ist ein Feature, das in Version 3.0 von NTFS eingeführt wurde und eine Verschlüsselung auf Dateisystemebene bietet . Die Technologie ermöglicht die transparente Verschlüsselung von Dateien, um vertrauliche Daten vor Angreifern mit physischem Zugriff auf den Computer zu schützen.

EFS ist ab Windows 2000 in allen Windows-Versionen mit Ausnahme der Home-Versionen (siehe Unterstützte Betriebssysteme unten) verfügbar. Standardmäßig werden keine Dateien verschlüsselt, aber die Verschlüsselung kann von Benutzern pro Datei, pro Verzeichnis oder pro Laufwerk aktiviert werden. Einige EFS-Einstellungen können auch über Gruppenrichtlinien in Windows-Domänenumgebungen vorgeschrieben werden.

Implementierungen von kryptografischen Dateisystemen für andere Betriebssysteme sind verfügbar, aber das Microsoft EFS ist mit keinem dieser Betriebssysteme kompatibel. Siehe auch die Liste der kryptografischen Dateisysteme .

Grundideen

Wenn ein Betriebssystem auf einem System ohne Dateiverschlüsselung ausgeführt wird , den Zugriff auf Dateien geht normalerweise durch OS gesteuerte Benutzerauthentifizierung und Zugriffskontrolllisten . Verschafft sich ein Angreifer jedoch physischen Zugriff auf den Computer, kann diese Barriere leicht umgangen werden. Eine Möglichkeit wäre beispielsweise, die Festplatte zu entfernen und in einen anderen Computer mit einem installierten Betriebssystem einzulegen, das das Dateisystem lesen kann; eine andere wäre, den Computer einfach von einer Boot-CD mit einem Betriebssystem neu zu starten, das für den Zugriff auf das lokale Dateisystem geeignet ist.

Die am weitesten verbreitete Lösung hierfür besteht darin, die Dateien verschlüsselt auf den physischen Medien (Disketten, USB-Sticks, Bänder, CDs usw.) zu speichern .

In der Microsoft Windows-Betriebssystemfamilie ermöglicht EFS diese Maßnahme, allerdings nur auf NTFS-Laufwerken, und verwendet dabei eine Kombination aus Public-Key-Kryptografie und symmetrischer Schlüssel-Kryptografie , um die Entschlüsselung der Dateien ohne den richtigen Schlüssel extrem schwierig zu machen.

Die Kryptografieschlüssel für EFS sind jedoch in der Praxis durch das Passwort des Benutzerkontos geschützt und daher anfällig für die meisten Passwortangriffe. Mit anderen Worten, die Verschlüsselung einer Datei ist nur so stark wie das Kennwort zum Entsperren des Entschlüsselungsschlüssels.

Operation

Betrieb des verschlüsselnden Dateisystems

EFS funktioniert, indem eine Datei mit einem symmetrischen Massenschlüssel verschlüsselt wird , der auch als Dateiverschlüsselungsschlüssel oder FEK bekannt ist. Es verwendet einen symmetrischen Verschlüsselungsalgorithmus, da das Ver- und Entschlüsseln großer Datenmengen weniger Zeit in Anspruch nimmt als bei Verwendung einer asymmetrischen Schlüsselchiffre . Der verwendete symmetrische Verschlüsselungsalgorithmus variiert je nach Version und Konfiguration des Betriebssystems; siehe Algorithmen, die von der Windows-Version verwendet werden unten. Der FEK (der symmetrische Schlüssel, der zum Verschlüsseln der Datei verwendet wird) wird dann mit einem öffentlichen Schlüssel verschlüsselt, der dem Benutzer zugeordnet ist, der die Datei verschlüsselt hat, und dieser verschlüsselte FEK wird im alternativen Datenstrom $EFS der verschlüsselten Datei gespeichert. Zum Entschlüsseln der Datei verwendet der EFS-Komponententreiber den privaten Schlüssel, der dem digitalen EFS-Zertifikat (das zum Verschlüsseln der Datei verwendet wird) entspricht, um den symmetrischen Schlüssel zu entschlüsseln, der im $EFS-Stream gespeichert ist. Der EFS-Komponententreiber verwendet dann den symmetrischen Schlüssel, um die Datei zu entschlüsseln. Da die Verschlüsselungs- und Entschlüsselungsvorgänge auf einer Ebene unterhalb von NTFS ausgeführt werden, ist sie für den Benutzer und alle seine Anwendungen transparent.

Ordner, deren Inhalt vom Dateisystem verschlüsselt werden soll, werden mit einem Verschlüsselungsattribut gekennzeichnet. Der EFS-Komponententreiber behandelt dieses Verschlüsselungsattribut analog zur Vererbung von Dateiberechtigungen in NTFS: Wenn ein Ordner zum Verschlüsseln markiert ist, werden standardmäßig auch alle Dateien und Unterordner, die unter dem Ordner erstellt werden, verschlüsselt. Wenn verschlüsselte Dateien innerhalb eines NTFS-Volumes verschoben werden, bleiben die Dateien verschlüsselt. Es gibt jedoch eine Reihe von Fällen, in denen die Datei entschlüsselt werden kann, ohne dass der Benutzer Windows explizit dazu auffordert.

Dateien und Ordner werden entschlüsselt, bevor sie auf ein Volume kopiert werden, das mit einem anderen Dateisystem wie FAT32 formatiert ist . Wenn verschlüsselte Dateien mit dem SMB/CIFS-Protokoll über das Netzwerk kopiert werden, werden die Dateien schließlich entschlüsselt, bevor sie über das Netzwerk gesendet werden.

Die wichtigste Möglichkeit, die Entschlüsselung beim Kopieren zu verhindern, besteht in der Verwendung von Sicherungsanwendungen, die die "Raw"-APIs kennen. Backup-Anwendungen, die diese Raw-APIs implementiert haben, kopieren einfach den verschlüsselten Dateistream und den alternativen $EFS-Datenstream als eine einzelne Datei. Dh die Dateien werden verschlüsselt "kopiert" (zB in die Backup-Datei) und beim Backup nicht entschlüsselt.

Ab Windows Vista kann der private Schlüssel eines Benutzers auf einer Smartcard gespeichert werden ; Data Recovery Agent (DRA)-Schlüssel können auch auf einer Smartcard gespeichert werden.

Sicherheit

Schwachstellen

In Windows 2000 EFS gab es zwei bedeutende Sicherheitslücken, die seither auf verschiedene Weise angegangen wurden.

Entschlüsseln von Dateien mit dem lokalen Administratorkonto

In Windows 2000 ist der lokale Administrator der standardmäßige Data Recovery Agent, der alle mit EFS verschlüsselten Dateien von jedem lokalen Benutzer entschlüsseln kann. EFS in Windows 2000 kann ohne einen Wiederherstellungsagenten nicht funktionieren, daher gibt es immer jemanden, der verschlüsselte Dateien der Benutzer entschlüsseln kann. Jeder nicht in eine Domäne eingebundene Windows 2000-Computer ist anfällig für die nicht autorisierte EFS-Entschlüsselung durch jeden, der das lokale Administratorkonto übernehmen kann, was angesichts vieler kostenlos im Internet verfügbarer Tools trivial ist.

Unter Windows XP und höher gibt es keinen standardmäßigen lokalen Data Recovery Agent und es ist auch nicht erforderlich, einen zu haben. Das Einstellen von SYSKEY auf Modus 2 oder 3 (syskey wird beim Booten eingegeben oder auf einer Diskette gespeichert) verringert das Risiko einer unbefugten Entschlüsselung über das lokale Administratorkonto. Dies liegt daran, dass die Passwort-Hashes des lokalen Benutzers, die in der SAM- Datei gespeichert sind, mit dem Syskey verschlüsselt werden und der Syskey-Wert einem Offline-Angreifer nicht zur Verfügung steht, der nicht über die Syskey-Passphrase/Diskette verfügt.

Zugriff auf privaten Schlüssel über Passwort-Reset

In Windows 2000 wird der private RSA-Schlüssel des Benutzers nicht nur in einer wirklich verschlüsselten Form gespeichert , sondern es gibt auch eine Sicherung des privaten RSA-Schlüssels des Benutzers, die schwächer geschützt ist. Wenn ein Angreifer physischen Zugriff auf den Windows 2000-Computer erhält und das Kennwort eines lokalen Benutzerkontos zurücksetzt, kann sich der Angreifer als dieser Benutzer (oder Wiederherstellungsagent) anmelden und Zugriff auf den privaten RSA-Schlüssel erlangen, der alle Dateien entschlüsseln kann. Dies liegt daran, dass die Sicherung des privaten RSA-Schlüssels des Benutzers mit einem LSA-Geheimnis verschlüsselt ist, auf das jeder Angreifer zugreifen kann, der seine Anmeldung auf LocalSystem erhöhen kann (wiederum trivial bei zahlreichen Tools im Internet).

In Windows XP und darüber hinaus wird der private RSA-Schlüssel des Benutzers mit einem öffentlichen Offline-Schlüssel gesichert, dessen übereinstimmender privater Schlüssel an einem von zwei Orten gespeichert wird: auf der Kennwortrücksetzdiskette (wenn Windows XP kein Mitglied einer Domäne ist) oder im Active Directory (wenn Windows XP Mitglied einer Domäne ist). Dies bedeutet, dass ein Angreifer, der sich bei Windows XP als LocalSystem authentifizieren kann, immer noch keinen Zugriff auf einen auf der Festplatte des PCs gespeicherten Entschlüsselungsschlüssel hat.

Unter Windows 2000, XP oder höher wird der private RSA-Schlüssel des Benutzers mit einem Hash aus dem NTLM-Passwort-Hash des Benutzers plus dem Benutzernamen verschlüsselt – die Verwendung eines Salted- Hash macht es extrem schwierig, den Vorgang rückgängig zu machen und den privaten Schlüssel wiederherzustellen, ohne dass dies bekannt ist Passphrase des Benutzers. Auch hier kann das Setzen von Syskey auf Modus 2 oder 3 (Syskey wird beim Booten eingegeben oder auf einer Diskette gespeichert) diesen Angriff abschwächen, da der Passwort-Hash des lokalen Benutzers verschlüsselt in der SAM-Datei gespeichert wird.

Andere Probleme

Sobald ein Benutzer erfolgreich angemeldet ist, erfordert der Zugriff auf seine eigenen EFS-verschlüsselten Daten keine zusätzliche Authentifizierung, die Entschlüsselung erfolgt transparent. Somit führt jede Kompromittierung des Passworts des Benutzers automatisch zum Zugriff auf diese Daten. Windows kann Versionen von Benutzerkonto-Passphrasen mit umkehrbarer Verschlüsselung speichern, obwohl dies nicht mehr das Standardverhalten ist; Es kann auch so konfiguriert werden, dass es Lan Manager-Hashes der Passphrasen des lokalen Benutzerkontos speichert (und wird standardmäßig in der Originalversion von Windows XP und niedriger), die leicht angegriffen und gebrochen werden können. Es speichert auch Passphrasen lokaler Benutzerkonten als NTLM- Hashes, die mit " Rainbow Tables " bei schwachen Passwörtern relativ leicht angegriffen werden können (Windows Vista und spätere Versionen lassen standardmäßig keine schwachen Passwörter zu). Um die Bedrohung durch triviale Brute-Force-Angriffe auf lokale Passphrasen zu mindern, müssen ältere Windows-Versionen (mit den Sicherheitseinstellungen der Gruppenrichtlinie) so konfiguriert werden, dass sie niemals LM-Hashes speichern und natürlich die automatische Anmeldung (die Klartext speichert) nicht aktivieren Passphrasen in der Registrierung ). Darüber hinaus verhindert die Verwendung von Passphrasen für lokale Benutzerkonten mit einer Länge von mehr als 14 Zeichen, dass Windows einen LM-Hash im SAM speichert – und hat den zusätzlichen Vorteil, dass Brute-Force-Angriffe gegen den NTLM-Hash schwieriger werden.

Beim Verschlüsseln von Dateien mit EFS – beim Konvertieren von Klartextdateien in verschlüsselte Dateien – werden die Klartextdateien nicht gelöscht, sondern einfach gelöscht (dh Datenblöcke, die im Dateisystem als "nicht verwendet" gekennzeichnet sind). Dies bedeutet, dass sie, sofern sie nicht beispielsweise auf einer SSD mit TRIM- Unterstützung gespeichert sind, problemlos wiederhergestellt werden können, sofern sie nicht überschrieben werden. Um bekannte, nicht herausfordernde technische Angriffe gegen EFS vollständig abzuwehren, sollte die Verschlüsselung auf Ordnerebene konfiguriert werden (damit alle temporären Dateien wie Word-Dokument-Backups, die in diesen Verzeichnissen erstellt werden, ebenfalls verschlüsselt werden). Beim Verschlüsseln einzelner Dateien sollten diese in einen verschlüsselten Ordner kopiert oder "in place" verschlüsselt werden, gefolgt von einem sicheren Löschen des Datenträgervolumens. Das Windows Cipher-Dienstprogramm kann (mit der Option /W) verwendet werden, um freien Speicherplatz zu löschen, einschließlich des Speicherplatzes, der noch gelöschte Klartextdateien enthält; verschiedene Dienstprogramme von Drittanbietern können ebenfalls funktionieren.

Jeder, der Administratorzugriff erhalten kann, kann die Konfiguration des Data Recovery Agent überschreiben, überschreiben oder ändern. Dies ist ein sehr ernstes Problem, da ein Angreifer beispielsweise das Administratorkonto hacken kann (mit Tools von Drittanbietern), ein beliebiges DRA-Zertifikat als Datenwiederherstellungs-Agent festlegen und warten kann. Dies wird manchmal als zweistufiger Angriff bezeichnet, der ein deutlich anderes Szenario als das Risiko durch einen verlorenen oder gestohlenen PC darstellt, aber das Risiko durch böswillige Insider hervorhebt.

Wenn der Benutzer Dateien nach der ersten Stufe eines solchen Angriffs verschlüsselt, werden die FEKs automatisch mit dem öffentlichen Schlüssel des angegebenen DRA verschlüsselt. Der Angreifer muss nur noch einmal als Administrator auf den Computer zugreifen, um vollen Zugriff auf all diese nachträglich EFS-verschlüsselten Dateien zu erhalten. Auch die Verwendung von Syskey-Modus 2 oder 3 schützt nicht vor diesem Angriff, da der Angreifer die verschlüsselten Dateien offline sichern, an anderer Stelle wiederherstellen und den privaten Schlüssel des DRA zum Entschlüsseln der Dateien verwenden könnte. Wenn sich ein solcher bösartiger Insider physischen Zugriff auf den Computer verschaffen kann, sind alle Sicherheitsfunktionen als irrelevant anzusehen, da er auch Rootkits , Software- oder sogar Hardware- Keylogger etc. auf dem Computer installieren könnte – was potenziell viel interessanter und effektiver ist als das Überschreiben DRA-Richtlinie.

Wiederherstellung

Mit EFS verschlüsselte Dateien können nur entschlüsselt werden, indem die privaten RSA-Schlüssel verwendet werden, die mit den zuvor verwendeten öffentlichen Schlüsseln übereinstimmen. Die gespeicherte Kopie des privaten Schlüssels des Benutzers wird letztendlich durch das Anmeldekennwort des Benutzers geschützt. Der Zugriff auf verschlüsselte Dateien von außerhalb von Windows mit anderen Betriebssystemen ( z. B. Linux ) ist nicht möglich – nicht zuletzt, weil es derzeit keinen EFS-Komponententreiber von Drittanbietern gibt. Außerdem wird es durch die Verwendung spezieller Tools zum Zurücksetzen des Anmeldepassworts des Benutzers unmöglich, den privaten Schlüssel des Benutzers zu entschlüsseln, und somit für den Zugriff auf die verschlüsselten Dateien des Benutzers nutzlos. Die Bedeutung davon geht für Benutzer gelegentlich verloren, was zu Datenverlust führt, wenn ein Benutzer sein Passwort vergisst oder den Verschlüsselungsschlüssel nicht sichert. Dies führte zur Prägung des Begriffs "verzögerter Papierkorb", um die scheinbare Unvermeidlichkeit eines Datenverlusts zu beschreiben, wenn ein unerfahrener Benutzer seine Dateien verschlüsselt.

Wenn EFS für die Verwendung von Schlüsseln konfiguriert ist, die von einer Public-Key-Infrastruktur ausgegeben werden, und die PKI so konfiguriert ist, dass die Schlüsselarchivierung und -wiederherstellung aktiviert ist, können verschlüsselte Dateien wiederhergestellt werden, indem zuerst der private Schlüssel wiederhergestellt wird.

Schlüssel

  • Benutzerkennwort (oder privater Smartcard-Schlüssel): Wird verwendet, um einen Entschlüsselungsschlüssel zum Entschlüsseln des DPAPI-Hauptschlüssels des Benutzers zu generieren
  • DPAPI Master Key: wird verwendet, um den/die privaten RSA-Schlüssel des Benutzers zu entschlüsseln
  • RSA privater Schlüssel: wird verwendet, um den FEK . jeder Datei zu entschlüsseln
  • File Encryption Key (FEK): Wird zum Entschlüsseln/Verschlüsseln der Daten jeder Datei (im primären NTFS-Stream) verwendet.
  • SYSKEY: wird verwendet, um den zwischengespeicherten Domänenverifizierer und die im SAM gespeicherten Passwort-Hashes zu verschlüsseln

Unterstützte Betriebssysteme

Fenster

Andere Betriebssysteme

Keine anderen Betriebssysteme oder Dateisysteme bieten native Unterstützung für EFS.

Neue Funktionen verfügbar von Windows-Version

Windows XP
  • Verschlüsselung des clientseitigen Caches ( Datenbank für Offlinedateien )
  • Schutz der Sicherung des DPAPI-Masterschlüssels mit einem domänenweiten öffentlichen Schlüssel
  • Automatische Registrierung von Benutzerzertifikaten (einschließlich EFS-Zertifikaten)
  • Mehrbenutzerzugriff (gemeinsam) auf verschlüsselte Dateien (auf Dateibasis) und Sperrprüfung von Zertifikaten, die beim Teilen verschlüsselter Dateien verwendet werden
  • Verschlüsselte Dateien können in einer alternativen Farbe angezeigt werden (standardmäßig grün)
  • Kein obligatorischer Recovery Agent erforderlich
  • Warnung, wenn Dateien beim Verschieben in ein nicht unterstütztes Dateisystem möglicherweise stillschweigend entschlüsselt werden
  • Kennwortrücksetzdiskette
  • EFS über WebDAV und Remoteverschlüsselung für Server, die in Active Directory delegiert sind
Windows XP SP1
  • Unterstützung und Standardverwendung des symmetrischen AES-256-Verschlüsselungsalgorithmus für alle EFS-verschlüsselten Dateien
Windows XP SP2 + KB 912761
  • Registrierung von selbstsignierten EFS-Zertifikaten verhindern
Windows Server 2003
  • Digitaler Identitätsverwaltungsdienst
  • Erzwingung der RSAKeyLength-Einstellung zum Erzwingen einer Mindestschlüssellänge bei der Registrierung selbstsignierter EFS-Zertifikate
Windows Vista und Windows Server 2008
  • Verschlüsselung pro Benutzer des clientseitigen Caches (Offline-Dateien)
  • Unterstützung für das Speichern (Benutzer oder DRA) privater RSA-Schlüssel auf einer PC/SC-Smartcard
  • EFS Re-Key-Assistent
  • Aufforderungen zur EFS-Schlüsselsicherung prompt
  • Unterstützung für die Ableitung des DPAPI-Masterschlüssels von der PC/SC-Smartcard
  • Unterstützung für die Verschlüsselung von pagefile.sys
  • Schutz von EFS-bezogenen Geheimnissen mit BitLocker (Enterprise oder Ultimate Edition von Windows Vista)
  • Gruppenrichtlinienkontrollen zur Durchsetzung
    • Verschlüsselung des Dokumentenordners
    • Verschlüsselung von Offlinedateien
    • Indizierung verschlüsselter Dateien
    • Smartcard für EFS erforderlich
    • Caching-fähigen Benutzerschlüssel von Smartcard erstellen
    • Anzeigen einer Schlüsselsicherungsbenachrichtigung, wenn ein Benutzerschlüssel erstellt oder geändert wird
    • Angeben der Zertifikatsvorlage für die automatische Registrierung von EFS-Zertifikaten
Windows Server 2008
  • Selbstsignierte EFS-Zertifikate, die auf dem Windows Server 2008-Server registriert sind, haben standardmäßig eine RSA-Schlüssellänge von 2048 Bit
  • Alle EFS-Vorlagen (Benutzer- und Datenwiederherstellungs-Agent-Zertifikate) haben standardmäßig eine RSA-Schlüssellänge von 2048 Bit
Windows 7 und Windows Server 2008 R2
  • Kryptografische Algorithmen mit elliptischen Kurven (ECC). Windows 7 unterstützt einen gemischten Modus von ECC- und RSA-Algorithmen für Abwärtskompatibilität
  • Selbstsignierte EFS-Zertifikate verwenden bei Verwendung von ECC standardmäßig einen 256-Bit-Schlüssel.
  • EFS kann so konfiguriert werden, dass 1K/2k/4k/8k/16k-Bit-Schlüssel verwendet werden, wenn selbstsignierte RSA-Zertifikate verwendet werden, oder 256/384/521-Bit-Schlüssel, wenn ECC-Zertifikate verwendet werden.
Windows 10 Version 1607 und Windows Server 2016
  • EFS-Unterstützung für FAT und exFAT hinzufügen.

Von der Windows-Version verwendete Algorithmen

Windows EFS unterstützt eine Reihe von symmetrischen Verschlüsselungsalgorithmen, abhängig von der verwendeten Windows-Version, wenn die Dateien verschlüsselt werden:

Betriebssystem Standardalgorithmus Andere Algorithmen
Windows 2000 DESX (keiner)
Windows XP RTM DESX Dreifach-DES
Windows XP SP1 AES Dreifach-DES, DESX
Windows Server 2003 AES Dreifach-DES, DESX
Windows Vista AES Dreifach-DES, DESX
Windows Server 2008 AES Dreifach-DES, DESX (?)
Windows 7
Windows Server 2008 R2
Gemischt (AES, SHA und ECC) Dreifach-DES, DESX

Siehe auch

Verweise

Weiterlesen