Werden sensible Daten wie Zugangsdaten, Passwörter oder wichtige Unternehmensdaten im Klartext auf dem Rechner gespeichert, besteht die Gefahr, dass diese gestohlen werden können. Zum Beispiel kann eine Software mit bösartigen Absichten auf alle Benutzerdaten zugreifen oder eine Schadsoftware sucht gezielt nach solchen für Angreifer interessanten Daten. Aber bereits der Verlust eines einzigen Notebooks zum Beispiel durch Liegenlassen oder Diebstahl kann dafür sorgen, dass diese Daten in fremde Hände geraten.
Daher sollten die wichtigen Daten immer nur verschlüsselt gespeichert werden. Dafür bietet sich die freie und gleichzeitig weit verbreitete Software VeraCrypt an. Besteht bisher nicht viel Erfahrung im Umgang mit Verschlüsselung, kann die Steuerung des Programms eine kleine Herausforderung darstellen. Abhilfe schafft hier die Nutzung von VerCrypt unter Windows mit zwei Skripten.
VeraCrypt
Die Open-Source-Software VeraCrypt ist eine On-the-Fly-Datenverschlüsselung Anwendung. Sie ist aus dem TrueCrypt-Projekt hervorgegangen. Viele Sicherheitsverbesserungen wurden implementiert und Probleme, die durch TrueCrypt-Code-Audits entdeckt worden waren, wurden behoben. VeraCrypt enthält optimierte Implementierungen von kryptografischen Hash-Funktionen und Verschlüsselungen, wodurch die Hardwareunterstützung effektiver genutzt werden kann, dadurch steigt die Geschwindigkeit.
VerCrypt kann eine virtuelle verschlüsselte Festplatte innerhalb einer Datei erstellen. Diese wird auch als Container bezeichnet. Alternativ kann VerCrypt eine komplette Partition verschlüsseln oder unter Windows die gesamte Festplatte verschlüsseln und mit einer Pre-Boot-Authentifizierung versehen. Daher werden keine einzelnen Dateien verschlüsselt, sondern immer nur komplette Laufwerke. Die häufigste Variante ist die Verwendung einer einzelnen Datei als Container für ein virtuelles Laufwerk.
Wird nur ein Passwort für die Verschlüsselung verwendet, besteht die Gefahr, dass das Passwort zum Beispiel durch einen Keylogger gestohlen werden kann. Um dieses Angriffsszenario auszuhebeln, kann parallel zum Passwort eine Schlüsseldatei verwendet werden. Beim Anlegen des Containers wird ein zufällig generierter Schlüssel in dieser Datei abgelegt, welcher zusätzlich zum Passwort zum Entsperren benötigt wird. Dadurch kann ein Angreifer, obwohl er das Passwort gestohlen hat, den verschlüsselten Container nicht öffnen.
Steuerung per Skript
Bei diesem Beispiel gehe ich davon aus, dass ein Container angelegt wurde, der mit einem Passwort und einer Schlüsseldatei gesichert wurde. Wie ein Container in VeraCrypt angelegt werden kann, wird zum Beispiel von Martin Straub oder Boris Hofferbert beschrieben. Mehr zum Thema Schlüsseldatei gibt es in der offiziellen Anleitung von VeraCrypt.
Zur Steuerung von VeraCrypt werden Batch-Dateien, auch batch file, Batchdatei, Batchskript oder Stapelverarbeitungsskript genannt, verwendet. Es sind Textdatei mit Befehlen für die Eingabeaufforderung unter Windows, die die Dateiendung .bat verwenden. Daher werden damit kleine Helfer erstellt, um oft genutzte Befehle automatisiert auszuführen. Der Vorteil ist, dass sie mit einem beliebigen Texteditor, zum Beispiel mit dem Editor, erstellt und bearbeitet werden können.
Container aktivieren
Das Skript besteht aus zwei Zeilen. In der ersten Zeile wird mit dem Befehl „@ECHO OFF“ die Ausgabe der Befehle der Stapelverarbeitungsdatei unterdrückt, dadurch erscheint kein extra Fenster. In der zweiten Zeile erfolgt der eigentliche Aufruf von VeraCrypt. Als Erstes wird der Pfad der EXE-Datei von VaraCrypt angegeben und danach werden die Parameter übergeben. Eine Übersicht aller Parameter gibt es auf der offiziellen Website.
Als Erstes wird mit „/volume“ der Name der Container-Datei übergeben, in meinem Fall lautet er „veracrypt.hc“ und liegt im selben Verzeichnis wie die BAT-Datei. Danach wird mit „/keyfile“ der Pfad zur Schlüsseldatei übergeben. In meinem Fall liegt sie in meinem Benutzerordner im Unterordner „sicherheit“ und heißt „veracrypt“. Mit „/letter“ gefolgt von dem Buchstaben Z wird der Laufwerksbuchstaben angegeben. Die Anweisung „/explore“ sorgt dafür, dass im Anschluss direkt der Explorer geöffnet wird. Mit „/quit background“ wird die normale Benutzeroberfläche von VeraCrypt nicht angezeigt, sondern stattdessen nur das Passwortfeld. Als Dateinamen kann zum Beispiel „veracrypt_on.bat“ verwendet werden.
@ECHO OFF "%ProgramFiles%/VeraCrypt/veracrypt.exe" /volume veracrypt.hc /keyfile "%userprofile%/sicherheit/veracrypt" /letter Z /explore /quit background
Container deaktivieren
Um das Laufwerk wieder zu deaktivieren bzw. das Laufwerk auszuwerfen (unmount), wird der Parameter „/dismount“ in Kombination mit dem Laufwerksbuchstaben verwendet. Und „/quit background“ sorgt wieder dafür, dass dem Benutzer kein extra Fenster angezeigt wird. Hier kann zum Beispiel der Dateinamen veracrypt_off.bat“ verwendet werden.
@ECHO OFF "%ProgramFiles%/VeraCrypt/veracrypt.exe" /dismount Z /quit background
Nach dem Doppelklick auf die Datei wird kurz das Fenster der Eingabeaufforderung angezeigt. Sobald der Container deaktiviert worden ist, schließt sich das Fenster automatisch.
Fazit
Die Erfahrung zeigt, dass Sicherheitslösungen nur akzeptiert und eingesetzt werden, wenn sie einfach zu bedienen sind und keinen großen Mehraufwand darstellen. Mit diesen beiden Skripten kann VeraCrypt sehr einfach verwendet werden, ohne dass die Steuerung über die Benutzeroberfläche erfolgen muss. Da nur ein Doppelklick auf die BAT-Datei und eine Passworteingabe notwendig sind, ist damit eine starke Verschlüsselung auch für Laien umsetzbar. Die zusätzliche Verwendung einer Schlüsseldatei sorgt für eine bessere Absicherung. Da der Zugriff immer nur möglichst kurz erfolgen soll, kann mit der zweiten BAT-Datei der verschlüsselte Container wieder komfortabel deaktiviert werden.
Vielen Dank für die Erklärung. Habe VeraCrypt bisher auch immer verwendet. Ich finde für mich zwar keinen aktuellen Nutzen, dennoch freue ich mich immer darüber etwas neues in diese Richtung zu lernen.