Arch Linux Tux

[ENC]BladeXP's Blog

Was die Welt nicht alles braucht!


Was nach Threema erforderlich ist?

2014-04-18 14:25 | categories: allgemeines android sicherheit software

Letzten Monat habe ich darüber geschrieben Warum die Leute WhatsApp nutzen und was Threema richtig macht. Diese kleine Artikelserie möchte ich heute, zumindest vorerst, abschließen. Dabei möchte ich vor allem einen Blick in eine mögliche Zukunft und deren Anforderungen werfen. Aktuelle Instant Messaging Dienste setzen schon sehr viele Dinge um, sind aber in der Regel nicht für Sicherheit konzipiert worden. Ähnliche Probleme haben wir auch beim Thema E-Mail, aber dazu ein andern mal etwas mehr. Dieser Artikel kann und wird natürlich nicht alle Punkte die erforderlich sind ansprechen, ich habe mich daher selbst einfach für die subjektiv wichtigsten entschieden.

Dezentralität

Durch den NSA-Skandal und einige andere politisch und gesellschaftlich dämliche Aktionen der letzten Jahre konnten wir immer wieder feststellen das zentrale Instanzen auch einen zentralen Angriffspunkt bilden. Gewinnorientierte Unternehmen müssen sich an die Gesetze im jeweiligen Land richten, dazu gehört auch eine Mithilfe bei der Bekämpfung von Terrorismus oder der Fahndung nach Drogen. Selbst große Unternehmen wie Google, Apple oder Microsoft können hier keine Ausnahmen machen, ebenso wenig ein kleines Schweizer Unternehmen.

Der sicherste Weg zentrale Instanzen und Server zu vermeiden ist ein Verzicht auf solche, denn was nicht vorhanden ist, kann auch juristisch nicht erfasst werden. Ein neuer, sicherer, Instant Messaging Dienst muss also vollständig auf zentrale Komponenten verzichten und sich selbstständig dezentral Organisieren. Dazu gehört auch automatisiert Internetsperren zu umgehen, hierzu ein Zitat von John Gilmore: The Net interprets censorship as damage and routes around it.. Zensur ist auch meiner Meinung nach ein Defekt, und zwar nicht nur technischer, sondern vor allem gesellschaftlicher Natur.

Usability

Da immer mehr Menschen ohne entsprechenden technischen Background Instant Messaging Dienste nutzen, müssen diese so gestaltet sein dass auch technisch weniger versierte Anwender davon profitieren. Es bringt nichts, wenn wir in unserem Keller einen sicheren Messenger haben, dieser jedoch nicht von einer breiten Masse genutzt werden kann. Je größer die Anzahl der Menschen die sicher Kommunizieren können, desto schwerer die Arbeit von dubiosen Geheimdiensten und anderen demokratiefeindlichen Institutionen.

In den 90er Jahren wurde durch PGP und viele andere Erfindungen die sichere Kommunikation für viele Menschen ermöglicht, doch damals waren viele Menschen die einen Computer nutzen konnten automatisch Nerds. Heute ist die Nutzung von IT-Geräten nicht nur für eine technische Elite möglich, sondern eben auch für Personen welche froh sind ihren Radiowecker programmiert zu bekommen. Die Zielgruppe sicherer Kommunikation sollte jeder Mensch sein, der diese nutzen möchte.

Keine Werbung

Werbung und Tracking im Internet gilt heute als "Business as usual", sollte es aber nicht. Die umfangreichen Datensammlungen und Auswertungen über unsere Person (oder zumindest deren digitales alter Ego) hat mit sicherer Kommunikation nicht viel gemeinsam.

Verschlüsselung

Sichere Kommunikation kann nur verschlüsselt funktionieren, doch werden an die Verschlüsselung heute viele Anforderungen gestellt, welche es vor einigen Jahre noch nicht gab. In der Vergangenheit genügte es einen sicheren Algorithmus in einer sicheren Art und Weiße zu verwenden. Heute muss man sich zusätzlich noch um viele mögliche Angriff kümmern, dazu gibt es noch das Problem mit der glaubhaften Abstreitbarkeit und der Perfect Forward Secrecy.

Es ist vor allem sehr schwer, auf der einen Seite das Thema Sicherheit und Verschlüsselung angemessen zu lösen und auf der anderen Seite auch die Usability des Dienstes nicht unbrauchbar zu machen. Threema ist hier ein gutes Beispiel wie es doch geht, allerdings erfüllt Threema bei weitem nicht alle Punkte aus diesem Artikel und kann daher bestenfalls als Technologiedemo oder Zwischenschritt angesehen werden.

Open Source

Ein oft, zu Recht, kritisiertes Problem an Threema ist der mangelnde Zugriff auf den Quellcode. Auch einige alternativen liegen nicht vollständig im Quellcode vor, wieder andere Scheitern an anderen Punkten.

Der Open Source Status einer Anwendung sorgt nicht automatisch für mehr Sicherheit, ich kann schließlich auch groben Unfug auf Plattformen wie GitHub laden und die GPL Lizenz verwenden. Was jedoch bei Open Source möglich wird, ist die Überprüfbarkeit, man ist also in der Lage zu prüfen ob grober Unfug oder sogar Backdoors vorhanden sind. Es ist möglich zu überprüfen welche Fehler behoben wurden, oder welche komische Aktionen der Entwickler eigentlich mit den Zufallszahlen macht.

OpenSSL hatte in der Vergangenheit einen großen Fehler, den Heartbleed-Bug. Dieser wurde nicht durch OpenSource verhindert, aber er wurde behoben und jetzt sehen sich viele Entwickler auf diesem Planeten jede Kleinigkeit von OpenSSL an und fixen die gefundenen Probleme. Bei Anwendungen die nicht im Quellcode vorliegen ist eine Überprüfung für außenstehende nicht möglich, man muss sich auf das Wort des Entwicklers oder Herstellers verlassen.

Funktionen

Heute haben wir nicht nur eine neue Generation Anwender, sondern auch Anwender die bestimmte Funktionen und Voraussetzungen als gegeben hinnehmen. Der heutige moderne Anwender hat mehrere Geräte, die er nach Lust und Laune abwechselnd nutzen möchte. Es muss also möglich sein diesen neuen genialen und überaus sicheren sowie einfachen Messaging Dienst auch auf jedem dieser Geräte nutzen zu können.

Hierzu müssen, eine Vielzahl von Informationen zwischen den Geräten übertragen und synchronisiert werden, die gelesenen Benachrichtigungen oder der Chatverlauf sind hier nur eines von vielen. Dazu kommen noch die ganzen Medieninhalte welche schnell beachtliche Größen Erreichen (Bilder, Videos) und zunehmend mehr genutzt werden.

Fazit

Es ist schwer, wirklich schwer. Es müssen viele Aufgaben erledigt werden, welche sich auf den ersten Blick deutlich widersprechen. Heute entscheidet man sich gerne für das eine oder andere Extrem (entweder sicher oder benutzbar), in der Zukunft muss man beide Punkte unter einen Hut bringen. Ich freue mich aber unabhängig davon auf die kreativen Entwickler welche es trotzdem schaffen, den viel zu leicht wird "Das ist unmöglich!" gerufen, nur damit jemand einige Jahre später das Gegenteil beweist.

Ich bin mir aber sicher das der technische Fortschritt auch hier keinen Halt machen wird, denn eine einfache und gleichzeitig möglichst sichere Digitale Kommunikation ist zu wichtig um als technologische Sackgasse zu enden.


Das Papierlose Büro

2014-04-16 18:00 | categories: hardware

In den letzten Tagen konnte ich mich mit einer Person unterhalten, welche in einem papierlosen Büro arbeitet. Unsere allumfassende Wikipedia weiß natürlich, was das ist, für viele aber vor allem der Glaube, dass es sich um ein Büro handelt, welches vollständig auf Papier als Analogspeichermedium verzichtet.

Zumindest in seinem Unternehmen ging der Schuss aber ordentlich nach hinten los, anders kann man sich um ~40% gestiegene Druckkosten wohl nicht erklären. Denn wer ein papierloses Büro möchte, der sollte auch seine Organisation dafür anpassen. Das wurde bei diesem Unternehmen nicht gemacht, es wurden einfach nur einige Abteilungsdrucker gekauft um die vorhandenen Arbeitsplatzdrucker damit zu ersetzt. Zusätzlich wurden, ohne Sinn und Verstand, sämtliche Unterlagen digitalisiert, und als PDF möglichst zufällig auf den Netzlaufwerken verteilt. Anschließend wurden feierlich viele Papierordner vernichtet, um sich von diesem leidigen Papier zu trennen.

Die Konsequenz aus diesen Entscheidungen war das sich folgender Prozess für die meisten Formulare etablierte:

  1. Mitarbeiter druckt Antrag, welcher als nicht ausfüllbares PDF vorliegt, aus um die erforderlichen Daten einzutragen.
  2. Mitarbeiter scannt das Dokument ein und schickt es an den Kollegen aus der anderen Abteilung zwecks Unterschrift und fachlicher Prüfung.
  3. Kollege druckt das Dokument aus, und nach erfolgter fachlicher Prüfung wird das von diesem unterschriebene Dokument noch mal eingescannt und an das Controlling gemailt.
  4. Mitarbeiter vom Controlling schaut noch mal über dieses Dokument, nachdem er es ausgedruckt, unterschrieben und digitalisiert hat, geht es dann in die Fachabteilung zur Beauftragung.
Den Rest der Schritte möchte ich euch ersparen, aber das Beispiel mit diesem einfachen Investitionsantrag zeigt sehr deutlich, wie umständlich man so was bei falscher Organisation und Technik machen kann.

Eine sanfte Migration weg vom Papier wäre sicherlich sinnvoller gewesen als so eine unüberlegte Nacht und Nebel Aktion. Der meiner Meinung nach erste Schritt wär es gewesen gängige Papierformulare Digital abzubilden, und so das Papier schon an der Quelle zu vermeiden. Eine ordentliche Optimierung der internen Prozesse hätte bestimmt viele andere Bürokratiemonster aufgedeckt und zum Abschuss freigegeben.

Ich selbst halte, unabhängig von Erfahrungen aus meinem Freundeskreis, ein weitgehend papierloses Büro nach wie vor für möglich und sinnvoll. Dazu müssen aber die Strukturen eines Unternehmens genauso passen wie die verwendete Technik. Organisatorische Probleme durch technische Maßnahmen zu lösen, das war schon öfters eine der weniger guten Ideen ;)

Noch eine Auffälligkeit am Rande: Warum haben papierlose Büros meistens Drucker mit Papierkassetten im Bereich 1000 Blatt und mehr? Vielleicht weil viele Berater in diesem Gebiet statt guter Beratung einfach gerne ordentlich Provision für ein utopisches Ziel teure Drucker bekommen?


Firefox Profil Ramdisk

2014-04-13 18:03 | categories: arch debian linux software ubuntu

Seit vielen Jahren ist Firefox der Browser meiner Wahl, dies hat unterschiedliche Gründe welche hier kein Thema sein sollen. Jedoch ist vielen Benutzern schon mal aufgefallen das Firefox auf manchen Systemen ab und an eine kurze Verschnaufpause benötigt. Insbesondere bei Systemen mit langsamen Datenträgern für das Firefox Profil ist dies gerne mal der Fall, wie bei mir z.B. mit einem /home welches auf einem NFS Server liegt.

Eine mögliche Problemlösung ist die Verwendung einer sog. Ramdisk, also das verwenden des Arbeitsspeichers als Datenträger. Diese Idee ist nicht neu und wird von einigen Firefox Anwendern gerne genutzt, um die Performance teils deutlich zu verbessern.

Zu beachten ist das bei dieser Lösung die aktuellen Profildaten bei einem Stromausfall verloren gehen, man also eventuell mit dem letzten Stand auf der Festplatte weiterarbeiten muss. Das Risiko ist in Abhängigkeit von der Stabilität des eigenen Rechners und dessen Stromversorgung, also sehr überschaubar.

Vorbereitungen

Bevor wir eine Ramdisk nutzen können, benötigen wir erst mal eine, hierzu gibt es unter Linux, wie könnte es anders sein, mehrere mögliche Ansätze. Ein gerne genommener Ansatz ist die Nutzung des Dateisystems ramfs, davon möchte ich aber mit Hinweis auf die Kernel Dokumentation abraten:

One downside of ramfs is you can keep writing data into it until you fill
up all memory, and the VM can't free it because the VM thinks that files
should get written to backing store (rather than swap space), but ramfs hasn't
got any backing store.  Because of this, only root (or a trusted user) should
be allowed write access to a ramfs mount.

A ramfs derivative called tmpfs was created to add size limits, and the ability
to write the data to swap space.  Normal users can be allowed write access to
tmpfs mounts.  See Documentation/filesystems/tmpfs.txt for more information.

Aus diesem Grund habe ich mich für das Dateisystem tmpfs entschieden, welches auch für viele andere Zwecke genutzt wird. Da normalerweise nur root Dateisysteme anlegen und mounten darf ist folgender Eintrag in der /etc/fstab nötig und anzupassen:

# Firefox Ramdisk
tmpfs /home/user/.mozilla tmpfs user,noauto,size=1g,mode=0700,uid=1000,gid=100 0 0

Das Dateisystem ist auf 1 GiB Platz begrenzt, was meiner Meinung nach für ein Firefox Profil ohne sonderlich großen Cache ausreichend dimensioniert ist. Im nächsten Schritt ist es erforderlich den Firefox Profilordner an einen neuen Ort zu verschieben und den benötigten Mountpoint anzulegen. Hierzu muss Firefox natürlich beendet werden, sonst können die Dateien nicht verschoben werden.

mv ~/.mozilla ~/.mozilla-nfs
mkdir ~/.mozilla

Nutzung

Die Vorbereitungen sind nun abgeschlossen, zur Anwendung habe ich mir folgende Aliase in der ~/.bashrc angelegt:

alias ff2ram="mount ~/.mozilla && rsync -aq .mozilla-nfs/ .mozilla"
alias ff2disk="rsync -aq --delete .mozilla/ .mozilla-nfs && umount ~/.mozilla"

Ab jetzt ist es möglich, nachdem die Shell neu geöffnet wurde, mit dem Befehl ff2ram das Firefox Profil vom Datenträger (oder NFS Share) in die Ramdisk kopieren. Gleichzeitig wird natürlich die erforderliche Ramdisk gemountet. Am Ende eines Tages kann man mit ff2disk das Profil wieder von der Ramdisk auf den Datenträger sichern.

Resultat

Die spontanen Pausen sind weg oder zumindest kaum noch sichtbar, große Erweiterungen wie Vimperator benötigen nach dem ersten Start von Firefox keine Ruhepause und stehen sofort zu Verfügung.


Einige Gedanken zur PKW Maut

2014-04-10 19:16 | categories: allgemeines energie

Es ist wieder so weit: Deutschland redet über die Autobahnmaut für PKWs. Ein verlockender Plan, welcher schon viele Stammtische zu Heldentaten gegen diese gemeinen Ausländer motiviert hat.

Der gemeine Pöbel freut sich, endlich müssen auch diese vielen Ausländer (also lumpige 3.5% der PKWs auf unseren Straßen) ordentlich in die Tasche greifen, um unseren maroden Straßen zu finanzieren. Die Erwartung der Bürger ist hoch, an einigen Stammtischen wird schon gestritten, welche Autobahn zuerst hochmoderne, aus Gold gepresstem Latinum hergestellte, Begrenzungspfähle bekommt.

Doch mit der PKW Maut möchte eigentlich niemand Geld verdienen, dafür ist der dahinterstehende Verwaltungsapparat viel zu groß. Und ich erwarte, typisch für Deutschland, eine möglichst technologische und fehleranfällige Lösung für dieses "Problem".

Gerechtigkeit

Oft höre ich viel darüber wie die PKW Maut (oder Autobahnmaut, ihr dürft euch eure Wunschbezeichnung aussuchen) endlich für Gerechtigkeit auf deutschen Straßen sorgt. Hintergrund ist das wir verarmten Deutschen jedes Jahr gigantische Summen an KFZ-Steuer für unser liebstes Hobby (neben Fußball und Rassismus) an den Fiskus abdrücken.

Gerecht, das wäre meiner Meinung nach ein Endgeld, das in Abhängigkeit zur Nutzung der Straßen ist. Also vom Prinzip her müsste man auf Treibstoff (Benzin/Diesel) eine Gebühr erheben, denn eben dieser Treibstoff wird bei zunehmender Fahrleistung größer. Gleichzeitig benötigen verschwenderische Fahrzeuge und überflüssige Straßenpanzer (SUVs) ebenfalls mehr von diesem Treibstoff. Wir sollten es Mineralölsteuer nennen, aber die hat schon jemand erfunden.

Eine Erhöhung, dieser angenommenen Mineralölsteuer, mit einem Steueraufkommen von ca. 40 Millarden Euro jährlich, könnte den Wegfall einer KFZ-Steuer (ca 8.5 Millarden Euro pro Jahr) kompensieren. Bei gleichzeitiger Erhöhung der Pendlerpauschale wäre so jeder an der Finanzierung beteiligt, und gleichzeitig der Arbeitsweg ohne finanzielle Verluste über die Einkommenssteuererklärung mehr oder weniger steuerfrei. Auf diese weiße könnte zusätzlich noch Verwaltungsaufwand, und damit Kosten gespart werden, zusätzlich benötigen wir auch keine neue technologische und organisatorische Fehlkonstruktion "Made in Germany", welche langfristig als Überwachungsapparat missbraucht wird.

Lernen durch Schmerzen

Allerdings möchte ich noch wesentlich mehr Geld verdienen, und dies mache ich am liebsten dort, wo eh zu viel Geld vorhanden ist: Raser, Drängler und Leute die zu blöd sind ein Bluetooth Headset zu verwenden.

Im internationalen Vergleich sind die "Strafen" für Verstöße gegen die Straßenverkehrsordnung hier in Deutschland wirklich Schnäppchen. Ich denke wir sollten hier die Happy Hour beenden und endlich finanzielle Anreize zur Einhaltung bestehender Gesetze und Verordnungen schaffen. Gleichzeitig können sich so viele Personen mit zu viel Geld freiwillig an der Finanzierung unserer Straßen und Schulen (Steuern sind in der Regel nicht zweckgebunden!) beteiligen.

Drängler, Raser oder Personen mit angewachsenem Handy sind nur einige Beispiele, wenn ich länger darüber nachdenke, fallen mir da auch noch wesentlich mehr ein. Viele Verstöße werden (in diesem Ausmaß) erst deswegen begangen, weil die Strafen dafür recht überschaubar sind, das kann und sollte man ändern. Je weniger Menschen Rasen und mit dem Handy den Straßenverkehr telefonieren, desto sicherer wird die Straße auch für die restlichen Verkehrsteilnehmer.

Fazit

Wir beschäftigen uns bei der PKW Maut / Autobahnmaut vor allem mit einer gefühlten Gerechtigkeit, wir sollten uns lieber das Geld dort holen, wo es anscheinend etwas locker sitzt. Wer gerne abseits vom Arbeitsweg viel und schnell fährt, darf dies über seinen Treibstoffverbrauch auch bezahlen. Wer zusätzlich noch Geld übrig hat, bekommt von mir auch die Möglichkeit dies über Strafen zu tun.

Doch bevor wir noch mehr Geld scheffeln, sollten wir vielleicht mal damit Anfangen unser Geld nicht sinnlos zu verbrennen (BER, S21, Panzer, …) und damit sinnvolle Dinge wie ein besseres Bildungssystem oder eine gerechte Altersvorsorge zu finanzieren.


Was Threema richtig macht?

2014-03-23 13:24 | categories: allgemeines android sicherheit software

Gestern habe ich etwas über WhatsApp geschrieben. Heute soll es etwas um Threema gehen, aber natürlich nicht ein weiterer Test dieser Anwendung, sondern eine Erläuterung von Dingen die Threema richtig macht.

Der Artikel soll nicht als Werbung für Threema missverstanden werden, ich selbst halte Threema für eine Technologiedemo, welche zeigt, wie man Kryptografie für normale Anwender brauchbar hinbekommen kann. Unser Ziel sollte es nicht sein das alle Menschen Threema verwenden, sondern das wir aus den Verbesserungen und Ideen die uns Threema bietet für zukünftige Projekte lernen.

Einfach

Letztes Jahr habe ich schon mal einen kleinen Rant zum Thema XMPP veröffentlicht. Für jemanden der bisher WhatsApp nutzt wird also XMPP auch langfristig keine Alternative sein, zu groß ist der Schmerz bei der Konfiguration von Clients in der Familie oder im eigenen Freundeskreis.

Threema geht hier einen Einfachen weg, da es nur einen Client gibt, gehen damit auch alle verfügbaren Features automatisch. Ein Benutzername oder Passwort ist ebenso wenig vorhanden wie ein Server oder dessen zugehörige Einstellungen. Der Anwender muss sich hier also keine Gedanken machen, er kann direkt nach der Installation loslegen.

Der einzige Unterschied zu WhatsApp ist wohl das lustige rumwischen auf dem Display zum erzeugen von Zufallszahlen. Alles andere verhält sich mehr oder weniger so wie in jedem anderen Messenger.

Usability

Das größte Problem an Kryptografie war schon immer der Schlüsselaustausch oder die Notwendigkeit sich gegenseitig zu signieren. Beim gängigen GPG Verfahren erfolgt dies über das Ausdrucken (!!!) von Zetteln durch die Teilnehmer und dem Abgleich von Personalausweisen, Reisepass oder Führerscheinen auf diversen Veranstaltungen. Ist dies erledigt, geht man nach Hause und ärgert sich wahlweise mit der Kommandozeile oder einem grafischen Frontend für GPG rum. Der Aufwand ist einigen Nerds ohne Probleme zu vermitteln, mein Nachbar will davon aber einfach nichts wissen. Er hat auch keine Lust 2-3 Semester Informatik oder Kommandozeilentheologie zu studieren.

Threema löst dieses Problem sehr elegant, und zwar gibt es für jeden Kontakt in der Kontaktliste mehrere Stufen der Vertrauenswürdigkeit. Die niedrigste Stufe (rot, ein Punkt) bedeutet das dieser Kontakt manuell der Kontaktliste anhand seiner ID hinzugefügt wurde. In der zweiten Stufe (orange, zwei Punkte) hat der Server von Threema die Handynummer und/oder Mailadresse durch geeignete Maßnahmen überprüft. Zuletzt gibt es noch eine dritte Stufe (grün, drei Punkte), diese bekommt man wenn man den QR Code des Kontaktes abgescannt hat.

Und eben diese dritte Stufe ersetzt das war wir heute umständlich mit GPG machen, und zwar mit einem Verfahren, das für normale Anwender auch geeignet ist. Einzig ein fehlendes Web of Trust ist mir aufgefallen, es wird also nicht über einen Server abgeglichen, wer von mir schon bestätigt/verifiziert wurde.

Features

Threema bietet nicht sonderlich viele Features, doch die vorhanden funktionieren in der Regel gut und ohne größere Probleme. Ein sehr wichtiges Feature ist meiner Meinung nach das es keine Werbung anzeigt, und so den Anwender nicht nervt und das damit verbundene ständige Tracking des Anwenders zumindest auf den ersten Blick unterbunden ist.

Was im Gegensatz zu vielen XMPP Setups auch gut funktioniert ist das Teilen von Bildern, ganz ohne die Notwendigkeit sich mit STUN oder komischen XMPP Extensions rumschlagen zu müssen.

Verbesserungspotential

Der Schüsselaustausch sollte zusätzlich zu den QR Codes auch über NFC möglich sein, wir haben diese großartige RFID Technik in unseren Geräten, also sollten wir sie auch nutzen. Gleichzeitig würde damit der Bedarf einer QC-Code Scanner Installation verschwinden, ich selbst brauche so ein Ding nämlich wirklich nicht.

Richtig nervig hingegen ist aber der nach wie vor fehlende Support für mehrere Endgeräte zur gleichen Zeit, denn obwohl ich ein Smartphone ständig dabei habe bevorzuge ich doch immer wieder mein Pad. Google Hangouts hat gezeigt, wie man mit mehreren Geräten umgehen kann, wenn man nur will.

Das größte Problem an Threema ist aber sein Closed Source Status, wir können schlicht nicht (direkt/angemessen) überprüfen was Threema wirklich macht. Der Hersteller stellt zwar einige Informationen bereit, ich selbst wünsche mir aber von Anwendungen vor allem aus dem Bereich der IT Sicherheit gerne Zugriff auf den Quellcode. Ich selbst wäre wohl nicht in der Lage diesen vollumfänglich zu verstehen, aber andere Messenger wurden gerne mal innerhalb weniger Tage demontiert.