Sonntag, 26. Februar 2017
[*]

Let’s encrypt! Jetzt aber richtig!

, 23:30

Mehr TLS für alle!

Ich habe endlich angefangen, alle Blogs auf diesem Server auf https-only umzustellen. Das liegt zum Teil daran, dass die Übertragung von Daten über unverschlüsseltes http von den Browsern (zurecht) immer mehr als unsicher gekennzeichnet wird. Und es verringert natürlich die Überwachungsgefahr für alle Besucherinnen und Besucher der Blogs. Ja, wahrscheinlich ist der Besuch dieser Seiten für Geheimdienste, Ermittlungsbehörden und ähnliche Parteien kein interessanter Datenpunkt, aber ich will mir nicht anmaßen, das für andere Leute zu entscheiden.

Deshalb gibt es jetzt schon percanta.de, streifzug.me, freifunk-stuttgart.de  und weitere nur noch über verschlüsselte Verbindungen. Die Zertifikate dafür kommen von Let’s Encrypt, wo sie endlich automatisiert generiert und erneuert werden können, weshalb die ganze Aktion nicht mehr in einem Albtraum an Ablaufterminen enden muss.

Trotzdem steckt noch einiges an Arbeit in der weiteren Einrichtung und der Beseitigung von Mixed-Content-Warnungen. Sollte sich irgendwas seltsam verhalten, dann meldet Euch.

Freitag, 10. Januar 2014
[*]
[*]
Samstag, 4. Mai 2013
[*]

Entfernt endlich Java aus dem Browser!

, 00:08

Java ist eine mächtige Sprache mit vielen Vorteilen:

Eine ausgereifte Virtuelle Maschine mit robuster Unterstützung von Nebenläufigkeit, die in der Geschwindigkeit ohne den Einsatz maschinenspezifischen Codes schwer zu schlagen ist, und deren Verbreitung auf unzähligen Systemen das einst gegebene Versprechen „Write once, run anywhere.“ so gut wie möglich einlöst. Dazu gibt es einen bunten Strauß an APIs für alle möglichen Einsatzgebiete.

Alles könnte so schön sein. Seit einiger Zeit aber hört man alle paar Wochen bis Monate (gefühlt ist es alle drei Tage) Meldungen über Sicherheitslücken und Exploits. Die Lücken befinden sich praktisch immer in der Absicherung des Browserplugins, der sogenannten Sandbox, dabei wird das Plugin gar nicht mehr gebraucht.

Vor 10 Jahren ergab es durchaus Sinn, Java-Applets in Webseiten zu integrieren: während JavaScript (nicht zu verwechseln, merke: „Java verhält sich zu JavaScript wie Wal zu Walnuss.“) noch in einem echten Interpreter ausgeführt wurde und entsprechend langsam war, hatte Java bereits einen JIT-Compiler. Auf der damaligen Hardware war das ein echter Vorteil, zumal die verlängerten Startzeiten im Vergleich zur Downloaddauer über die damaligen Internetverbindungen kaum ins Gewicht fielen. Heute wird auch JavaScript vor der Ausführung kompiliert, und so bleiben nur die Nachteile:

Das Sandboxkonzept ist bei der gegebenen Sprachmächtigkeit nicht in den Griff zu bekommen. Die JVM hat volle Unterstützung für Datei- und Netzwerkoperationen sowie Möglichkeiten zur dynamischen Erzeugung von Klassen, die diese Funktionen benutzen.

Die JavaScript-API in Browsern hat dagegen keinen schreibenden Zugriff auf das Dateisystem und kann im Netzwerk nur http-Verbindungen aufbauen. Nur mit einer Sprache, deren Laufzeitumgebung keine Konzepte der verbotenen Operationen hat, lässt sich eine halbwegs sichere Sandbox implementieren.

Das bedeutet nicht, dass es völlig unmöglich ist, auch aus der JavaScript-Sandbox auszubrechen, aber in Java muss der Angreifer nur die virtuelle Maschine austricksen, während er bei einer JavaScript-Lücke den systemspezifischen Maschinencode selbst einschleusen müsste. Während also JavaScript zum Ausbruch aus seinem Sandkasten ein Schäufelchen zur Verfügung hat, handelt es sich bei Java eher um einen Radlader. „Write once, run anywhere“ gilt bei Java eben auch für Exploitcode.

Die Konsequenz muss sein, Java komplett aus dem Browser zu entfernen — und das sage ich als Java-Entwickler. Beliebte und benötigte Java-Anwendungen wie Wordle oder ELSTER können genau so gut lokal als Programme installiert werden. Die JVM an sich ist nämlich nicht unsicherer oder sicherer als andere Laufzeitumgebungen, und es schmerzt, dass nach Jahren des „Java? Das ist doch viel zu langsam.“ sich jetzt „Java? Das ist doch viel zu unsicher.“ im allgemeinen Bewusstsein festsetzt.

Die Überlegungen gelten genau so übrigens auch für Flash.

Samstag, 23. Juni 2012
[*]

Sparkleshare – Dateien synchron halten, aber sicher!

, 19:02

Dropbox ist toll: auf vielen Systemen unterstützt, einfach zu benutzen, bis zu einem gewissen Volumen kostenlos und irrsinnig zuverlässig.

Aber man vertraut seine Dateien eben doch fremden Leuten an (mit den üblichen Implikationen), und dass die Größe geteilter Ordner jedem Teilnehmer einzeln vom Konto abgezogen wird, ist zumindest schwierig zu verstehen. Google Drive ist ungefähr dasselbe in blau-rot-gelb-blau-grün-rot.

An dieser Stelle tritt Sparkleshare auf den Plan. Damit kann man Ordner über mehrere Rechner (Windows, Mac und Desktop Linux sind im Moment unterstützt) und mit mehreren Personen synchron halten, ohne die Daten bei irgendeiner fremden Firma herumliegen haben zu müssen. Als Speicher fungiert die verteilte Versionsverwaltung git.

Ich will hier mal kurz vorführen, wie man sich das, sofern man einen Rootserver (oder virtuellen Server) mit ssh-Zugang hat, autark aufsetzen kann.

mehr…

Mittwoch, 4. Januar 2012
[*]

Sicherheit jetzt!

, 12:01

Auf Anregung von Johannes Kleske (via dailycoffeebreak) rufe ich mal das Jahr der Computersicherheit aus. Ich fange mit den Tipps aus Johannes Artikel an, werde mir aber in loser Folge weitere Änderungen ausdenken und Artikel darüber schreiben.

Als erstes habe ich auf meine MacBook einen neuen Administratorbenutzer  angelegt und mir selbst die Adminrechte weggenommen (fühlt sich gleich UNIXiger an). Als zweites richtet (wie hier schon versprochen) gerade FileVault eine Festplattenverschlüsselung ein:

Das dauert noch ein paar Stunden.

Demnächst weitere Ideen…

Dienstag, 28. Oktober 2008
[*]

Everybody’s PIN Number: Revealed!
Someone actually wrote in requesting an explanation as to how this thing works.

Sorry, we do not reveal our trade secrets.
aus Delicious/steinhobelgruen

Tags , , ,   Kommentare  Kommentare deaktiviert für Everybody’s PIN Number: Revealed!