Certificate Transparency

Ich muß noch mal auf https://googleonlinesecurity.blogspot.de/2015/10/sustaining-digital-certificate-security.html zurück kommen.

Was ist passiert?

Google hat Beweise, daß Symantec eine CA nicht so betreibt wie man eine CA betreiben sollte, und insbesondere, daß Symantec Zertifikate signiert, in denen der Domainname von Google mißbräuchlich verwendet wird.

Um die Sicherheit seiner Systeme zu gewährleisten fordert Google Symantec auf, das zu lassen, die CA ordnungsgemäß zu betreiben und dies gegenüber unbeteiligten Dritten zu beweisen.

Wenn nicht wird Google von dieser CA ausgestellte Zertifikate nicht mehr anerkennen.

Wie hat Google das gemerkt?

Google betreibt mit Dritten das Certificate Transparency Projekt (CT): https://www.certificate-transparency.org/how-ct-works CT besteht aus drei Teilen: CA Logs, CA Monitors und CA Auditors.

In CT loggen die teilnehmenden Certificate Authorities jedes Zertifikat, das sie ausstellen und zurückziehen und jede andere Operation mit einer Sammelstelle, nämlich CT selber. CT sorgt dafür, daß in der Form eines Ewigen Logfiles (https://de.wikipedia.org/wiki/Ewiges_Logfile) gesammelt, siginiert und versiegelt wird. 

CT stellt das so zentralisierte Log zur Auswertung einer Gruppe von Monitoren zur Verfügung. Diese können überprüfen, ob Zertifikate in ihrem Namen ausgestellt worden sind, für interessante, ob Zertifikate für große Dritte Domains ausgestellt worden sind, ob eine Domain ihre CA gewechselt hat und so weiter. Bei Auffälligkeiten kann ein Mensch alarmiert werden und nachsehen oder nachfragen, ob alles so seine Richtigkeit hat.

Außerdem betreibt CT Auditors, und das ist zum Beispiel jede laufende Instanz von Chrome oder anderen Browsern, die CT unterstützen: In https://www.certificate-transparency.org/how-ct-works heißt es: »Most auditors will likely be built into browsers. In this configuration, a browser periodically sends a batch of SCTs to its integrated auditing component and asks whether the SCTs (and corresponding certificates) have been legitimately added to a log. The auditor can then asynchronously contact the logs and perform the verification.« Auf diese Weise kann der Auditor im Browser prüfen, ob das Zertifikat, das er sieht, auch korrekt ausgestellt worden ist, ob ein Monitor das Zertifikat geflaggt hat oder ob sonst eine Unregelmäßigkeit vorliegt.

Zugleich loggt der Auditor seine Beobachtungen ebenfalls an CT zurück.

Auf diese Weise liegt auch ein zentrales Lagebild vor, das zeigt, ob etwa Zertifikate im Namen von Google signiert worden sind, aber nicht mit dem Key einer CA, die das im Auftrag von Google tut. Auf diese Weise sind auch die Unregelmäßigkeiten entdeckt worden, die Google jetzt Symantec vorwirft.

Warum ist das gefährlich, was Symantec da macht?

Eine CA ist ein Notar, und wie ein Notar kann und darf eine CA nicht ohne legitimen Auftrag tätig werden. Das heißt, sie darf nicht von sich aus handeln, und sie muß, bevor sie handelt, sicherstellen, daß der Auftraggeber berechtigt ist, den Auftrag zu erteilen, den er erteilt.

In diesem Fall hat Symantec für jemanden Zertifikate erstellt, die den Domainnamen "google.com" als authentisch für den Inhaber eines bestimmten private Key beglaubigen (Auftrag lag vor) und der Auftraggeber war nach eigener Aussage nicht Google (Auftrag war nicht legitim).

Da Symantec eine global von allen Browsern als vertrauenswürdig angesehene CA betreibt, würde jeder Browser das Zertifikat als 'das ist das echte google.com und keine Fälschung' anerkennen, wenn Chrome nicht noch weitere Sicherheitsmaßnahmen enthielte (etwa Cert Pinning und die CT Auditors). Und das, obwohl der Inhaber des von Symantec signierten Certs definitiv nicht Google ist.

Was verlangt Google von Symantec?

Nachdem Google durch CT auf den Mißbrauch aufmerksam geworden ist, hat Google Symantec aufgefordert, die Vorgänge zu erklären und einen Audit durchzuführen. Symantec hat das gemacht, und dabei nicht bemerkt, daß noch mehr Fälle nach dem gleichen Muster vorgelegen haben - der Audit war also wirkungslos oder nicht gründlich.

Google hat jetzt in https://googleonlinesecurity.blogspot.de/2015/10/sustaining-digital-certificate-security.html diese weiteren Fälle dokumentiert - insgesamt um die 2600 Stück, also keine Einzelfälle und verlangt von Symantec jetzt, sich so zu verhalten, wie man es von einem global in allen Browsern anerkannten Notar bzw. einer CA verlangt. Tut Symantec das nicht, kann Google zumindest in Google Produkten dafür sorgen, daß die CA von Symantec als irregulär markiert oder ganz aus dem Verkehr gezogen wird.

Das heißt, Google verlangt von Symantec

- die Unregelmäßigkeiten einzustellen
- aufzuklären, warum jede einzelne von den 2600 Unregelmäßigkeiten aufgetreten ist und das zu dokumentieren
- den CA Prozeß so zu ändern, daß das nicht mehr vorkommen kann
- und dabei insbesondere CT zu unterstützen sowie
- durch eine unbeteiligte Dritte Partei untersuchen zu lassen, ob das so wirksam ist

und für alles dies einen Zeitplan einzureichen.

Ist Google die "Internet-Polizei", oder "Polizei, Staatsanwalt, Richter und Vollstrecker in einem"?

Es gibt keine Polizei im Internet und keine Nation und keine Polizei der Welt kümmert sich um irreguläre CAs.

CT ist eine offene und freiwillige Struktur, an der gute CAs teilnehmen sollten, um dokumentierte Schwachstellen in TLS und dem CA-System zu schließen (die CT Website erklärt das ganz gut).

Die Daten aus CT kann jeder Kunde auswerten und Unregelmäßigkeiten aufdecken, um dann CAs zu outen, die sich nicht wie ein guter Notar verhalten. Das hält die CAs ehrlich und sichert die Qualität im CA-System.

Ist das eine Internet-Polizei? Nein, niemand tritt bei Symantec die Tür ein und nimmt denen die Rechner weg.

Ist das "Polizei, Staatsanwalt, Richter und Vollstrecker in einem"? Nein, die Findings sind öffentlich, frei diskutierbar und von jedem Sachverständigen nachvollziehbar.

Sind die Forderungen von Google unangemessen?

You be the judge. Ist es unangemessen, von einem Notar Sorgfalt, öffentlichen Dokumentation seiner Arbeit und Ehrlichkeit zu verlangen und ihm andernfalls an seiner Arbeit zu hindern oder seinen Aussagen nicht mehr zu vertrauen?
Shared publiclyView activity