Schlagwort-Archiv: Software

truecrypt-header

TrueCrypt im Alltagseinsatz

truecrypt-logoPer Hardware verschlüsselte externe Festplatten wurden in (iX 1/2009, Seite 90-91) vorgestellt und verglichen. Natürlich kann man eine externe USB-Festplatte auch mit frei zugänglichen Mitteln auf einen vergleichbaren Sicherheitslevel bringen. Thematisch passend hat Jürgen Pabel auf der 25C3-Konferenz in Berlin einen interessanten Vortrag über FDE (Full Disk Encryption) gehalten. Eins der Hauptprobleme bei den Kauflösungen ist die mangelnde Portabilität. Bei allen vorgestellten Lösungen ist man auf Windows als Betriebssystem festgelegt. Was aber, wenn man statt dessen Linux oder Mac OS X benutzt oder Daten sicher zwischen den drei genannten OS-Welten hin und her bewegen möchte?

truecrypt-headerDafür bietet sich TrueCrypt an. TrueCrypt ermöglicht das Arbeiten mit Verschlüsselung auf zwei Arten. Man kann eine verschlüsselte Datei erstellen, in der ein eigenes Dateisystem existiert (FAT, NTFS, Ext2, EXT3, je nach Host-Betriebssystem). Diese Datei wird dann mittels TrueCrypt gemountet, so dass man damit wie mit einem Netzlaufwerk arbeiten kann. Oder man verschlüsselt eine komplette Partition oder einen ganzen Datenträger. TrueCrypt verschlüsselt mittels AES, Serpent oder Twofish sowie mit Kombinationen davon.
In der aktuellen Version 6.1 unterstützt es Windows (2000, XP, Vista), Linux und Mac OS X (10.4 und 10.5). Für etwaige Ports zu Solaris oder BSD steht der Quellcode zur freien Verfügung, TrueCrypt ist in großen Teilen Open Source, steht allerdings nicht unter der GPL, sondern unter der TrueCrypt Collective License.
Ein Vorteil gegenüber den Fertiglösungen ist damit herausgearbeitet, die Portabilität. Ein zweiter Vorteil liegt in der Tatsache, dass der Quellcode offen liegt. D.h. es sind keinerlei Hintertürchen für regierungsseitigen Wissensdurst vorhanden. Jeder kann den Quellcode einsehen und sich ggf. sein eigenes Programmpaket kompilieren, um ganz sicher zu gehen. Bei den gekauften Fertiglösungen muss man sich auf die Versicherung der Hersteller verlassen.

Externe Festplatte verschlüsseln

Hierzu bieten sich zwei Modi an. Ist man sicher, dass die Festplatte grundsätzlich immer an Rechnern betrieben wird, auf denen TrueCrypt schon installiert ist, kann man die komplette Festplatte per TrueCrypt verschlüsseln. Daten, die sich evtl. noch auf der externen Festplatte befinden, müssen auf ein anderes Medium gesichert werden, da während der Verschlüsselung der externen Festplatte selbige komplett neu formatiert wird!
Ausgehend von Version 6.1 und Windows als Betriebssystem geht die Vollverschlüsselung einer externen Festplatte in folgenden Schritten vor sich. Zuerst wählt man im Wizard den Punkt “Create a volume within a non-system partition/device“. Um einfach nur eine externe Festplatte zu verschlüsseln, wählt man in der nächsten Dialogbox “Standard TrueCrypt volume“.
Als nächstes muss man die zu verschlüsselnde Festplatte auswählen. Gerade hier sollte man unbedingt die nötige Sorgfalt wahren. Ansonsten kommt es zu Datenverlusten, wenn man sich bei der Auswahl der Festplatte irrt.

Auswahl der zu verschlüsselnden Partition

Auswahl der zu verschlüsselnden Partition

Um ganz sicher zu gehen, sollte man sich die nun erscheinende Warnbox gründlich durchlesen. Da das Ziel diesmal die komplette Verschlüsselung der Festplatte ist, geht es nun mit den “Encryption Options” weiter. Für den ersten Versuch kann man es bei den Standardeinstellungen belassen, AES als Verschlüsselungsalgorithmus und RIPEMD-160 als Hash-Algorithmus. Die Volume Size, d.h. die Größe der zu verschlüsselnden Festplatte wird automatisch ausgelesen und hier nochmal angezeigt. Dies ist die letztmalige Gelegenheit, zu überprüfen, ob man wirklich das richtige Ziel für die Verschlüsselung ausgewählt hat.
Nächster Punkt ist die Vergabe eines starken Passworts. Dazu ist schon viel geschrieben worden, ich rate hier zu einem Passwort von deutlich mehr als acht Zeichen, das man sich merken kann, ohne es aufzuschreiben und das mindestens Groß- und Kleinschreibung sowie Zahlen und Sonderzeichen enthält. Ich persönlich verwende eines mit zwanzig Stellen! Vorsicht! Hat man das Passwort irgendwann vergessen, gibt es absolut keinen Weg mehr, an den Inhalt des verschlüsselten Bereichs heranzukommen.
Die nächste Dialogbox fragt ab, ob man ggf. Dateien größer als 4 GB innerhalb des verschlüsselten Bereichs speichern will. Das hat natürlich auswirkungen auf das innerhalb des Containers zu verwendende Dateisystem. Generell kann Truecrypt nur die Dateisysteme innerhalb des Containers anlegen und nutzen, die vom darunterliegenden Betriebssystem zur Verfügung gestellt werden. D.h. für Windows werden NTFS und FAT unterstützt, für Linux FAT, EXT2 und EXT3 und für Mac OS X FAT und HFS+. TrueCrypt macht entsprechende Vorschläge für das zu wählende Dateisystem. Soll die zu verschlüsselnde Festplatte später von verschie3denen Betriebssystemen beschreibbar sein, muss man FAT als kleinsten gemeinsamen Nenner wählen. NTFS eignet sich mittlerweile für den Datenaustausch zwischen Windows und Linux, für Macs nur eingeschränkt, da ohne Zusatztreiber nur lesender Zugriff auf NTFS-Partitionen möglich ist.

Auswahl des zu verwendenden Filesystems

Auswahl des zu verwendenden Filesystems

Da die Verschlüsselung in diesem Beispiel unter Windows Vista passiert, stehen nur NTFS und FAT zur Auswahl. TrueCrypt schlägt folgerichtig NTFS vor. Während man hier herumrätselt, kann man schon einmal die Maus unkontrolliert über das Fenster bewegen, um den Random Pool zu füllen, der im Anschluß für die eigentliche Verschlüsselung benutzt wird. Ein Mausklick auf “Format” setzt nun unwiderruflich die Verschlüsselungsformatierung in Gang, d.h. ab jetzt sind etwaige noch auf dem Datenträger vorhanden gewesene Altdaten gelöscht. Die Formatierung und Verschlüsselung der 40 GB Festplatte dauert ca. 40 min.
Nachdem die Festplatte fertig formatiert und verschlüsselt ist, muss sie noch ins System eingehängt werden. Windows hat die Platte auf dem Testsystem als Laufwerk G: erkannt, aber so bekommt man den verschlüsselten Speicherbereich nicht zu sehen. Man muss die Festplatte zusätzlich unter einem noch nicht belegten Laufwerksbuchstaben per TrueCrypt einhängen, auf dem Testsystem H:. Unter Linux und Mac OS X werden TrueCrypt-Container und Devices unter /media/truecryptN eingehängt, wobei N von 1 bis 32 reicht.
Unter Windows wählt man einen freien Laufwerksbuchstaben in TrueCrypt und klickt entweder auf die Schaltfläche “Auto-Mount Devices“, dann sucht TrueCrypt nach einem noch nicht eingebundenen verschlüsselten Gerät oder auf “Select Drive“, dann muss man das Gerät selbst angeben, was üblicherweise schneller geht. Das war’s fast schon.
vor dem Trennen der Kabelverbindung zwischen USB-Festplatte und System sollte man tunlichst erst in TrueCrypt das entsprechende Gerät per “Dismount” aushängen, da sonst Datenverlust droht. Bei einem Test mit einem 1 GB USB-Stick waren die gerade auf den verschlüsselten Stick kopierten Daten nicht mehr vorhanden, nachdem der Stick einfach vom System getrennt wurde, ohne ihn vorher per Dismount freizugeben.

Will man nicht extra einen zusätzlichen (unverschlüsselten) USB-Stick mit den nötigen Installationsdateien herum tragen, bietet es sich an, die externe Festplatte in zwei Partitionen aufzuteilen, eine kleine unverschlüsselte, auf der sich die TrueCrypt- Installationsdateien für Linux, Windows und Mac OS X befinden, sowie eine große verschlüsselte. Alternativ kann man auf die Partitionierung verzichten und einfach einen sehr großen TrueCrypt-Container auf der Festplatte erzeugen.
Natürlich geht all das auch mit eine USB-Stick. Handelsübliche Exemplare haben mittlerweile 8-16 GB und ein Ende ist nicht abzusehen. In der Praxis hat es sich bewährt, den Stick nicht komplett zu verschlüsseln, sondern als Träger für TrueCrypt-Containerdateien zu benutzen. Das hat den Vorteil, dass man die TC-Container auf andere Medien sichern kann, ohne sie dafür zu mounten.

Neben der Verschlüsselung eines ganzen Datenträgers bietet TrueCrypt darüber hinaus noch einige Features, die die Fertiglösungen naturgemäß nicht bieten können. Genannt sei hier z.B. das Erstellen von Hidden Volumes, die nachträgliche Verschlüsselung einer kompletten Windows-Installation oder die Benutzung von Keyfiles.
Zu all dem kommt noch die vom TrueCrypt Projekt hervorgehobene “Plausible Deniability”, d.h. das man TrueCrypt so betreiben kann, dass man glaubhaft abstreiten kann, überhaupt irgendwo verschlüsselte Daten zu halten.

Hidden Volume

Dabei wird in einer verschlüsselten Datei/Partition/Festplatte ein weiteres, vollkommen unsichtbares Hidden Volume innerhalb des freien Speicherbereichs eingerichtet. Mountet man den so präparierten TrueCrypt-Container mit dem normalen Passwort, bekommt man diesen versteckten Bereich nie zu sehen. Er verbirgt sich im freien Teil des TC-Containers und taucht nicht einmal als Dateiname im “offenen” Container auf. Mountet man den TC-Container statt mit dem “offenen” Passwort mit einem zweiten für das Hidden Volume, wird stattdessen der versteckte Container geöffnet. Sollte tatsächlich das Szenario entstehen, dass man gezwungen ist, die Existenz eines TrueCrypt-Containers zuzugeben und darüber hinaus gezwungen ist, dass Passwort für diesen Container anzugeben, gibt man das offene Passwort an. Dem Container ist nicht anzusehen, dass er einen zweiten, verborgenen Container enthält. Ggf. kann dieser zweite Bereich überschrieben werden, wenn das Hidden Volume nicht geschützt wurde. Einsehbar ist er für nicht Eingeweihte jedenfalls nicht.

Verschlüsselung einer schon bestehenden Windows-Installation

Das Verschlüsseln einer Windows-Systempartition setzt zwingend das Brennen einer Rescue-Disk voraus. Die Verschlüsselungsroutine fragt diese Rescue Disk ab, man kommt also nicht darum herum. Natürlich ist das auch sehr sinnvoll, denn ohne diese Rescue Disk kommt man im Ernstfall nicht mehr an die verschlüsselte Installation, falls etwas schief gegangen ist.
Danach wird durch die Migrationsroutine ein Test durchgeführt, bei dem zwar schon das TrueCrypt-Passwort nötig ist, die eigentliche Systempartition aber noch nicht verschlüsselt wurde. Das passiert erst nach erfolgreichem Test und zwar on-the-fly. Von nun an muss man bei jedem Neustart oder Reboot des Systems zuerst das TrueCrypt-Passwort eingeben, dann erst startet Windows. Im Laufenden Betrieb ist dann von der Verschlüsselung nichts mehr zu bemerken. Es ist auch keine signifikante Geschwindigkeitsänderung wahrnehmbar.

Authorisierung mittels Keyfiles

Wem die Sicherheit durch das Passwort noch nicht reicht, kann einen Schritt weiter gehen und zusätzlich Keyfiles mit angeben, die zumMounten eines TrueCrypt-Cpontainers zusätzlich eingetragen werden müssen. Dann reicht zum Öffnen des TC-Containers nicht mehr allein das Passwort, man muss auch die richtigen Keyfiles zur Hand haben. Diese Keyfiles kann man mittels TrueCrypt erzeugen oder man definiert einfach vorhandene Dateien, Bilder, Videos, PDfs etc. Wichtig ist nur, dass die Keyfiles nicht mehr verändert werden dürfen, nachdem sie einem TrueCrypt-Container zugeordnet wurden.

Glaubhaftes Abstreiten

Plausible Deniability ist eins der Features von TrueCrypt, für das man selbst ein wenig tun muss. Einer TrueCrypt-Containerdatei sieht man nicht an, dass sie eine ist, auch dann nicht, wenn man den Hex-Code durchforstet. Das setzt natürlich voraus, dass man seine TC-Container nicht mit Dateinamen wie “ultrageheim.tc” etc. versieht. Überhaupt sollte, wer den Betrieb von TrueCrypt verschleiern will, auf die Endung *.tc verzichten und, zumindest für Windows, die Traveller-Version von TrueCrypt einsetzen, da sie nicht installiert werden muss, sondern von einem USB-Stick betrieben werden kann.
Zusätzlich sollte im TrueCrypt Hauptfenster das Häckchen bei “Never save history” gesetzt sein”. Unter “Settings -> Preferences” sollte man sich die Auto-Dismount Optionen genau anschauen und die richtige Balance zwischen Benutzerfreundlichkeit und Geheimhaltungswillen für sich finden. Den Passwort-Cache sollte man ggf. auch abschalten.
Idealerweise versteckt man einen TrueCrypt-Container zwischen zahlreichen anderen etwa gleich großen. Und wenn diese Container dann nicht genau 100 MB groß sind und evtl. auch noch ein Hidden Volume enthalten, ist man der Plausible Deniability so nah, wie irgend möglich.

Praktischer Einsatz

Ich habe TrueCrypt seit zwei Jahren auf meinem Firmennotebook im Einsatz. Alles, was sich normalerweise in “Eigene Dateien” befindet, steckt auf dem Notebook in einem TrueCrypt-Container. Dieser Container wird im Büro regelmäßig komplett auf ein Netzlaufwerk gesichert. Zusätzlich habe ich meist noch eine Version auf USB-Stick dabei. Sollte der Ernstfall eintreten und das Firmennotebook auf Reisen “verschwinden”, ist es zwar um die Hardware schade, die sensitiven Informationen sind aber vor dem Zugriff durch Dritte geschützt.

Fazit

TrueCrypt bietet ohne Zusatzkosten ein hohes Maß an Verschlüsselungsfunktionalität und ist auch für Einsteiger einfach anzuwenden. Gegenüber fertigen Hardwareprodukten hat es den Vorteil, neben Windows auch Linux Und Mac OS X zu unterstützen. Erkauft wird das durch eine etwas umständlichere Handhabung, die im Alltagsbetrieb aber keinen sonderlich hohen Mehraufwand bedingt.

Links

Meine Backup-Lernkurve

Meine erste leidvolle Erfahrung mit Datenverlusten machte ich, als ich eigentlich schon eine recht gute Backup-Strategie verfolgte. Es war zu Zeiten meiner Diplomarbeit, die ich an einem auf 4 MB RAM aufgebohrten Atari Mega ST2 mit externer 40 MB Festplatte schrieb. Der Rechner war mit dem damals neuesten Betriebssystem ausgerüstet, TOS 2.06, mit dem sich sogar Tastaturkommandos festlegen ließen. Davon hatte ich natürlich weidlich Gebrauch gemacht, genauso wie von der Option, unnötige Sicherheitsabfragen für Poweruser wie mich abzuschalten.

Alle wichtigen Dateien meine Diplomarbeit betreffend befanden sich in einem Verzeichnis Diplom auf einer der fünf Festplattenpartitionen. Den Inhalt dieses Verzeichnisses sicherte ich jeden Tag auf einen Diskettensatz, von denen ich drei hatte, jeder bestehend aus zwei MF2DD-Disketten, d.h. je 720 kbyte Speicherplatz. Irgendwann kam der Tag, an dem der Diplomordner ca. 1,5 MB Daten enthielt und die Einführung einer dritten Diskette pro Satz notwendig würde. Um zu erkunden, wieviel Speicherplatz tatsächlich verbraucht wurde, hatte TOS die Funktion “show Info”, die ich mit dem Tastenkürzel “S” belegt hatte. Also Verzeichnis anklicken mit der Maus, “S” drücken und das Ergebnis abwarten.

Es erschien eine Dialogbox, die rasant Dateien herunterzählte. Es dauerte etwas, bis mir bewusst wurde, dass ich statt “S” “D” gedrückt hatte, das Tastenkürzel, mit dem ich den Delete-Befehl belegt hatte. Nun liegen diese beiden Tasten direkt nebeneinander, was an sich schon unglücklich gewählt ist. Dadurch, das ich die Sicherheitsabfragen abgeschaltet hatte, gab es aber auch keinerlei Vorwarnung und keine rechtzeitige Abbruchmöglichkeit.

Einen Teil der Daten konnte ich durch schlichtes Ausschalten des Rechners retten, einen großen Teil aus den Sicherungen des Vortages wieder auf die Festplatte zurückspielen. Verloren waren nur die Arbeit eines Tages, ziemlich viel Text, den ich zumindest vorher noch ausgedruckt hatte und einige Grafiken, die mich ca. zwei Stunden Arbeit gekostet hatten. Hätte ich gar kein Backup gehabt, hätte mich der falsche Tastendruck um Wochen zurückgeworfen, so war es nur ein halber Tag.

Merke, sei wach und auf der Hut, wenn Du Deine Backups machst, sie sind mit das Wichtigste an der Arbeit mit Computern.

Meine zweite Backup-Erfahrung war weniger kritisch. Während meiner Doktorandenzeit wohnte ich im zehnten Stock eines Mainzer Studentenwohnheims, in dem es gelegentlich zur Auslösung des Feueralarms kam. Zu der Zeit kam ich wieder mit zwei Disketten aus, diesmal allerdings ZIP-Disketten, die jeweils 100 MB fassten. Ich hatte, aus schierer Beschaffungsnot allerdings nur zwei Sätze ZIP-Disketten, die ich sowohl für den Transport der Daten zwischen Institut und Wohnheim als auch zu Backup-Zwecken benutzte.

Eines schönen Abends war es dann soweit, das Szenario zu erproben. Ich war gerade am Tippen, als der Feueralarm los ging. Schnell die letzten Daten auf die passende ZIP-Diskette gesichert, den kompletten Satz in die Hemdtasche gesteckt und raus aus dem Zimmer. Zehn Stockwerke tiefer versammelten wir uns dann auf dem Parkplatz, neben mir ein ägyptischer Gastdoktorant, der mehrere Leitz-Ordner auf beiden Armen balancierte. Ich fragte ihn, ob das seine Doktorarbeit sei, er nickte, ich zog meine beiden ZIP-Disketten aus der Hemdtasche und erklärte ihm, das dort meine Dissertation gespeichert sei. Ja, ich weiss, aber der kleine Triumph hat mich in meiner Sicherungsstrategie bestärkt.

Etwas später bewährte es sich dann, dass ich die Arbeit auf zwei Diskettensätzen hatte, mein erstes ZIP-Laufwerk starb nämlich den Click of Death. Das passierte bei der ersten Serie von Iomega ZIP-Drives und machte sich dadurch bemerkbar, dass beim Medienzugriff vernehmliche Klacklaute zu hören waren. Das Gemeine daran war, steckte man eine der damit befallenen Disketten in ein intaktes Laufwerk, konnte es gut sein, dass das eigentlich intakte Laufwerk durch den Zugriff auf die geschädigte Diskette ebenfalls Schaden nahm.

Als den ersten Satz Disketten das Schicksal ereilte, erstellte ich mit dem zweiten, im Institut vorhandenen Laufwerk sofort einen neuen Satz Disketten, meldete bei Iomega mein Laufwerk und die zwei Disketten als defekt und bekam postwendend ein Ersatzlaufwerk samt Ersatzdisketten. In der gleichen Verpackung schickte ich mein kaputtes Laufwerk samt befallener Medien an Iomega. das war’s.

Merke, habe immer mehr als einen Satz Backup-Medien. Geht einer kaputt, sichere den Anderen sofort auf neue Medien.

Meine nächste Begebenheit mit Backups erlebte ich zum Jahrtausendwechsel. Hier kamen mehrere Dinge zusammen. Die Firma, bei der ich beschäftigt war, hatte sich eigentlich optimal auf Y2K vorbereitet. Im Jahr vorher wurden alle Arbeitsplatzrechner erneuert und danach separat noch einmal daraufhin überprüft, ob sie Y2K ready waren, was nach bestandener Prüfung durch einen kleinen Aufkleber dokumentiert wurde.

Mitte des Jahres wechselte der Systemadministrator der Abteilung, der leider, da der vorherige sehr plötzlich gekündigt hatte, nicht so eingearbeitet werden konnte, wie es wohl sinnvoll gewesen wäre. Aber wir hatten ja einen relativ neuen Abteilungsserver von Compaq im Keller, der samt Tapestreamer und USV zwei 19″ Racks füllte.

Wir fühlten uns dem Jahrtausendwechsel also gewachsen. Um so überraschter waren wir, als wir Anfang Januar an die Schreibtzische zuirückkehrten und den Datenstand vom September 1999 vorfanden. Was war geschehen?

Kurz vor Silvester war dem neuen SysAdmin aufgefallen, das zwar alle Windows NT4 Systeme gepatcht waren, der Abteilungsgserver aber noch nicht. Der lief noch auf einem alten Servicepack. Also ging er in den Keller und spielte das normale ServicePack ein, mit dem auch all unsere Arbeitsplatzrechner behandelt worden waren.

Dummerweise enthielt der Compaq-Server aber ein RAID-System samt Controller, für das im Standard-Servicepack kein passender Treiber vorhanden war. Beim nächsten Booten erkannte der Server den ehemaligen RAID-Plattenstapel nur noch als mehrere Laufwerke und band sie auch so ins System ein. Damit waren die Daten darauf erst einmal futsch. Das Problem mit dem fehelnden Treiber konnten die Servicetechniker von Compaq schnell lösen. Als das RAID wieder lief, stellte sich allerdings heraus, dass die letzten Vollbackups korrupt waren.

Alles, was noch exisierte war das Vollbackup von September und seit dem tägliche Differenzbackups. Immerhin. Dummerweise machte dann bei exzessiven Zurückspielen der Daten der Tapestreamer asclappund es dauerte etwas. passenden Ersatz heran zu schaffen. Insgesamt vergingen etwa zwei Wochen, bis der Stand von Weihnachten wiederhergestellt war.

Merke, ein Backup ist nur gut, wenn es regelmäßig überprüft wird.