[Talk-de] HTTPS auf overpass-api.de

Roland Olbricht roland.olbricht at gmx.de
Do Mär 26 18:24:18 UTC 2015


Liebe Mitmapper,

danke für den Hinweis mit dem SSL-Zertifikat. Ich werde es auch in den 
nächsten Tagen erneuern. Zu einem verantwortungsvollen Umgang mit der 
Technik gehört aber auch, die Sicherheit dahinter einzuschätzen.

Ich denke, das Image der SSL-Zertifkate ist, dass sie irgendwie sicher 
sind, während Seiten ohne Verschlüsselung irgendwie  unsicher sind. Ich 
würde das gerne detaillieren.

Die Zertifikate werden von Organisationen herausgegeben, die damit Geld 
verdienen wollen. Sie sind arauf angewiesen, dass die Browser-Hersteller 
sie als vertrauenswürdige Institution eintragen. Das machen 
Browser-Hersteller erschreckend häufig: über 200 solcher Organisationen 
stehen im Browser.

Wenn irgendeine der Organisationen sich bösartig verhält, kann sie an 
einen Dritten ein Zertifkat ausstellen, mit dem er behaupten kann, der 
legitime Anbieter von overpass-api.de zu sein. Um das mal zu 
vergleichen: stell Dir vor Zugschaffner zu sein, und 200 verschiedene 
Firmen dürfen für den Zug gültige Fahrscheine herausgeben. Nicht nur der 
Betreiber, sondern 200 verschiedene Firmen. Wie wahrscheinlich ist es, 
alle Schwarzfahrer zu finden? Welche Chancen hat ein Fahrgast, trotz 
gutem Willen ein ungültiges Ticket zu haben, weil sein Verkäufer 
unseriös war?

Man kann einwenden, dass ein Angreifer mehr tun muss: er muss den 
Datenverkehr zwischen Browser und dem Webserver, auf dem die Overpass 
API liegt, abfangen. Das muss er allerdings für eine unverschlüsselte 
Verbindung ebenfalls. Ohne große Mühen können das z.B. Programme auf dem 
eigenen Rechner (macht der Notebook-Hersteller Lenovo [1]), Dein 
Zugangsprovider [2] oder im Falle eines WLANs in der Regel jeder andere 
Teilnehmer im WLAN, mein Zugangsprovider oder Hosting-Anbieter oder auch 
Lauscher an großen Umschlagpunkten [3]. In allen diesen Fällen haben die 
Mitlauscher es geschafft, sich auch ein gültiges Zertifikat zu 
verschaffen. Zwischen der Sicherheit verschlüsselter und 
unverschlüsselter Verbindungen hat es also exakt keinen Unterschied gegeben.

Unberechtigte Zertifikate zu ehalten ist aber nicht nur für 
Geheimdienste [2] und Anbieter suspekter Software [1] möglich, sondern 
auch für Einzelpersonen [4]. Um ein Zertifkat für eine Website zu 
bekommen, muss man nur in der Lage sein, eine eMail an eine Adresse wir 
postmaster at overpass-api.de zu einem selbstgewählten Zeitpunkt lesen zu 
können. Praktischerweise passiert das auf dem gleichen Kanal wie die 
spätere Verbindung zur Overpass API per HTTPS; diesen muss man für einen 
Angriff ohnehin kontrollieren können. Dazu kommen alle außerplanmäßigen 
Wege, wie z.B. Geheimdienst oder Polizei oder ausreichend wichtiger 
Mitarbeiter eines der Zertifikat-Herausgeber zu sein oder sich als 
Geheimdienst oder Polizei oder Mitarbeiter plausibel ausgeben zu können.

Umgekehrt haben die Zertifikat-Herausgeber ein kommerzielles Interesse, 
diesen Zustand so aufrecht zu erhalten. Den anderen großen Hebel haben 
die Browser-Hersteller: aber auch für sie bringt es keinen Vorteil, die 
Liste der Herausgeber zu verkürzen; jeder Herausgeber könnte im 
Ernstfall eine Geldquelle sein, weil die Herausgeber auf das Vertrauen 
der Browser-Hersteller angewiesen sind. Nutzer können das zwar 
individuell überstimmen, aber die Mehrheit wird das nicht oder zumindest 
nicht auf allen genutzten Rechnern tun. Es sei in den Raum gestellt, 
dass sich Mozilla für Firefox ausgerechnet mit dem Community-basierten 
CACert schwertut, sie in die Standardliste der vertrauenswürdigen 
Anbieter aufzunehmen [5].

Möglich wäre mehr Sicherheit durchaus: letztlich läuft es daraus hinaus, 
dass ich meine persönliche Quelle des Vertrauens als gesonderte Hardware 
mit dem Gerät verbinde. Als Karte analog zur SIM-Karte oder als 
USB-Stick, um davon zu booten.

Im Gegensatz dazu verbreitet sich mit Certificate Pinning [6] ein 
Verfahren, das inhärent große Anbieter bevorzugt: man muss sich wieder 
mit dem Browser-Hersteller gutstellen, damit er für die eigene Seite nur 
die Zertifikate eines einzelnen Anbieters akzeptiert. In der Praxis wird 
das heißen, eine Bürokratie zu durchlaufen, Geld auf den Tisch zu legen 
oder eine Kombination aus beidem. Wie aussichtsreich das für die Seiten 
im OSM-Umfeld ist, kann man an dem Umgang mit CACert absehen.

In der Summe heißt das also, dass ich jemandem Geld oder Zeit schenken 
soll, damit er meinen Nutzern keine Angst einjagt (legal, im Gegensatz 
zu [7]). Im Sinne des Komforts für den Nutzer tue ich das. Aber es soll 
niemand sagen, er habe nicht gewusst, dass es keinen Sicherheitsgewinn 
bringt.

Für die Quellen danke ich übrigens Fefe und der Suchfunktion in seinem Blog.

Viele Grüße,

Roland

[1]: 
http://thenextweb.com/insider/2015/02/19/lenovo-caught-installing-adware-new-computers/
[2]: 
http://googleonlinesecurity.blogspot.de/2013/12/further-improving-digital-certificate.html
[3]: 
http://www.heise.de/newsticker/meldung/NSA-Skandal-Provider-hilft-BND-angeblich-beim-Zugriff-am-Internet-Knoten-DE-CIX-2261805.html
oder 
http://www.theguardian.com/world/2014/feb/27/gchq-nsa-webcam-images-internet-yahoo
[4]: 
http://arstechnica.com/security/2015/03/microsoft-takes-4-years-to-recover-privileged-tls-certificate-addresses/
[5]: http://blog.fefe.de/?ts=b25933c5
oder https://bugzilla.mozilla.org/show_bug.cgi?id=215243
[6]: 
http://en.wikipedia.org/wiki/Transport_Layer_Security#Certificate_pinning
[7]: http://en.wikipedia.org/wiki/Protection_racket
[8]: z.B. http://blog.fefe.de/?q=openstreetmap




Mehr Informationen über die Mailingliste Talk-de