vgt.at Verein gegen
Tierfabriken
Visit us on Facebook Visit us on Twitter Visit us on YouTube Visit us on Instagram

IT-Sicherheit und Privatsphäre

für gesellschaftliche engagierte Menschen, zum Schutz und Ausbau der demokratischen Grundrechte

Inhaltsverzeichnis überspringen

Inhaltsverzeichnis

  1. Einleitung
    1. Warum verschlüsseln?
    2. Das Fortschreiten des Internetzeitalters – die aktuelle Situation
    3. Zur Sicherheit von Verschlüsselungsalgorithmen
    4. Was ist freie Software und warum ist sie wichtig?
  2. Zum Einstieg
    1. PC bzw. Mac
      1. E-Mails verschlüsseln mit GnuPG
        1. Vorbereitung
        2. Einrichtung
        3. Funktionsprinzip
        4. Bedienung
      2. Datenträger verschlüsseln
        1. Einleitung
        2. Starke Passphrasen oder Passsätze
        3. für GNU/Linux: LUKS
        4. für Mac: FileVault
        5. für Windows: VeraCrypt
    2. Smartphone
      1. Warnung vorab und genereller Umgang
      2. Signal: Verschlüsselt schreiben, Daten tauschen und telefonieren
      3. Bildschirmsperre
      4. Online-Backup deaktivieren
      5. Weitere Maßnahmen für Android
      6. Weitere Maßnahmen für iOS
  3. Für Eingeübte
    1. PC bzw. Mac
      1. Gedanken zur Wahl des Betriebssystems
        1. Grundsatz
        2. Begründung für Interessierte und Vorstellung von GNU/Linux
        3. Warnung vor Windows 10!
      2. GnuPG richtig benutzen
        1. Den privaten Schlüssel mit einer Passphrase schützen
        2. Was sind Signaturen? Nachrichten signieren
        3. Schlüssel verifizieren
        4. Vertrauen
        5. Schlüssel signieren und das Web of Trust
        6. Die Schlüsselserver
        7. Mehr als eine Mailadresse pro Schlüssel definieren
        8. Howto: einen neuen Schlüssel erstellen und den alten vernichten
      3. Anonym surfen mit Tor
        1. Einleitung: Tor stinks
        2. Der Tor-Browser
        3. Den Tor-Browser richtig bedienen
      4. Den Webbrowser abdichten
        1. Welchen Browser verwenden?
        2. Tipps für Firefox
        3. Tipps für Chrome
      5. Ein Faktum zu HTTPS
      6. Umgang mit Datenträgern aus dubiosen Quellen
      7. Externe VeraCrypt-Datenträger richtig formatieren
      8. Passphrasen mit KeePassX sicher verwalten
      9. Schnüffeln von Windows und OS-X einschränken
        1. Windows 10
        2. Mac
      10. Schutz vor Hardware-Keyloggern: Das Wachs-Siegel
      11. Schwer überwachbare E-Mail-Provider
      12. Webcam überkleben
      13. Firejail: Programmberechtigungen limitieren
        1. Über Firejail
        2. Firejail installieren
        3. Erste Schritte mit Firejail
        4. Die Konfigurationsdateien: Lokalisierung und Aufbau
        5. Einbindung von Apparmor
        6. Konfigurationsdateien selbst erstellen
        7. Programme immer per Firejail ausführen
        8. Weiterführende Links und Quellen
    2. Smartphone
      1. Signal: Fingerprints checken
      2. Gut zu wissen: Forward Secrecy von Signal
      3. Webcam des Handys überkleben
      4. 3.2.4 Tor am Smartphone
  4. Anhang
    1. Adresssammlung: Wie schütze ich die Freiheit des Internets?

Zum Aufbau der Seite – Für wen welches Kapitel?

Kapitel 1, Einleitung, erklärt die Gründe für IT-Sicherheit, räumt mit mehreren Mythen auf und führt allgemein kurz in das Thema ein.

Kapitel 2, Zum Einstieg, ist für alle Menschen empfehlenswert, die sich aktivistisch regelmäßig in Österreich engagieren, und erfordert kaum irgendwelche Computerkenntnisse. Egal ob GPG oder Signal: Anderen Aktivist_innen zumindest einen verschlüsselten Kanal anzubieten, ist essentiell.

Für Menschen, die sich bereits im Bedienen der im Kapitel 2 vorgestellten Programme wohl fühlen, wird es Zeit, sich die weiterführenden Anleitungen in Kapitel 3, Für Eingeübte, anzusehen. Kapitel 3 deckt alles ab, was Aktivist_innen mit durchschnittlicher PC-Erfahrung problemlos zustande bringen. Kapitel 3 muss nicht durchgepaukt werden, sondern kann auch als Nachschlagewerk verstanden werden.

1. Einleitung

1.1 Warum verschlüsseln?

Artikel 8 der Europäischen Menschenrechtskonvention lautet:

Recht auf Achtung des Privat- und Familienlebens

  1. Jede Person hat das Recht auf Achtung ihres Privat- und Familienlebens, ihrer Wohnung und ihrer Korrespondenz.
  2. Eine Behörde darf in die Ausübung dieses Rechts nur eingreifen, soweit der Eingriff gesetzlich vorgesehen und in einer demokratischen Gesellschaft notwendig ist für die nationale oder öffentliche Sicherheit, für das wirtschaftliche Wohl des Landes, zur Aufrechterhaltung der Ordnung, zur Verhütung von Straftaten, zum Schutz der Gesundheit oder der Moral oder zum Schutz der Rechte und Freiheiten anderer.

Privatsphäre ist also ein Menschenrecht. Es darf nicht strafbar sein, die eigenen Daten und Kommunikationen durch technische Maßnahmen vor dem Zugriff Dritter zu schützen. Weiters lautet §51 Ziffer 1 StPO:

Der Beschuldigte ist berechtigt, in die der Kriminalpolizei, der Staatsanwaltschaft und dem Gericht vorliegenden Ergebnisse des Ermittlungs- und des Hauptverfahrens Einsicht zu nehmen.

Wie sich in der Tierschutzcausa zeigte, ist dieser Text im Ernstfall nicht einmal das Papier wert, auf dem er geschrieben steht. De facto ist es so, dass die Sicherheitsbehörden im schlimmsten Fall alle Daten über Zielpersonen sammeln, an die sie legal oder illegal kommen können. Damals wurde dann daraus ein Verdacht konstruiert, z. B.: Herr X war einen Tag vor dem Abbrennen der Jagdhütte mit dem Handy in der Umgebung eingeloggt, also muss er das Feuer gelegt haben. (Später stellte sich heraus, dass die Brandursache eine defekte Heizung war, und die Polizei dies auch wusste.) Oder: Herr Y hatte ein Bekennerschreiben der ALF auf dem PC gespeichert, also muss er der Urheber desselben sein. Das Perfide an der Sache ist nun, dass den Angeklagten die Akteneinsicht verweigert wurde, trotz mehrmaliger einschlägiger Gerichtsurteile!

Entlastende Indizien mussten auf Eigeninitiative gesucht werden. Aus diesen Erfahrungen folgt auch, dass alle Daten, die die Behörden über eine_n bekommen, für solche Zwecke missbraucht werden können.

Den Schluss, den ich als Aktivist daraus ziehe, ist, es den Behörden möglichst schwer zu machen, an Daten über mich zu kommen, die sie gegen mich verwenden können. Ein solches Vorgehen ist auch demokratiepolitisch legitim, solange ich selbst mich an die Regeln des zivilen Ungehorsams halte, wie sie Martin Balluch in seinem Buch Widerstand in der Demokratie (ISBN-13: 978-3853713044) erläutert. Wie er dort weiter aufzeigt, ist auch der Quellenschutz ein Grund, in zivilgesellschaftlichen Organisationen zu verschlüsseln. Verschlüsselung und allgemein Computer-Sicherheit sind die Antworten der Zivilgesellschaft auf überbordende, demokratiefeindliche, anhaltende Repressionen seitens der Behörden. Wenn der Staat und politisch gegnerische Gruppierungen menschenrechtswidrige Methoden anwenden, ist sie ohne Zweifel ein Gebot der Stunde.

1.2 Das Fortschreiten des Internetzeitalters – die aktuelle Situation

Galt lange Zeit der klassische PC als das Maß aller elektronischen Geräte, bekam er im Jahr 2007 mit der Vorstellung von Apples iPhone plötzlich Konkurrenz. Von vielen unbemerkt rückte mit dieser Erfindung auch die Möglichkeit des ultimativen Überwachungsstaats in greifbare Nähe, denn mit dem Smartphone trägt jede_r Bürger_in freiwillig ein Gerät mit sich, das problemlos jederzeit abhören, Daten hochladen und den Standort per GPS bestimmen kann. Daten, Nachrichten und Anrufe fehlen in dieser Aufzählung nur deshalb, weil sie schon vor 2007 abgegriffen werden konnten und wurden. Tatsächlich stellt die aktuelle Technik Möglichkeiten zur Überwachung bereit, wie sie nicht einmal in George Orwells Nineteen Eighty-four vorkamen! Protagonist Winston Smith konnte sich nämlich darin zumindest ohne laufende Standortermittlung durch den Überwachungsstaat bewegen.

Seitdem gerät die freie westliche Welt langsam immer weiter in einen Strudel aus Überwachung und Grundrechtseinschränkungen. The dream of internet freedom is dying, warnte IT-Anwältin Jennifer Granick. Jene Technologie, die einst als Katalysator für Demokratie und Menschenrechte galt, wendet sich nun gegen uns.

Doch es gibt auch Gutes zu berichten. Juni 2013 überreichte Whistleblower Edward Snowden interne Dokumente der NSA an die Presse. Snowdens Enthüllungen übertrafen unsere kühnsten Träume, und auf einmal war Gewissheit, was vorher als Verschwörungstheorie belächelt wurde. In den wenigen Jahren, die seitdem vergangen sind – dem Post-Snowden-Zeitalter – begann sich nun quer durch die IT-Community Widerstand zu regen. Nicht nur sind Öffentlichkeit und Medien für das Thema Überwachung viel sensibler geworden, auch die Programmierer_innen legen seitdem mehr Wert auf Sicherheit, und die Architektur des Internets wird seitdem auf bessere Beine gestellt: Das neue HTTP 2.0 wird auf Initiative von Mozilla und Google nur verschlüsselte Verbindungen zulassen. Auch die Höchstgerichte pfeifen regelmäßig übereifrige Regierungen zurück, indem sie beispielsweise die Vorratsdatenspeicherung oder das Safe Harbor-Abkommen für ungültig erklärten.

Die modernen Informationstechnologien sind ein zweischneidiges Schwert: Sie haben das Potential, die Menschheit ultimativ zu unterdrücken, wobei soziale Bewegungen schon bevor sich überhaupt ein Keim bildet verhindert werden können und die Freiheit der Einzelnen für immer Geschichte bleiben wird. In Ländern wie der VR China ist dies momentan Realität.

Das Internet könnte aber auch einer der Schlüssel zur Überwindung von Diktatur, Repression und Ungerechtigkeit sein. Durch die Vernetzung ist es leichter als je zuvor, viele Menschen mit einem Anliegen zu erreichen, es zu diskutieren, Proteste zu koordinieren und die Wahrheit ans Licht zu bringen und sie dort zu halten.

Wie sich das Internet in Zukunft weiter entwickelt, liegt in unseren Händen. Siehe Anhang: Adresssammlung: Wie schütze ich die Freiheit des Internets?

1.3 Zur Sicherheit von Verschlüsselungsalgorithmen

Ein weiteres Geschenk der Snowden-files ist ein Schnappschuss der Fähigkeiten und Grenzen der NSA, Verschlüsselung zu knacken. So einige Algorithmen gelten seitdem als unsicher, die übrig gebliebenen dafür als besonders sicher – immerhin ist der mächtigste IT-Geheimdienst der Welt daran gescheitert, mit einem Budget, das wohl größer ist als das aller anderen zusammen.

Sicherheit ist in diesem Zusammenhang natürlich immer relativ, insofern dass eine Information ein Jahr, zehn Jahre, 100 Jahre oder länger sicher ist. Immer wieder höre ich von verunsicherten Menschen, dass es doch alles nichts brächte, denn alles könnte in wenigen Monaten geknackt werden. Auch Informatik-Studierende äußern dies mitunter, nachdem sie als Hausübung einen RSA-Schlüssel geknackt haben. Ich muss dem entschieden widersprechen! Einer der wichtigsten Sätze, die Edward Snowden nach der Veröffentlichung schrieb, lautet:

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on.

Der Mann muss es wissen, denn schließlich vertraute er sein Leben diesen Algorithmen an, als er Kontakt zu Laura Poitras und Glenn Greenwald aufnahm. Starke Verschlüsselung zu knacken ist momentan vollkommen jenseits des Horizonts. Rein mathematisch dauert es bei guten Verfahren viele Millionen Jahre und länger, in der Praxis jedenfalls auch unter Nutzung aller Schwächen der Verfahren viel länger, als ein_e Jede_r von uns leben wird.

Menschen, die meinen, jede Verschlüsselung könnte gebrochen werden, machten sich offenbar keine Sekunde Gedanken über die Konsequenzen, die ein solcher Umstand hervorrufen würde. Die zunehmende Vernetzung der Welt hätte ohne starke Algorithmen nicht so stattgefunden, denn nicht nur Daten von Aktivist_innen, sondern auch Staatsgeheimnisse, Wirtschaftsgeheimnisse, Bankgeheimnisse und militärische Informationen werden damit abgesichert. Auch diese Institutionen kochen nur mit Wasser. (Dieser Satz gilt auch für die ach so allmächtige NSA.)

Als sicher gelten derzeit beispielsweise: RSA ab 2048 bit (e-Mail), AES ab 128 bit (für Datenträger), SHA ab 256 bit (zur Verifizierung von Daten). Von all diesen Algorithmen gibt es übrigens noch sicherere Varianten (RSA 4096 bit, AES 256 bit, SHA 512 bit). Eine Verlängerung um n bits steigert den Rechenaufwand der Verschlüsselung linear mit dem Summand n (AES 256 bit braucht also doppelt so viel Rechenarbeit wie AES 128 bit), steigert die Komplexität eines Angriffs aber um den Faktor 2n, also exponentiell.

Mit schlichtem Probieren aller Kombinationen, brute force, kommt mensch also nicht weit. Die einzigen Möglichkeiten des Einbruchs sind damit Schwächen der Implementierung in das Programm und Schwächen des Algorithmus selbst, mit denen seine Komplexität herabgesetzt werden kann. Ersteres lässt sich durch sorgfältige Auswahl der Programme in den Griff kriegen und die Sorgen bei Letzterem wurden mit den Snowden-files zerstreut.

Die meisten in diesem Dokument vorgestellten Programme setzen auf sichere Verschlüsselung und sind meist lang erprobte Lösungen, an denen sich schon so manche_r die Zähne ausgebissen hat.

Und Quantencomputer? Es wird gemunkelt, dass diese Verschlüsselung in kürzester Zeit knacken könnten, und auch, dass sie bereits in wenigen Jahren Realität sein könnten. Die Wahrheit ist nicht ganz so beängstigend: Hier muss explizit zwischen sog. asymmetrischer Verschlüsselung (Transportverschlüsselung, also z. B. für Mails und HTTPS) und symmetrischer Verschlüsselung (z. B. Festplattenverschlüsselung) unterschieden werden. Die Erste dürfte tatsächlich in heutiger Form unbrauchbar werden, die Zweite ist davon eher nicht betroffen. Quantencomputer vermögen die Komplexität des Problems bei symm. Verfahren um die Quadratwurzel zu vereinfachen. Es gilt also: z. B. AES 256 bit wäre dann so schwer wie heute AES 128 bit zu überwinden. In Zukunft werden hier also einfach längere Schlüssel eingesetzt und fertig. Und für asymmetrische Verschlüsselung müssen neue Verfahren entwickelt werden, wofür es auch schon erste Kandidaten gibt.

1.4 Was ist freie Software und warum ist sie wichtig?

Die meiste gängige Software ist proprietär, was im Wesentlichen bedeutet, der Quellcode des Programms ist nicht veröffentlicht worden. Der Quellcode besteht aus in einer Programmiersprache verfassten Befehlen, aus dem kundige Menschen das Verhalten des Programms einsehen können, nachdem es in Maschinensprache übersetzt (kompiliert) wurde. Nur mit dem Quellcode lässt sich ein Programm echt verstehen – liegt nur die kompilierte Datei vor, kann niemand sagen, was sie genau macht, wenn sie ausgeführt wird.

Hier kommt freie Software ins Spiel. Ohne ins Detail zu gehen, liegt bei freier Software der Quellcode vor, und zwar in einer Lizenz, die Veränderungen und deren Veröffentlichung ausdrücklich erlaubt. Nur freie Software bietet echten Schutz vor Hintertüren in Verschlüsselung und gravierenden Sicherheitslücken, die nicht oder langsam gepatcht werden. Freie Software ist immer gratis, jedoch ist bei frei nicht frei wie kostenfrei, sondern frei wie Freiheit gemeint. Mit freier Software macht mensch sich auch nicht von Konzernen abhängig. So manches strukturelle Problem der IT-Welt hat seine Ursprünge im Prinzip der proprietären Software.

Von fast allen in diesem Dokument empfohlenen Programmen ist der Quellcode öffentlich, meist handelt es sich auch um freie Software. Proprietäre Programme werden nur empfohlen, wenn es keine sichere freie Alternative gibt.

Das Spannungsfeld der Softwarefreiheit geht übrigens noch viel tiefer, denn schlussendlich entscheidet sich daran, ob wir unsere Maschinen beherrschen, oder sie unsere Freiheit einschränken und damit uns beherrschen. Jedes einzelne Überwachungsfeature von Smartphones und Computern gibt es nur deshalb, weil sie keine freie Software (und Hardware) darstellen!

Mehr über freie Software im sehr empfehlenswerten (frei verfügbaren) Grundlagenwerk von Richard Stallman, Free Software, Free Society.

2 Zum Einstieg

2.1 PC bzw. Mac

2.1.1 E-Mails verschlüsseln mit GnuPG

Eine gut ausgearbeitete Schritt-für-Schritt-Anleitung gibt es auch unter emailselfdefence.fsf.org.

2.1.1.1 Vorbereitung

Das Einrichten von E-Mail-Verschlüsselung gehört im aktivistischen Alltag zu den wichtigsten Sicherheitsmaßnahmen. Leider ist die Einrichtung mit mehreren Schritten verbunden – bei Problemen oder Unsicherheit einfach an eine entsprechende Vertrauensperson wenden.

Zu installierende Programme je nach Betriebssystem:

2.1.1.2 Einrichtung

Thunderbird wird nun gestartet und die eigene Mailadresse eingepflegt:

Bestehendes Konto auswählen

Zugangsdaten eingeben

Bei einigermaßen populären E-Mail-Providern treibt Thunderbird die Konfiguration von selbat auf. Wenn das nicht klappt, muss im Internet danach gesucht werden. Eine Suche nach z. B. gmx thunderbird oder Äquivalentes führt meist zum Erfolg.

Mensch kann sich jetzt zwischen IMAP und POP entscheiden. Bei IMAP wird jede Änderung (z. B. wenn eine E-Mail gelöscht wurde) an den Server zurückgemeldet, bei POP nicht. IMAP ist damit empfehlenswert, wenn Mails auch auf anderen Geräten wie dem Smartphone abgerufen werden, ansonsten ist POP besser:

Verbindungsprotokoll auswählen

Thunderbird lädt jetzt im Hintergrund die Nachrichten herunter. Wir können derweil fortfahren, indem wir das Menü oben rechts öffnen und Add-ons auswählen.

Add-ons anwählen

Dort wird in die Suche Enigmail eingegeben und dieses installiert.

Enigmail installieren

Nach dem Neustart von Thunderbird öffnet sich ein Assistent, der die abschließende Einrichtung übernimmt und ein Schlüsselpaar erzeugt. Gratulation, Du verfügst jetzt über GPG!

2.1.1.3 Funktionsprinzip

Nun zur Erläuterung: Dieses Schlüsselpaar verfügt über zwei Dateien: einen öffentlichen und einen privaten Schlüssel. Diese kann mensch sich wie Schloss und Schlüssel vorstellen. Der öffentliche Schlüssel (Schloss) kann veröffentlicht werden und jede_r kann damit eine Nachricht verschlüsseln (etwas damit zusperren) und Dir schicken. Aber nur Du verfügst über den privaten Schlüssel, mit dem sich die Nachricht entschlüsseln (die Kiste öffnen) lässt.

ACHTUNG: Hüte Deinen privaten Schlüssel wie Deinen Augapfel! Stelle sicher, dass ausschließlich Du ihn besitzt!

2.1.1.4 Bedienung

Sehen wir uns die Sache an. Dreh- und Angelpunkt von Enigmail ist die Schlüsselverwaltung. Sie ist leichter erreichbar, wenn die Menüleiste sichtbar gemacht wird. Dies geschieht mit einem Rechtsklick auf die Tableiste:

Rechtsklick auf die Tableiste

Nun ist die Schlüsselverwaltung unter Enigmail → Schlüsselverwaltung verfügbar. Dort scheint der eigene Schlüssel auf und hier werden sich auch alle fremden öffentlichen Schlüssel zeigen.

Schlüsselverwaltung öffnen

Für öffentliche Schlüssel gibt es sog. keyserver, auf die Jede_r Schlüssel hochladen und diese so veröffentlichen kann. Sie können über das Kontextmenü (Schlüsselserver) angesprochen werden. Beispielsweise kann der Name einer gewünschten Organisation eingegeben werden, zu der Schlüssel gesucht werden.

Sind erste Schlüssel importiert, kann diesen Mailadressen verschlüsselte Mails geschrieben werden. Enigmail beobachtet dafür das Verfassen neuer Nachrichten in Thunderbird und aktiviert, falls es für eine_n Adressat_in einen Schlüssel fand, die Verschlüsselung automatisch:

Automatische Verschlüsselung

ACHTUNG: Der Betreff wird nicht verschlüsselt, er sollte also keine verwertbaren Infos enthalten. Auch Anhänge werden verschlüsselt.

Im Prinzip war es das auch schon. Damit alle Deinen Schlüssel erhalten, solltest Du ihn noch ausschicken, beispielsweise auf die Mailingliste:

GPG-Schlüssel anhängen

Mehr Infos zu GnuPG gibt es im Abschnitt 3.1.2 GnuPG richtig benutzen.

2.1.2 Datenträger verschlüsseln

2.1.2.1 Einleitung

Während es bei GnuPG der private Schlüssel – eine Textdatei – ist, der nicht bekannt werden darf, ist es bei der Verschlüsselung von Datenträgern die verwendete Passphrase. Ein korrekt verschlüsselter Datenträger sieht im verschlüsselten Zustand wie wirrer Kauderwelsch aus. Am Beginn des Datenträgers befindet sich aber der Schlüssel, der mit der richtigen Passphrase gefüttert den Datensalat lesbar macht.

In der Praxis sieht das so aus: Will Mensch einen verschlüsselten Computer starten, wird sie_er gleich zu Beginn nach der Passphrase für die Entschlüsselung gefragt. Bei korrekter Eingabe startet das System anschließend hoch und verhält sich im laufenden Betrieb genau gleich wie ein nicht verschlüsselter PC.

ACHTUNG: Im laufenden Betrieb liegt der Schlüssel im entsperrten Zustand im Arbeitsspeicher! Das bedeutet, wenn der Repressionsbehörde das Gerät eingeschaltet in die Hände fällt, kann sie alles auslesen. Salopp gesagt ist die Verschlüsselung nur aktiv, wenn das Gerät ausgeschaltet ist. Im Notfall also Stecker ziehen bzw. Akku raus! Des Nachts sollte das Gerät ausgeschaltet werden.

ACHTUNG: Die zu verschlüsselnde Partition sollte vorher mit Zufallszahlen überschrieben werden, um die früheren Daten zu vernichten. (Formatieren tut dies nicht, sondern überschreibt nur den Beginn der Partition). Ansonsten können diese alten Daten allesamt ausgelesen werden, außer sie wurden zufällig mit den neuen verschlüsselten Daten überschrieben. Außerdem kann sonst von außen eingesehen werden, wo verschlüsselte Daten liegen und wo nicht, was theoretisch sogar für Angriffe auf die Verschlüsselung genutzt werden kann. Die besprochenen Programme bieten das Überschreiben allesamt an. Diese Option nicht deaktivieren. Aber einmal überschreiben reicht vollkommen. Die Ausnahme sind logischerweise Datenträger, die vorher bereits verschlüsselt waren – bei denen ist dies nicht nötig.

ACHTUNG: Wird durch einen unglücklichen Zufall der Schlüssel einer verschlüsselten Partition zerstört, sind alle Daten verloren! Backups sind bei Verschlüsselung also besonders wichtig.

2.1.2.2 Starke Passphrasen oder Passsätze

Ein solcher Datenträger kann technisch simpel mit dem Probieren verschiedener Kombinationen (brute force) attackiert werden, worum das Wählen einer starken Passphrase essentiell ist.

Empfohlen wird eine Passphrase aus zufälligen Groß-, Kleinbuchstaben, Zahlen und Sonderzeichen, die mindestens 20 (zwanzig) Zeichen lang ist. So etwas ist nicht ganz so leicht zu merken, aber mit ein bisschen Üben geht das problemlos. Des Memorieren der Passphrase kann einfach mit einem Texteditor gelernt werden.

Eine alternative Möglichkeit sind Passsätze: Aus einer Diceware-Wortliste lassen sich per Würfel zufällig aneinander gereihte Wörter erhalten. Die Methode wird in der Wikipedia beschrieben: https://de.wikipedia.org/wiki/Diceware, hier gibt es eine deutschsprachige Diceware-Liste. Um gleich sicher wie eine 20-stellige Passphrase zu sein, müssen 11 (elf) Wörter genommen werden.

ACHTUNG: Passphrasen nicht (dauerhaft) aufschreiben bzw. unverschlüsselt wo abspeichern!

2.1.2.3 für GNU/Linux: LUKS

Gängige GNU/Linux-Systeme verwenden LUKS (Linux Unified Key Setup) für Verschlüsselung. Dieses ist tief ins System integriert und ist sehr benutzer_innenfreundlich, kann aber nur bei der Installation des Systems aktiviert werden, nicht nachträglich.

Sämtliche populären GNU/Linux-Distributionen bieten bei der Installation eine entsprechende Option an. Hier am Beispiel Ubuntu:

LUKS Verschlüsselung beim Installieren auswählen

Wie unter GNU/Linux üblich, gilt: wer sich besser auskennt, kann mit etwas Handarbeit große Flexibilität bei der Installation erhalten. Für Debian-basierte Systeme verweise ich dafür auf wiki.ubuntuusers.de/System_verschlüsseln sowie im Fall von mehreren Systemfestplatten auf: wiki.ubuntuusers.de/System_verschlüsseln/Schlüsselableitung.

2.1.2.4 für Mac: FileVault

OS X muss nicht neu installiert werden, um FileVault zu aktivieren. Eine Anleitung gibt es unter: support.apple.com/de-de/HT204837.

ACHTUNG: FileVault bietet an, die Passphrase in der iCloud zu speichern! Dies ablehnen. Wenn es einmal hart auf hart kommt, wäre Apple, und damit die Repressionsbehörde, sonst in der Lage, das System zu entschlüsseln.

ACHTUNG: FileFault ist proprietär, siehe 1.4 Was ist freie Software und warum ist sie wichtig?

2.1.2.5 für Windows: VeraCrypt

VeraCrypt verschlüsselt zuverlässig und sicher.

Im Programm auf Create Volume klicken, im folgenden Dialog die Systemverschlüsselung auswählen und der Anleitung folgen:

mit VeraCrypt verschlüsseln

ACHTUNG: Verwendet nicht das proprietäre BitLocker, das u. U. vorinstalliert ist!

2.2 Smartphone

2.2.1 Warnung vorab und genereller Umgang

Es klaffen in (fast) allen Android-Smartphones große Sicherheitslücken, über die Schadsoftware eingeschleust werden kann. Das ist der Fall, weil die Hersteller selber dafür verantwortlich sind, Updates für ihre Handys zu liefern. Dies wird einerseits vernachlässigt und andererseits gezielt genutzt, um älteren Modellen keine Updates mehr zu liefern, damit Kund_innen einen Grund mehr haben, ein neues Handy zu kaufen, um das neue Android zu kriegen. Die Folge: zu jeder gegebenen Zeit weisen im Schnitt 90 % aller Geräte massive Sicherheitslücken auf!

Wie in 1.2 Das Fortschreiten des Internetzeitalters – die aktuelle Situation dargelegt ist, sind Smartphones allgemein die ideale Abhörwanze, die die Menschen mit sich herum schleppen. Genau als das sollten wir sie auch betrachten und behandeln. Was bedeutet das?

Das Handy sollte in vertraulichen Situationen am besten etwa in einen anderen Raum, in eine dicke Schublade, einen Kühlschrank o. Ä. gegeben werden, andernfalls ausschalten und wenn möglich Akku raus. (Ja es wurde bereits Malware entdeckt, die ein ausgeschaltetes Gerät vorgaukelt – wenn auch nicht besonders geschickt.)

Private GPG-Schlüssel, wichtige Passphrasen und andere sensible Daten haben auf dem Handy nichts verloren!

Die folgenden Empfehlungen sind Versuche, ein hoffnungslos kaputtes System zu reparieren. Sie bremsen Apple und Google ein, gegen behördliche Malware helfen sie aber nicht unbedingt.

2.2.2 Signal: Verschlüsselt schreiben, Daten tauschen und telefonieren

Signal ist ein Messenger ähnlich Whatsapp, jedoch mit vertrauenswürdiger Verschlüsselung. Verschlüsseltes VOIP (Telefonieren übers Internet) ist auch möglich. Derzeit (Anfang 2018) stellt Signal die brauchbarste App für sicheres Messaging dar, auch wenn sie alles andere als perfekt ist.

Der Download erfolgt wie üblich per Google Play bzw. iTunes. Wer die Google-Dienstevom Handy entfernt hat, kann es auch direkt von der Webseite holen. Die Einrichtung ist sehr einfach: Es wird nur nach der Telefonnummer gefragt und fertig.

Auf Android kann Signal auch SMS senden und präsentiert sich als Ersatz für die vorinstallierte SMS-App. Für einen angenehmen Übergang kann also einfach die SMS-App mit Signal ersetzt werden. Die App erkennt automatisch, welche Kontakte ebenfalls Signal verwenden und zeigt entsprechende Sende-Buttons.

Bei Personen, die Signal verwenden:

Schloss-Symbol

Verschlüsselte Signal-Nachrichten werden durch ein Schloss-Symbol gekennzeichnet:

offenes Schloss-Symbol

Und bei Personen, die kein Signal verwenden, werden normale SMS verschickt:

offenes Schloss-Symbol

Manchmal ist es nötig, jemandem trotz Signal eine SMS zu schicken (Serverausfall, kein Internet,…). Dies wird mittels langem Druck auf den Sende-Button erreicht. Es öffnet sich dann ein Menü:

Unterscheidung der Sybole

Auf iOS ersetzt Signal die SMS-App nicht (da Apple so etwas nicht erlaubt), sondern tritt als eigener Messenger auf.

Per Signal kann auch verschlüsselt telefoniert werden:

verschlüsselt telefonieren

Dafür wird bei beiden Parteien eine funktionierende Internetverbindung benötigt. Es klappt nicht immer, aber in dem Fall kann ja dann immer normal angerufen werden, d. h. den Versuch ist es wert.

Der Nachrichtenspeicher von Signal kann und soll verschlüsselt werden. Dafür gehe mensch in die Einstellungen der App und dort auf Privacy, wo sich schließlich eine Passphrase definieren lässt. Zum Wählen einer sicheren Passphrase siehe 2.1.2.2 Starke Passphrasen oder Passsätze. Nachts sollte der Nachrichtenspeicher bewusst gesperrt werden.

2.2.3 Bildschirmsperre

Unter Android und iOS kann eine Bildschirmsperre aktiviert werden. Es hat dann nicht mehr jede Person Zugriff auf das Handy, die vermögens ist, über den Bildschirm zu wischen, sondern muss entweder die Sperre erraten oder dem Handy mit fortgeschrittenem Equipment an die Pelle rücken.

In iOS kann ein PIN definiert werden, siehe: wiki.csuchico.edu.

Der Heterogenität des Android-Ökosystems geschuldet findet sich die Bildschirmsperre je nach Hersteller an verschiedenen Stellen der Systemeinstellungen: Entweder in den Sicherheits-, den Bildschirm oder u. U. vorhandenen Sperrbildschirmeinstellungen.

Bilschirmsperre

Jedenfalls kann mensch zwischen PIN, Passphrase, Muster und eventuell Gesichtsentsperrung und Fingerabdruck wählen. Gedanken hierzu:

Die Bildschirmsperre hat nichts mit Verschlüsselung zu tun. Mit entsprechender Ausrüstung kann sie umgangen werden und auf den Speicher des Geräts direkt zugegriffen werden. Eine lange Passphrase sperrt eine_n hier nur selber unnötig lange aus – deshalb genügt bereits ein kurzer PIN-Code.

2.2.4 Online-Backup deaktivieren

Wir müssen unser Smartphone nicht den IT-Konzernen auf dem Silbertablett präsentieren, indem wir diese mit dem Backup unserer Daten beauftragen.

Online backum deaktivieren

Unter Android navigieren wir in die Systemeinstellungen und dort zu Backup & Reset. Dort werden erst Automatic restore, dann Back up my data deaktiviert.

Mangels Erfahrung am iPhone muss ich bei iOS leider passen. Falls jemand weiß, wie sich die Datenübertragung von iPhones an Apple verkleinern lässt, würde ich mich über eine Anleitung freuen.

2.2.5 Weitere Maßnahmen für Android

2.2.6 Weitere Maßnahmen für iOS

Mangels Erfahrung am iPhone kann ich hier leider keine Tipps geben. Wenn jemand etwas parat hat, freue ich mich über den Input!

3 Für Eingeübte

3.1 PC bzw. Mac

3.1.1 Gedanken zur Wahl des Betriebssystems

3.1.1.1 Grundsatz

Kurz: Je wichtiger der Computer, desto wichtiger wäre es, ein GNU/Linux als Betriebssystem zu benutzen. Windows 10 sollte unbedingt vermieden werden.

Windows und OS X sind proprietär, siehe 1.4 Was ist freie Software und warum ist sie wichtig?

Die Installation von GNU/Linux wird leider eine zunehmend haarige Angelegenheit, da sich Microsoft dagegen wehrt und dem seit mehreren Jahren technische Hürden in den Weg legt. Ich habe mich deshalb entschieden, hier keine Installationsanleitung zu schreiben. Außerdem ist der Ansatz, Linux auf eigene Faust zu erkunden, zwar sehr interessant und lehrreich, aber braucht auch Zeit und Nerven, die nicht jede_r übrig hat, speziell im Aktivismus. Viel praxisnaher ist es da, wenn mensch von einer kundigen Person ein komfortables System aufgesetzt und erklärt bekommt und fertig. Auch beim Kauf von Computern ist Beratung wichtig, damit keine Probleme auftauchen.

3.1.1.2 Begründung für Interessierte und Vorstellung von GNU/Linux

Kauft mensch heute einen Computer, ist darauf eigentlich immer Windows oder im Fall von Apple-Geräten (Macs) OS X vorinstalliert. Daraus erklärt sich auch die unglaubliche Marktmacht Microsofts mit knapp 90 % Marktanteil. OS X kommt auf ca. 9 %. Nur 1 % der User ersetzen diese Systeme mit meistens einem GNU/Linux-System bzw. kaufen bewusst einen der wenigen Computer damit.

Allein schon aus der Marktsituation folgt, dass GNU/Linux-Systeme deutlich seltener ins Visier der Behörden geraten als OS X oder gar Windows. Firmen, die Spyware für Strafverfolgungsbehörden anbieten, entwickeln diese deshalb zuerst für Windows, dann für Mac und nur wenn die Nachfrage besteht für Linux. Das allein ist noch kein echtes Argument, denn es gab und gibt zweifellos behördliche Spyware für Linux-Systeme.

Nichts desto trotz gilt: Während auf einem Windows im Handumdrehen aus der Ferne ein Trojaner installiert ist und mensch kaum etwas dagegen unternehmen kann, kann bei GNU/Linux zumindest die Angriffsfläche stark minimiert werden. Dafür gibt es mehrere Gründe:

  1. Offenheit des Codes: Jeder kundige Mensch kann sich selbst davon überzeugen, dass eine freie Software keine Sicherheitslecks oder Backdoors aufweist, und kann auch Vorschläge machen, die Sicherheit zu erhöhen. Dies macht sich zwangsläufig in der Qualität des Codes bemerkbar.
  2. Proprietäre Betriebssysteme enthalten Backdoors, die vom Hersteller zur Installation von Malware genutzt werden können. In Deinem Windows oder Mac kann ganz leicht eine Malware als Systemupdate vom Hersteller untergejubelt werden. In GNU/Linux ist das nicht möglich, weil 1. unser System hier keine eindeutige ID bekommt, anhand der es identifiziert werden kann, und 2. optional sämtliche Updates über den Anonymisierungsdienst Tor bezogen werden können.
  3. Offenheit der Software für die User: Auf meinem Linux kann ich selber genau darüber verfügen, welche Software installiert ist und wie der Computer sich nach außen in Netzwerken präsentiert. Ich kann auch Software in ihren Rechten einschränken und überwachen, welche Programme gerade laufen und damit verdächtige Aktivitäten leichter erkennen. Ein Trojaner muss sehr hoch entwickelt sein, um das alles zu umgehen! Windows und OS X, die sich als Blackbox präsentieren, lassen diese Art Kontrolle niemals zu.
  4. Sicherer innerer Aufbau des Systems: Programme laufen mit verschiedenen Privilegien, die Software nur minimale Rechte geben, um zu laufen. Hat ein Programm Sicherheitslücken, bleibt der Schaden begrenzt.
  5. Schnelles Schließen von Sicherheitslücken: Aufgrund der Offenheit der Entwicklung werden entdeckte Sicherheitslücken innerhalb von meistens Stunden geschlossen anstatt nur einmal im Monat wie bei Microsoft.
  6. Zentrale Softwarequellen: GNU/Linux-Systeme beziehen ihre Software aus sog. Paketquellen, die so etwas wie einen professionellen Appstore darstellen. Software muss damit nicht aus den Weiten des Internets zusammengesucht werden, wo sie übrigens auch vor dem Download behördlich manipuliert worden sein kann.
  7. Spezialsysteme für Sicherheit: Wer auf Nummer Sicher gehen möchte, sei auf Qubes OS verwiesen.

Bei den mit Abstand populärsten Alternativsystemen wird der Kern des Systems vom Linux-Kernel eingenommen – dementsprechend hat sich der Begriff Linux-Distributionen für diese verwandten Systeme eingebürgert. Der Kernel ist einfach gesagt der Part eines Betriebssystems, der mit der Hardware kommuniziert. Wird umgangssprachlich das Wort Linux benutzt (z. B. „Ich verwende Linux“), sind meistens eigentlich die Distributionen und nicht der Kernel selbst gemeint. Fürsprecher_innen freier Software sagen lieber GNU/Linux, weil damit die Freiheit der Software der meisten Linux-Distributionen betont wird.

Weitere Vorteile von einem ordentlich eingerichteten GNU/Linux – eine subjektive Liste:

Viele wichtige Programme des Alltags gibt es auch in Linux-Version, z. B. LibreOffice, Firefox, Thunderbird, GIMP, VLC. Für andere Programme existieren mächtige freie Alternativen. Mensch muss schon sehr genau suchen, um tatsächlich etwas zu finden, das sich nicht auf GNU/Linux erledigen ließe! Am öftesten wird noch das Fehlen von Adobe Photoshop moniert, wogegen es aber professionelle Graphiker_innen gibt, die betonen, dass sie alle benötigten Funktionen auch auf GNU/Linux-System finden. Auch große Bluckbuster-Games fanden sich lange Zeit selten auf dem freien Betriebssystem, aber diese Situation ist mit der Portierung von Steam inzwischen viel besser geworden.

3.1.1.3 Warnung vor Windows 10!

Inzwischen ist einigermaßen öffentlich geworden, wie arg Windows 10 seine User_innen ausspioniert. Das ist die Kehrseite dessen, dass es gratis ist bzw. war – nun sind die User nicht mehr Kund_in, sondern Produkt. Microsoft nahm damit den Weg Facebooks und Googles…

Win10 sammelt eine Menge Daten:

  1. Data syncing is by default enabled.
    • Browsing history and open websites.
    • Apps settings.
    • WiFi hotspot names and passwords.
  2. Your device is by default tagged with a unique advertising ID.
    • Used to serve you with personalized advertisements by third-party advertisers and ad networks.
  3. Cortana can collect any of your data.
    • Your keystrokes, searches and mic input.
    • Calendar data.
    • Music you listen to.
    • Credit Card information.
    • Purchases.
  4. Microsoft can collect any personal data.
    • Your identity.
    • Passwords.
    • Demographics.
    • Interests and habits.
    • Usage data.
    • Contacts and relationships.
    • Location data.
    • Content like emails, instant messages, caller list, audio and video recordings.
  5. Your data can be shared.
    • When downloading Windows 10, you are authorizing Microsoft to share any of above mentioned data with any third-party, with or without your consent.

Wer also auf Sicherheit und Privatsphäre irgendeinen Wert legt, sollte Windows 10 nicht installieren und sich darauf einstellen, mittelfristig zu Linux wechseln zu müssen (oder vielmehr dürfen).

3.1.2 GnuPG richtig benutzen

Im Einstiegs-Kapitel beschrieb ich die Einrichtung und grob das Grundprinzip von GnuPG. Im vorliegenden Kapitel wird gezeigt, wie GnuPG richtig und sicher benutzt wird. (Weiterführende Details sind auch unter emailselfdefence.fsf.org zu finden.)

3.1.2.1 Den privaten Schlüssel mit einer Passphrase schützen

Der eigene Schlüssel sollte nicht offen herumliegen, sondern mit einer Passphrase verschlüsselt werden. Falls dies noch nicht geschehen ist, kann das in der Schlüsselverwaltung nachgeholt werden:

Passphrase setzen

So kann auch niemand darauf zugreifen außer Du selbst.

3.1.2.2 Was sind Signaturen? Nachrichten signieren

Schickt mir jemand einfach eine verschlüsselte Nachricht, kann ich genau genommen nicht sagen, ob diese Nachricht tatsächlich von dieser Person stammt, sondern nur, dass jemand mit Zugang zu deren_dessen Mailaccount eine Nachricht mit dem eigenen und meinem öffentlichen Schlüssel verschlüsselt und mir geschickt hat. Unverschlüsselte Nachrichten können gar im Inhalt manipuliert worden sein.

Dieses Dilemma wird durch sog. Signaturen gelöst. Einfach gesagt beweist die Signatur, dass die Nachricht von der_dem Besitzer_in des jeweiligen privaten Schlüssels geschickt wurde, denn Signaturen können nur mithilfe desselben erzeugt werden.

Um eine Mail zu signieren, kann beim Verfassen oben das entsprechende Häkchen gesetzt werden:

Verschlüsselte und signierte Nachricht

(1: Nachricht wird verschlüsselt; 2: Nachricht wird signiert)

Enigmail unterstreicht Signaturen in der Farbcodierung. Eine unsignierte verschlüsselte Nachricht:

Unsignierte verschlüsselte Nachricht

Eine signierte verschlüsselte Nachricht:

Signierte und verschlüsselte Nachricht

Auch unverschlüsselte Nachrichten lassen sich signieren. So kann beispielsweise bei wichtigen Mails an den Mailverteiler bewiesen werden, dass sie nicht manipuliert wurde. Leider gibt es dafür keine eigene Farbcodierung:

Signierte und unverschlüsselte Nachricht

Empfehlenswert ist, Enigmail zu befehlen, automatisch jede verschlüsselte Nachricht zu signieren. Wir müssen dafür in die Accounteinstellungen gehen: Menüpunkt Edit → Account Settings

Einigmail-Accounteinstellungen

Dort muss bei jedem Mailaccount bei OpenPGP Security das Häkchen bei Sign encrypted Messages gesetzt werden:

verschlüsselte nachrichten automatisch signieren

Warum das nicht die Standardeinstellung ist, ist mir rätselhaft.

Wer möchte, kann auch automatisch jede unverschlüsselte Mail signieren, was aber zu Verwirrung bei Empfänger_innen ohne GPG führen kann.

3.1.2.3 Schlüssel verifizieren

Schicke ich jemandem meinen Schlüssel im Anhang als Mail, kann ich mir nicht sicher sein, dass er auch ankommt. Jemand mit entsprechendem Zugang könnte die Nachricht abfangen und statt meinem Schlüssel einen gefälschten einfügen. Macht mensch das auch in die andere Richtung, kann diese_r alle verschlüsselten Mails lesen, ohne dass wir es merken. Diese Art Angriff nennt sich Man-In-The-Middle-Angriff. Die Signaturen helfen da auch nichts. Einen Schlüssel zu fälschen geht ziemlich einfach.

Wollen wir also sicherstellen, dass dies nicht passiert, müssen wir die Schlüssel über einen manipulationssicheren Kanal austauschen bzw. vergleichen. Ideal wäre ein persönliches Treffen, aber auch ein Anruf passt, solange ihr die Stimme des Gegenübers erkennt. Jeder Schlüssel verfügt über einen sog. Fingerprint – eine Zeichenfolge, die nicht gefälscht werden kann. Er kann per Doppelklick auf einen Schlüssel in der Schlüsselverwaltung betrachtet werden und hat folgendes Format:

427F 11FD 0FAA 4B08 0123 F01C DDFA 1A3E 3687 9494

Nur wem ich also meinen Fingerprint persönlich überreiche, kann mensch sich ganz sicher sein, meinen echten öffentlichen Schlüssel zu besitzen.

Trotzdem: Besser nicht verifizierte Verschlüsselung als gar keine Verschlüsselung!

3.1.2.4 Vertrauen

Um den Überblick zwischen verifizierten und nicht verifizierten Schlüsseln zu bewahren, gibt es das Vertrauenssystem.

Zuerst fügen wir die entsprechende Spalte der Schlüsselliste hinzu:

Vertrauensgrad bestimmen

Wir wählen im Kontextmenü der betroffenen Schlüssel Set Owner Trust:

Vertrauensgrad bestimmen

Es ist eine Art Konvention, dass nur dem eigenen Schlüssel ultimativ vertraut wird. Menschen, deren Fingerprint ich zweifelsfrei habe, vertraue ich voll.

Ordnen wir die Spalten der Schlüsselverwaltung nach dem Vertrauen, ergibt sich eine schöne Übersicht.

3.1.2.5 Schlüssel signieren und das Web of Trust

Auch die Schlüssel selbst lassen sich signieren. Ich kann damit bestätigen, dass jener Schlüssel jener Person gehört. Jede_r, die_der nun meinen Schlüssel verifiziert hat, hat damit auch alle von mir signierten Schlüssel verifiziert! Das sich daraus ergebende Vertrauensnetzwerk nennt sich Web of Trust.

Das Signieren eines Schlüssel gelingt in der Schlüsselverwaltung per Rechtsklick:

Schlüssel signieren

Schlüssel sollten nur signiert werden, wenn der Fingerprint überprüft wurde. Dementsprechend dürfen wir dann aber I have done very careful checking auswählen:

Schlüssel signieren

Im obigen Kontextmenü lassen sich auch per View Signatures alle Signaturen eines Schlüssels einsehen.

3.1.2.6 Die Schlüsselserver

Wir lernten die Schlüsselserver bereits kennen, als wir von dort die ersten Schlüssel importierten. Diese Server haben auch ein Web-Interface, beispielsweise dieses vom MIT-Server funktioniert ausgezeichnet. Dort kann komfortabel nach Schlüssel gesucht werden. Der Schlüssel wird in die Zwischenablage kopiert und in Enigmail importiert:

Schlüssel aus dem Zwischenspeicher kopieren

Wie bereits erwähnt kann auch Enigmails Schlüsselverwaltung die keyserver durchsuchen:

Nach Schlüsseln suchen

Schlüssel können wie folgt aus dem Kontextmenü hochgeladen werden:

Schlüsseln hochladen

Der große Vorteil der keyserver, die Öffentlichkeit, ist auch ihr großer Nachteil. Was hindert mich daran, einen gefälschten Schlüssel (Abschnitt 3.1.2.2) hochzuladen? Schlüssel von den keyservern sollte also nicht blind vertraut werden.

Die keyserver synchronisieren sich übrigens gegenseitig – es reicht also aus, auf einen einzigen hochzuladen.

ACHTUNG: Alle Identitäten, die in einem Schlüssel gespeichert sind, werden mit diesem Schlüssel veröffentlicht wenn er auf einen Schlüsselserver geladen wird. Wer den Schlüssel herunterlädt, kann daher auch die anderen damit verknüpften Identitäten einsehen. Personen, die nicht offenlegen möchten welche anderen Identitäten sie sonst noch nutzen, müssen daher eigene Schlüssel für diese anderen Mailadressen anlegen.

3.1.2.7 Mehr als eine Mailadresse pro Schlüssel definieren

Dem eigenen Schlüssel sollten alle Mailadressen angefügt werden, für die mensch verschlüsselte Mails empfangen möchte. Das geht wieder im Kontextmenü:

Identitäten verwalten

Mailadressen zu Schlüssel hinzufügen

Den Grund kennen wir bereits: Enigmail checkt beim Verfassen einer Nachricht, ob es für diese Mailadresse einen Schlüssel gibt. Gibt es keinen, wird nicht automatisch verschlüsselt, was böse enden kann!

Nach Hinzufügen einer Identität muss der Schlüssel neu ausgeschickt und auf die keyserver hochgeladen werden. Erneute Verifizierung ist nicht nötig.

3.1.2.8 Howto: einen neuen Schlüssel erstellen und den alten vernichten

Möchte mensch aus div. Gründen ein neues Schlüsselpaar erstellen und für das alte keine Nachrichten mehr empfangen, sollte dieses widerrufen und vernichtet werden. Eine gute Vorgangsweise hierfür:

  1. Ein neues Schlüsselpaar erstellen (Menü der Schlüsselverwaltung: Generate → New Key Pair)
  2. Den neuen Schlüssel mit dem alten signieren. (Damit die Kontakte dem neuen Schlüssel gleich vertrauen können.)
  3. Einen Texteditor öffnen und ordentlich auf der Tastatur rumklopfen, sodass eine irrsinnig lange zufällige Passphrase entsteht. Dem alten Schlüssel das dann als Passphrase geben (Rechtsklick → Change Passphrase), den Texteditor aber offen halten.
  4. Alten Schlüssel widerrufen (Rechtsklick → Revoke Key)
  5. Neuen und alten Schlüssel auf die keyserver hochladen und ausschicken. So wird der alte Schlüssel von der Anderen Enigmail als widerrufen erkannt.
  6. Nicht immer notwendig, aber der Ordnung halber: alten Schlüssel löschen (Rechtsklick → Delete Key)
  7. Den Texteditor schließen, ohne zu speichern.

Durch diese Methode ist es unmöglich, den Schlüssel wiederherzustellen, da er unknackbar verschlüsselt ist.

3.1.3 Anonym surfen mit Tor

3.1.3.1 Einleitung: Tor stinks

schimpfte die NSA. Auch der mächtigste IT-Geheimdienst aller Zeiten beißt sich an diesem Anonymisierungsdienst die Zähne aus. Das Prinzip von Tor (Abk. für The Onion Router) ist, dass der Datenverkehr über drei zufällige Server gelenkt wird, wobei die Daten dreimal verschlüsselt wurden und jeder dieser Server nur eine Schicht gleich einer Zwiebelschicht ablösen kann. Erst der letzte Server kennt die Daten, weiß aber nicht, wer sie schickte. Er kommuniziert mit dem Internet (z. B. eine Website) und schickt dessen Antwort wieder den Weg zurück über die anderen Server zum User.

Generell ist es nicht verkehrt, den Großteil des Surfens im Tor-Netzwerk zu erledigen. Wer weiß, was alles aus dem Internetverlauf abgelesen werden kann!

3.1.3.2 Der Tor-Browser

Der Tor-Browser wird vom Tor-Projekt für alle Betriebssysteme zum Download angeboten.

ACHTUNG: Den Tor-Browser besser nur von dieser Website des Tor-Projekts beziehen. Zu groß ist sonst die Gefahr einer Manipulation.

Es handelt sich um einen gehärteten Firefox, der sich automatisch mit dem Tor-Netzwerk verbindet. Aller Datenverkehr im Tor-Browser läuft über Tor.

Tor-Browser

Damit Tor-Browser und Firefox nicht versehentlich verwechselt werden, empfiehlt es sich, ihnen unterschiedliche Themes zu geben.

3.1.3.3 Den Tor-Browser richtig bedienen

Eine Bitte zum Schluss: Die Server des Tor-Netzwerks werden zu großen Teilen von Freiwilligen zur Verfügung gestellt. Insgesamt verkraftet diese wertvolle Ressource für Aktivist_innen aus aller Welt nur eine gewisse Bandbreite und wird sonst langsamer. Deshalb größere Down- und Uploads vermeiden, außer es ist wichtig.

3.1.4 Den Webbrowser abdichten

Der Webbrowser ist nicht nur das Einfallstor für Schadsoftware, sondern auch Ziel von Werbenetzwerken.

3.1.4.1 Welchen Browser verwenden?

Am besten ist es, den freien Browser Firefox zu verwenden. Wenn es unbedingt Google Chrome sein muss, kann auch dieser ein wenig privacy-fit eingestellt werden. Andere Browser sind nicht empfehlenswert.

3.1.4.2 Tipps für Firefox

Die folgenden ausgewählten Add-ons halten sich alle im Hintergrund und stören das normale Browsen nicht – sie sollten alle installiert werden:

Wenn wir schon im Add-on-Manager sind, können wir auch nachschauen, ob außer den selber installierten Add-ons noch weitere vorhanden sind, etwa von einem Virenscanner installierte Sicherheits-Add-ons. Diese deaktivieren wir.

Wir wollen die Voreinstellung Google als Suchmaschine mit einer alternativen Suchmaschine ersetzen. Hier eine Auswahl, sie alle liefern ausgezeichnete Ergebnisse:

Nun schwingen wir uns über das Menü (siehe oben) in die Einstellungen des Firefox:

3.1.4.3 Tipps für Chrome

Google Chrome ist proprietär, siehe Abschnitt 1.5 (Was ist freie Software und warum ist sie wichtig?)
Zuweilen liest mensch gegenteilige Behauptungen im Internet, was aber nicht stimmt. Google baut Chrome zwar auf dem freien Chromium-Browser auf, fügt ihm aber proprietäre Komponenten hinzu.

Chrome ist standardmäßig eine Datenschleuder, der aber doch ein wenig Vernunft beigebracht werden kann. So gut wie bei Firefox geht es aber nicht.

Als Erstes wählen wir analog zu Firefox eine alternative Suchmaschine (siehe ein paar Zeilen weiter oben).

Dann navigieren wir in die Einstellungen…

Chrome Einstellungen

… wählen dort Manage search engines und drücken beim Eintrag unserer gewählten Suchmaschine Make default.

Anschließend aktivieren wir in den Einstellungen unten Show advanced settings und richten es dort wie folgt ein. All diese Einstellungen vereint, dass sie Daten über das Surfverhalten an Google senden:

Chrome Privatsphäreeinstellungen

Weiter unten deaktivieren wir noch:

Übersetzungsangebot deaktivieren

Nun öffnen wir bei Privacy die Content settings:

Einstellunegn für die Inhalte

Dort zähmen wir die Cookies:

Cookies nur bedingt annehmen bzw. behalten

Plugins werden auf click-to-play gestellt:

Plugins nur per Hand starten

Nun installieren wir noch die Erweiterungen:

3.1.5 Ein Faktum zu HTTPS

Dass HTTPS-Seiten verschlüsselt sind, ist bekannt. Weniger bekannt ist aber, dass sie auch Überwachung einschränken, denn bei HTTPS ist von außen nur erkennbar, wer mit wem kommuniziert, aber nicht worüber. Surfe ich de.wikipedia.org/wiki/Aktivismus an, sieht ein_e Überwacher_in nur, dass ich mit de.wikipedia.org kommuniziere, aber die genaue Unterseite nicht! Dieses Wissen kann manchmal durchaus von Nutzen sein.

3.1.6 Umgang mit Datenträgern aus dubiosen Quellen

Wer kennt nicht das mulmige Gefühl, wenn wir einen Datenträger in den Rechner stecken, den wir von einer Person erhielten, der wir nicht so ganz trauen.

Mit manipulierten Datenträgern kann tatsächlich allerhand Unfug getrieben werden, einschließlich Schadsoftware einschleppen. Stellen wir uns einen als USB-Stick getarnten Mini-Computer vor, der sich beim Einstecken als Tastatur ausgibt und mittels passender Eingaben Malware am Rechner installiert!

Liegt also ein zugespielter Datenträger aus dubioser Quelle vor, sollte er etwas umständlicher, dafür sicher, ausgelesen werden: Der Computer werde von einer Live-DVD gestartet, denn die kann nicht mit Schädlingen befallen werden. Geradezu prädestiniert hierfür ist TAILS. Das ISO muss nur heruntergeladen und auf eine DVD gebrannt werden und dann kann der PC von der DVD gestartet werden.

Jede andere Live-DVD von einem GNU/Linux geht aber im Prinzip auch.

Handelt es sich um einen eigenen USB-Stick, der auf Reisen war, kann er in der Live-DVD mit dem Disk Utility (manchmal auch Disks) komplett niedergewalzt werden, indem die Partitionstabelle neu geschrieben wird. Dabei gehen auch alle Daten verloren!

Tails verwenden

Anschließend muss neu formatiert werden.

3.1.7 Externe VeraCrypt-Datenträger richtig formatieren

Eigentlich muss nicht erwähnt werden, dass VeraCrypt neben einem ganzen Windows-PC beliebige Datenträger verschlüsseln kann. Ich schreibe das nur deshalb, um darum zu bitten, FAT als Formatierung zu wählen! Alle anderen Dateisysteme bereiten große Probleme beim Austausch zwischen den verschiedenen Betriebssystemen. FAT erspart viel Mühe. Leider können Dateien in FAT nur höchstens 4 GiB groß sein.

3.1.8 Passphrasen mit KeePassX sicher verwalten

One ring to rule them all…

Mithilfe eines Passwortmanagers müssen wir uns nur eine einzige lange Passphrase merken: Die der Systemverschlüsselung. (Die eine Passphrase sollte im Gegenzug richtig gut sein.) Mit dieser Passphrase können wir dann auch die Datenbank eines Passwortmanagers sichern. Das freie Programm KeePassX übernimmt diese Aufgabe.

Installation:

Beim ersten Start wird nach einer Passphrase für die Datenbank gefragt. Danach öffnet sich das Hauptfenster:

Passwortmanagement

Wie ihr seht, habe ich mir eine neue Gruppe HDDs angelegt. Das geht im Hauptmenü unter Groups → Add New Group.

Per Rechtsklick in den leeren Raum kann ein neuer Eintrag angelegt werden:

Passwort hinzufügen

Ich ignoriere die meisten Felder und gebe dem Eintrag einen Titel, mit dem ich mich auskenne, und trage die Passphrase ein. Mit dem Button Gen. kann bei Bedarf der integrierte Passphrasengenerator aufgerufen werden.

Wird das Programm geschlossen, wird die Datenbank abgespeichert und zukünftig automatisch beim Aufruf von KeePassX gestartet. Die Datenbank-Datei ist nur wenige kB groß und kann bedenkenlos zwecks Backup in die Cloud hochgeladen oder in einer Mail an sich selbst geschickt werden.

Benötige ich eine Passphrase, öffne ich KeePassX und kann per Rechtsklick auf den Eintrag die Passphrase in die Zwischenablage kopieren:

Passwort in Zwischenspeicher kopieren

3.1.9 Schnüffeln von Windows und OS-X einschränken

Durch ein paar einfache Einstellungen kann das nach Hause telefonieren eines proprietären Betriebssystems eingeschränkt werden.

3.1.9.1 Windows 10

Wer ungeachtet aller Warnungen (siehe Abschnitt 3.1.1 Gedanken zur Wahl des Betriebssystems) Windows 10 dennoch installiert hat, kann sich auf chip.de etwas behelfen.

Aus Windows 10 wird aber niemals ein privatsphärefreundliches Betriebssystem.

3.1.9.2 Mac

Zitate von websetnet.com:

2. Disable Spotlight Suggestions

OS X Yosemite has a revamped version of Spotlight, which can serve up suggestions from the Internet. However, if you aren’t careful to change its default settings, OS X Yosemite’s Spotlight can leak your private information back to Apple. And that information may not just be shared with Apple itself, but also third party providers such as Microsoft’s Bing search engine. For these reasons, you may choose not to use Spotlight web search and, fortunately, if you don’t like the feature — you can turn it off.

Open System Preferences and choose Spotlight. Now deselect Spotlight Suggestions, Bing web searches and anything else that doesn’t suit you. Now, before you relax and pat yourself on the back, you’re not quite done. You have stopped Spotlight from sharing your search queries, but you haven’t stopped OS X’s default browser from doing the same trick. To stop Safari sharing the same information, go to Safari > Preferences > Search, and then disable Include Spotlight Suggestions.

3. Audit your Security & Privacy settings

How comfortable are you with sharing your physical location with different apps? Do you even know which apps are receiving details of where you are? A quick visit into OS X Yosemite’s System Preferences can reveal all. To update these settings, you need to click on Security & Privacy and choose the Privacy tab. Once there, you can choose Location Services and view whether they are enabled and, if so, which apps can access your location. To make changes to these settings, you may need to unlock the padlock by entering an administrator password.

3.1.10 Schutz vor Hardware-Keyloggern: Das Wachs-Siegel

Jemand mit physischem Zugriff auf den Laptop kann das Gehäuse öffnen und zwischen Tastatur und Mainboard ein kleines Gerät zwischenschalten, das alle Tastenschläge aufzeichnet – ein Keylogger. Beschlagnahmt die Repressionsbehörde nach mehreren Tagen Wartezeit den PC, gibt der Keylogger die eingetippte Passphrase für die Festplatte preis. Dies wurde wahrscheinlich in der Tierschutzcausa versucht!

Um so etwas zu vereiteln, hilft es einerseits den Computer möglichst immer mit sich zu tragen, andererseits ein Siegel:

  1. Wir träufeln über eine wichtige Schraube auf der Unterseite des Geräts etwas flüssiges Wachs, geben ihm eine charakteristische Form und lassen es härten.
  2. Damit sich das Siegel nicht mit der Zeit abreibt, kleben wir einen Streifen durchsichtiges Klebeband darüber.

Will jemand den Laptop öffnen, muss entweder das Siegel zerstört werden oder diese Person braucht viel Zeit, Werkzeug und Geschick! Selbst wenn diese Person es schaffen würde, das Siegel nachzubilden (was äußerst schwer sein müsste, wenn auf Details geachtet wird), muss es dann noch ein wenig trocknen.

3.1.11 Schwer überwachbare E-Mail-Provider

Mailadressen populärer Provider wie GMX oder Gmail sind ein offenes Buch für ihre Betreiber_innen und werden nicht nur von diesen für Werbezwecke ausgewertet, sondern auf Behördenanordnung muss diesen Zugang zu dem Postfach gegeben werden. An GPG-verschlüsselten Mails beißen sie sich zwar die Zähne aus, aber immer wieder steht mensch vor der Entscheidung, entweder eine wichtige unverschlüsselte oder gar keine Nachricht zu senden.

Nehmen wir an, es gibt Mailkonten, die nicht von den Behörden eingesehen werden können. Mails von diesen können nur über die überwachten Mailadressen der potentiellen Kommunikationspartner_innen gesammelt werden. Sehr viel geht dabei natürlich durch die Lappen!

Genau so etwas bieten diverse Organisationen und Kollektive für Aktivist_innen an. Die Mails werden nur verschlüsselt auf dem Server gespeichert, sodass niemand außer der_dem Kontobesitzer_in sie einsehen kann. Klopfen die Behörden an die Tür, kann ihnen leider nicht weiter geholfen werden. Die Betreiber_innen könnten zwar gezwungen werden, ihre Serversoftware zu ändern, aber das ist etwas, das in europäischen Ländern doch die Ausnahme darstellt.

Hier eine Liste von Technik-Kollektiven, ohne Gewähr und Anspruch auf Vollständigkeit:

Sehr beliebt ist zwar riseup.net, deren Server stehen aber in den USA, womit ihnen nicht vertraut werden kann (Stichwort National Security Letter 30). In den USA ist die Repression gegen Aktivismus zu stark, als dass FBI und NSA nicht Riseup schon längst zur Kooperation gezwungen hätten, oder es jederzeit könnten.

3.1.12 Webcam überkleben

Um nicht heimlich gefilmt werden zu können, empfiehlt es sich, die Webcam des Laptops z. B. mit einem zurechtgeschnittenen Sticker zu überkleben.

3.1.13 Firejail: Programmberechtigungen limitieren

3.1.13.1 Über Firejail

Die technische Funktionsweise des Programms kann vielerorts nachgelesen werden, sie soll nicht Gegenstand dieses HowTo's sein.

Firejail is a SUID sandbox program that reduces the risk of security breaches by restricting the running environment of untrusted applications using Linux namespaces, seccomp-bpf and Linux capabilities. It allows a process and all its descendants to have their own private view of the globally shared kernel resources, such as the network stack, process table, mount table. Firejail can work in a SELinux or AppArmor environment, and it is integrated with Linux Control Groups.

Was Firejail nicht kann: Bösartige Programme können weiterhin Screenshots und Screencasts anfertigen sowie Tastenschläge aufzeichnen. Diese Lücken werden sich mittelfristig von selbst ergeben, sobald Wayland das veraltete X11 als Displaymanager ersetzt. Aber bereits die Infektion von Programmen wird durch Firejail krass erschwert.

Auch muss angemerkt werden, dass der Einsatz von gutem Sandboxing für ein sicheres System eine notwendige, aber noch keine hinreichende Maßnahme ist! Hier sind insbesondere zu erwähnen:

3.1.13.2 Firejail installieren

Auf debianbasierten Systemen kann firejail einfach als Paket installiert werden:

$ sudo apt install firejail

Die graphische Oberfläche firetools ist nicht zu gebrauchen und daher nicht zu installieren.

3.1.13.3 Erste Schritte mit Firejail

Probieren wir es einfach mal aus: Starten wir Firefox in einer Sandbox!

$ firejail firefox

Auf den ersten Blick sieht Firefox wie immer aus. Erst wenn wir genauer hinsehen und entweder per Strg+o eine Datei öffnen versuchen, oder unser Home-Verzeichnis in die Adresszeile eingeben, fällt auf, dass Firefox nur bestimmte Ordner und Dateien sehen kann:

Firefox mit Firejail

(Der Ordner Desktop ist übrigens ein Dummy-Ordner, in Wahrheit kann Firefox auch auf diesen nicht zugreifen.) Noch einige andere Sicherheitsfeatures sind im Hintergrund aktiv, die aber gar nicht auffallen. Zu denen kommen wir später.

3.1.13.4 Die Konfigurationsdateien: Lokalisierung und Aufbau

Jedes Programm hat andere Bedürfnisse und benötigt damit eine eigene Konfiguration für seine Sandbox. Firejail liefert bereits eine Vielzahl von vorgefertigten Konfigurationen mit. Sie sind im Ordner /etc/firejail gespeichert.

Firejail Konfigurationsdateien für verschiedene Anwendungen

Auch als unprivilegierter user kann ich Konfigurationsdateien für meine Programme erstellen, indem ich sie im Ordner ~/.config/firejail ablege. Firejail bevorzugt standardmäßig die Konfiguration dieses Ordners vor jener des globalen Ordners.

Grundsätzlich gibt es zwei Modi, unter denen Firejail starten kann: blacklist-Modus oder whitelist-Modus.

Sehen wir uns eine der vorinstallierten Konfigurationsdatei im Detail an – jene des VLC Media Players. Hierbei handelt es sich um ein blacklist-Profile – was auch Sinn macht, immerhin muss ein Videoplayer Dateien in verschiedensten Verzeichnissen öffnen können.

# VLC media player profile

Standards include /etc/firejail/disable-common.inc
include /etc/firejail/disable-programs.inc
include /etc/firejail/disable-devel.inc
include /etc/firejail/disable-passwdmgr.inc

Ordner noblacklist ${HOME}/.config/vlc

Optionen caps.drop all
netfilter
nogroups
nonewprivs
noroot
protocol unix,inet,inet6,netlink
seccomp
shell none

Unterordner private-bin vlc,cvlc,nvlc,rvlc,qvlc,svlc
private-dev
private-tmp

Standards

Hier werden einige Default-Einstellungen eingebunden, die sich in anderen Dateien befinden. Gehen wir alle Möglichkeiten durch:

/etc/firejail/disable-common.inc
Gebräuchliche Systemmanagement-tools werden gesperrt (sudo, mount, Terminals, etc.).
/etc/firejail/disable-programs.inc
Gebräuchliche Programmverzeichnisse im Home-Ordner werden gesperrt.
/etc/firejail/disable-devel.inc
Zugang zu Entwicklungswerkzeugen wird gesperrt.
/etc/firejail/disable-passwdmgr.inc
Zugang zu Dateien von Passwortmanagern wird gesperrt.
/etc/firejail/whitelist-common.inc
Wird diese Datei eingebunden, schaltet Firejail in den Whitelist-Modus, und gleichzeitig werden bereits einige unbedenkliche Dateien/Ordner im Home-Verzeichnis freigeschalten, die die meisten Programme zum ordnungsgemäßen Funktionieren benötigen – z. B. .fonts, .gtkrc

Spätere Versionen von Firejail stehen noch mehr solche vorgefertigten Konfigurationen zur Verfügung.

Ordner

Hier ist in unserem Beispiel angegeben, dass VLC auf sein Konfigurationsverzeichnis zugreifen darf. Der Ordner ~/.config ist nämlich durch Einstellungen im Abschnitt 2 für das Programm eigentlich gesperrt. Sehen wir uns an, was es für Möglichkeiten gibt, den Zugriff für einen Ordner festzulegen:

blacklist
Der Ordner (inklusive seiner Unterordner) ist gesperrt und unsichtbar.
noblacklist
Der Ordner wird dezidiert nicht geblacklisted, auch wenn dies in einer Konfigurationsdatei aus Abschnitt 2 steht.
read-only
Der Ordner wird nur mit Leserechten eingebunden.
whitelist
Ein Sonderfall. Diese Zugriffsmöglichkeit wird verwendet, um einen Ordner im whitelist-Modus von Firejail freizuschalten.
mkdir
Ein Ordner wird erzeugt. Dieses Kommando können wir nutzen, um Ordner im whitelist-Modus zu erstellen, die ansonsten vom Programm selbst erzeugt werden und nach Schließen der Sandbox verloren gingen. Mittels mkdir gehen derartige Ordner nicht wieder verloren. Diese Option ist im Wesentlichen nur beim allerersten Programmstart in Firejail nötig.
Optionen

In diesem Abschnitt werden einige allgemeine Parameter festgelegt, die mehrheitlich andere Sicherheitsfunktionen des Systems einbinden, um für zusätzlichen Schutz zu sorgen. Ihre Bedeutung muss oft nicht unbedingt verstanden werden, sondern es gilt: Funktioniert ein Programm trotz Einschränkung anstandslos, aktivieren wir die Funktion in der config. Außerdem gibt es gewisse Optionen für die reibungslose Funktion der Sandbox:

caps.drop all
Alle Linux-Capabilities sperren.
tracelog
Blacklist-Verletzungen werden in die syslog (/var/log/syslog) geschrieben.
netfilter
Falls ein neuer network namespace geöffnet wird, wird der default netfilter aktiviert.
nogroups
supplementary groups deaktivieren.
nonewprivs
Dem Programm keine weiteren Privilegien erlauben.
noroot
Das Programm darf keine Rootrechte bekommen.
protocol unix,inet,inet6,netlink
Nur die festgelegten Netzwerkschnittstellen dürfen benutzt werden.
seccomp
Aktiviert den seccomp-Filter und sperrt die in der default list befindlichen syscalls.
shell none
Das Programm darf keine Shell aufrufen.
nosound
Die Soundausgabe wird blockiert.
apparmor
Die Sandbox wird mit einer zusätzlichen Schutzschicht durch Apparmor gestartet. Für Apparmor gibt es hier ein eigenes Kapitel.
noexec /Ordner
Im festgelegten Ordner werden Ausführungsrechte entzogen.
net none
Dem Programm wird der Zugriff auf Netzwerke verwehrt. Achtung: Davon sind auch Unix-Sockets betroffen!

Die gesamte Liste der möglichen Parameter ist im Firejail Manual nachzulesen. Spätere Versionen von Firejail stellen noch weitere derartige Parameter bereit.

Unterordner

Verschiedene Unterverzeichnisse werden temporär als leer eingebunden. Möglichkeiten sind u.a.:

private
Ein leeres /home/{user} und /root Dateisystem werden eingebunden. Nach Beendigung gehen die dort generierten Daten verloren.
private /Ordner
Der gewählte Ordner wird als Home-Verzeichnis eingebunden.
private-bin file1,file2,file3
Ein leeres /bin wird eingebunden, wobei nur die gewählten Dateien dort vorhanden sein werden.
private-dev
Die meisten Dateien bzw. Geräte des /dev werden nicht eingebunden. Ausnahmen: dri, null, full, zero, tty, pts, ptmx, random, urandom, log und shm.
private-etc file,directory
Nur die angegebenen Dateien und Ordner werden in /etc eingebunden.
private-tmp
/tmp wird leer eingebunden.

Alle Möglichkeiten sind wie üblich im Firejail Manual nachzulesen.

3.1.13.5 Einbindung von Apparmor

Apparmor ist wie Firejail ein Sandboxing-Programm, das jedoch schwerer zu konfigurieren ist. Es ist in Ubuntu vorinstalliert. In Debian muss es per Hand installiert werden:

$ sudo -s
# apt install apparmor apparmor-utils apparmor-profiles apparmor-profiles-extra

Anschließend wird es beim Systemstart von Debian aktiviert und in der laufenden Session gestartet:

# perl -pi -e 's,GRUB_CMDLINE_LINUX="(.*)"$,GRUB_CMDLINE_LINUX="$1 apparmor=1 security=apparmor",' /etc/default/grub
# update-grub
# aa-status

Firejail aktiviert bei Einbindung des apparmor-Kommandos eine Sandbox, die sich in /etc/apparmor.d/firejail-default befindet. Um die Sandbox auf zwingend zu stellen, muss sie in den enforce-Modus geschaltet werden:

# aa-enforce /etc/apparmor.d/firejail-default

Werden nun Programme per Firejail gestartet, die den Apparmor-Parameter enthalten, befinden sich diese in der Apparmor-Sandbox. Überprüft werden kann dies per:

# aa-status

Übrigens: Wer Programme in /opt installiert hat, muss die Apparmor-Konfiguration leicht ändern, um diese innerhalb Apparmor ausführen zu können. Folgende Zeilen müssen zu /etc/apparmor.d/firejail-default hinzugefügt werden:

#für Programme aus /opt:
/opt/** ix,

Im Anschluss muss die neue Konfiguration erzwungen werden: # aa-enforce /etc/apparmor.d/firejail-default

3.1.13.6 Konfigurationsdateien selbst erstellen

Um für ein Programm eine neue Sandbox zu bauen, müssen wir erst herausfinden, wo es seine Config und seinen Cache ablegt, um diese explizit aus der Blacklist entfernen bzw. whitelisten zu können. Firejail bietet hier ein praktisches Feature an. Mit folgendem Kommando erhalten wir eine Shell in einem leeren Home-Verzeichnis: $ firejail --private

Firejail Konfiguration im Terminal

Hier können wir nun das gewünschte Programm starten. Spielen wir damit herum, bis wir denken, die volle Feature-Reichweite des Programmes ausgeschöpft zu haben, und beenden es dann wieder. Mittels … $ find . … sehen wir dann die vom Programm angelegten Dateien und Verzeichnisse. Im Beispiel des Thunderbird:

Von Thunderbild benutzte Verzeichnisse in der Konsole

Wir sehen, dass Thunderbird diese Verzeichnisse benötigt:

Hinzu kommt noch der Hausverstand: Thunderbird soll auch Downloads im Download-Ordner speichern können, und wer GnuPG benutzt, muss dessen Verzeichnis ebenfalls für die Sandbox zugänglich machen:

Die Sandbox können wir wieder verlassen: $ exit

Und schon haben wir die wesentlichen Infos, um ein whitelist-Profil für Thunderbird aufzubauen. Dieses könnte so aussehen:

# Firejail profile for Mozilla Thunderbird

include /etc/firejail/disable-common.inc
include /etc/firejail/disable-programs.inc
include /etc/firejail/disable-devel.inc
include /etc/firejail/disable-passwdmgr.inc
include /etc/firejail/whitelist-common.inc

noblacklist ~/.gnupg
mkdir ~/.gnupg
whitelist ~/.gnupg

noblacklist ~/.thunderbird
mkdir ~/.thunderbird
whitelist ~/.thunderbird

noblacklist ~/.cache/thunderbird
mkdir ~/.cache/thunderbird
whitelist ~/.cache/thunderbird

blacklist /opt
blacklist /media
blacklist /mnt
whitelist ${DOWNLOADS}

caps.drop all
netfilter
nonewprivs
noroot
protocol unix,inet,inet6,netlink
seccomp
tracelog
apparmor

Gehen wir wieder die einzelnen Abschnitte durch:

Standards
Die üblichen vorgefertigten Restriktionen werden aktiviert und insbesondere das Profil als whitelist-Profil definiert (durch Einbinden der whitelist-common.inc).
Ordner
Die oben besprochenen Ordner werden gewhitelisted. Im Wesentlichen handelt es sich bei diesem Abschnitt um eine Kopie des vorinstallierten Thunderbird-Profils. Thunderbird wird außerdem der Zugriff auf /opt, /media und /mnt verwehrt.
Optionen
Hier werden per trial & error möglichst viele der zur Verfügung stehenden hardening-Maßnahmen aktiviert.
Unterordner
Dieser ist im vorliegenden Profil noch nicht umgesetzt, könnte aber ebenfalls per educated guess und trial & error eingetragen werden.
3.1.13.6.1 Weitere Anmerkungen zum Erstellen von Konfigurationen
3.1.13.7 Programme immer per Firejail ausführen

Wie erreichen wir, das ohne viel Aufhebens Programme im Alltag immer in einer Sandbox starten? Hierfür existieren nur Workarounds, diese reichen aber voll aus.

Bei den meisten Programmen reicht es, firejail mit dem Namen des Programms in /usr/local/bin zu verlinken: # ln -s /usr/bin/firejail /usr/local/bin/thunderbird

GNU/Linux bevorzugt nämlich beim Start eines Programms diesen Pfad über /usr/bin.

Anstatt für jedes Programm diesen Befehl durchführen zu müssen, reicht folgender Aufruf, der dies automatisiert für jedes Programm, für das ein Profil vorliegt, erledigt: # firecfg

Schließlich gibt es noch Sonderfälle:

3.1.13.8 Weiterführende Links und Quellen
  1. Firejail Dokumentation
  2. Firejail Kommandozeilen-Dokumentation: $ man firejail
  3. Mike Kuketz über Firejail
  4. Firejail im ArchWiki
  5. Firejail profile manual: $ man firejail-profile
  6. Offizielle Firejail-Profilsammlung
  7. Apparmor-Dokumentation

3.2 Smartphone

3.2.1 Signal: Fingerprints checken

Auch für Signal ist es gut, die Fingerprints zu checken.

Android:

Konversationseinstellungen

Identität verifizieren

iOS: Ein langer Druck auf den Kontaktnamen in der Konversation zeigt die Fingerprints.

Anrufe: Bei verschlüsselten Anrufen muss erstens die Stimme des Gegenübers erkannt werden, zweitens erscheinen zwei Wörter am Bildschirm, die vorgelesen werden können. Am besten, die eine Person sagt das erste Wort und die andere das zweite Wort.

Verschlüsselte Anrufe
Original unter CC BY 3.0: ssd.eff.org/en/module/how-use-signal-android

3.2.2 Gut zu wissen: Forward Secrecy von Signal

Signal als modernes Verschlüsselungsprogramm beherrscht sog. Forward Secrecy. Im Prinzip heißt das, dass sich das Schlüsselpaar laufend ändert, wobei frühere Versionen des Schlüssels nicht wieder hergestellt oder erraten werden können. Gelangt nun die Repressionsbehörde in Besitz des privaten Schlüssels, lassen sich nur die allerjüngsten Nachrichten entschlüsseln, auch wenn sie vorher im verschlüsselten Zustand im Netz abgefangen wurden! Das bedeutet, wenn wir Signal-Nachrichten am Smartphone löschen, sind sie für immer verloren (außer ein Trojaner griff sie vorher ab). Das sollte ausgenutzt werden! Regelmäßig sensible Nachrichten oder ganze Konversationen löschen.

Inzwischen bietet Signal auf selbstlöschende Nachrichten an.

3.2.3 Webcam des Handys überkleben

Viele Menschen überkleben aus Angst vor Aufnahmen die Webcam ihres Laptops. An sich eine gute Sache, nur finde ich es amüsant, dass kaum jemand es auch am Handy macht.

Also einfach einen zurechtgeschnittenen Sticker über die Frontkamera (also die Kamera über dem Bildschirm an der Vorderseite) kleben, dabei aber darauf achten, nichts Anderes zu verdecken, wie z. B. Helligkeitssensor, Annäherungssensor.

3.2.4 Tor am Smartphone

Für eine Beschreibung von Tor siehe Abschnitt 3.1.3.1 (Einleitung: Tor stinks).

Für das richtige Verhalten im Tor-Netz siehe Abschnitt 3.1.3.3 (Den Tor-Browser richtig bedienen).

Android: Benötigt werden die Apps Orbot und Orfox. Mit Orbot kann einfach eine Verbindung ins Tor-Netz aufgebaut werden und Orfox ist ein Browser, der dann das Tor-Netz benutzt:

Orbot BrowserOrbot Browser

iOS: Die App Onion Browser um € 0,99 stellt einen Browser für das Tor-Netzwerk bereit.

Onion Browser ist proprietär, siehe Abschnitt 1.5 (Was ist freie Software und warum ist sie wichtig?)

4 Anhang

NGOs unterstützen:

Nachrichten lesen: