Browser und Zertifikatsüberprüfung

Einleitung

HTTPS (über SSL /TLS) Verwendet Verschlüsselung mit öffentlichem Schlüssel um die Browserkommunikation vor dem Lesen oder Ändern während der Übertragung über das Internet zu schützen. Server stellen besuchenden Browsern einen öffentlichen Schlüssel zur Verfügung, mit dem eine verschlüsselte Verbindung für alle nachfolgenden Datenaustausche hergestellt wird.

Allerdings nur eine arbeiten, Der öffentliche Schlüssel allein garantiert nicht, dass er (und damit auch der Server) tatsächlich der richtigen Fernbedienung gehört Fach (dh Person, Firma oder Organisation). Man-in-the-middle Angreifer können Netzwerke manipulieren, um ihre eigenen Schlüssel bereitzustellen, wodurch die Kommunikation beeinträchtigt wird.

Browser verhindern dies durch Authentifizierung HTTPS-Server verwenden Zertifikate, die digitale Dokumente sind, die binden ein öffentlicher Schlüssel zu einem einzelnen Thema. Die Bindung wird durch eine vertrauenswürdige Person bestätigt Zertifizierungsstelle (CA) wie SSL.com Überprüfen Sie die Identität potenzieller Zertifikatsinhaber durch automatisierte und manuelle Überprüfungen anhand qualifizierter Datenbanken.

Diese Vertrauensbeziehung bedeutet, dass die Sicherheit der Webbenutzer nicht absolut ist. Vielmehr müssen Benutzer Browsern und Zertifizierungsstellen vertrauen, um ihre Sicherheit zu schützen. Wir sind daher der Meinung, dass es im Interesse jedes Benutzers liegt, ein grundlegendes Verständnis der Funktionsweise der Zertifikatsvalidierung zu haben.

Beachten Sie, dass der Zertifikatvalidierungsprozess (ausführlich im Standarddokument beschrieben) RFC 5280) ist ziemlich verworren. In diesem Artikel werden wir versuchen, Sie auf einem Pfad zu führen (einem Browser, der das SSL / eines Hosts überprüft).TLS Zertifikat) und navigieren Sie an komplexen Details vorbei, die für die meisten Benutzer keine Rolle spielen.

Benötigen Sie ein Zertifikat? SSL.com hat Sie abgedeckt. Vergleichen Sie die Optionen hier um die richtige Wahl für Sie zu finden, von S/MIME und Codesignaturzertifikate und mehr.

BESTELLEN SIE JETZT!

Zertifikate und das X.509-Format

Zertifikate sind in jeder Hinsicht digitale Dateien. Dies bedeutet, dass sie zum Speichern von Informationen (z. B. Signaturen, Schlüssel, Aussteller usw.) einem Dateiformat folgen müssen. Während privat PKI Konfigurationen können jedes Format für ihre öffentlich vertrauenswürdigen Zertifikate implementieren PKIs (dh diejenigen, denen die Browser vertrauen) müssen RFC 5280 entsprechen, für das die Verwendung von erforderlich ist X.509 v3 Format.

Mit X.509 v3 können Zertifikate zusätzliche Daten enthalten, z. B. Nutzungsbeschränkungen oder Richtlinieninformationen Erweiterungen, wobei jede Erweiterung entweder ist kritischem or nicht kritisch. Browser können ungültige oder nicht erkannte nicht kritische Erweiterungen ignorieren, müssen jedoch alle kritischen Erweiterungen verarbeiten und validieren.

Zertifizierungspfade und Pfadverarbeitung

Zertifizierungsstellen verwenden einen privaten Schlüssel, um alle ausgestellten Zertifikate kryptografisch zu signieren. Solche Signaturen können unwiderruflich beweisen, dass ein Zertifikat von einer bestimmten Zertifizierungsstelle ausgestellt wurde und dass es nach seiner Signierung nicht geändert wurde.

Zertifizierungsstellen stellen den Besitz ihres Signaturschlüssels fest, indem sie über ein selbst ausgestelltes Zertifikat (das als Wurzel) für den entsprechenden öffentlichen Schlüssel. Zertifizierungsstellen müssen streng kontrollierte und geprüfte Verfahren einhalten, um eine Wurzel zu erstellen, zu verwalten und zu verwenden. Um die Exposition zu minimieren, wird normalerweise eine Wurzel zur Ausgabe verwendet Zwischen- Zertifikate. Diese Zwischenprodukte können dann verwendet werden, um die Zertifikate ihrer Kunden auszustellen.Browser werden mit einer integrierten Liste vertrauenswürdiger Roots geliefert. (Dies sind Roots von Zertifizierungsstellen, die die strengen Kriterien des Browsers für die Aufnahme erfüllt haben.) Um ein Zertifikat zu überprüfen, erhält ein Browser eine Folge von Zertifikaten, von denen jedes das nächste Zertifikat in der Sequenz signiert hat, wodurch der Stamm der signierenden Zertifizierungsstelle mit dem des Servers verbunden wird Zertifikat.

Diese Folge von Zertifikaten wird als a bezeichnet Zertifizierungspfad. Die Wurzel des Pfades heißt a Vertrauensanker und das Zertifikat des Servers heißt Blatt or Endeinheit Zertifikat.

Pfadbau

Oft müssen Browser mehrere Zertifizierungspfade berücksichtigen, bis sie einen gültigen für ein bestimmtes Zertifikat finden. Obwohl ein Pfad möglicherweise Zertifikate enthält, die ordnungsgemäß mit einem bekannten Anker „verkettet“ sind, kann der Pfad selbst aufgrund von Einschränkungen hinsichtlich Pfadlänge, Domänenname, Zertifikatsverwendung oder Richtlinie abgelehnt werden.

Das Erstellen und Auswerten aller möglichen Pfade ist ein teurer Prozess, der für jedes neue Zertifikat ausgeführt wird, auf das ein Browser stößt. Browser haben verschiedene Optimierungen implementiert, um die Anzahl der abgelehnten Kandidatenpfade zu minimieren. Die Untersuchung solcher Details geht jedoch weit über den Rahmen dieses Artikels hinaus.

Pfadüberprüfung

Nachdem ein Zertifizierungspfad für Kandidaten erstellt wurde, validieren ihn die Browser anhand der in den Zertifikaten enthaltenen Informationen. Ein Pfad ist gültig, wenn Browser kryptografisch nachweisen können, dass ausgehend von einem direkt von einem Vertrauensanker signierten Zertifikat der entsprechende private Schlüssel jedes Zertifikats verwendet wurde, um den nächsten im Pfad bis hinunter zum Blattzertifikat auszugeben.

Validierungsalgorithmus für Zertifizierungspfade

RFC 5280 beschreibt a Standardalgorithmus Diese Browser folgen, um einen Zertifizierungspfad für X.509-Zertifikate zu überprüfen.

Grundsätzlich durchlaufen Browser alle Zertifikate im Pfad, beginnend mit dem Vertrauensanker (dh dem Stammzertifikat), und validieren die grundlegenden Informationen und kritischen Erweiterungen jedes Zertifikats.

Wenn die Prozedur fehlerfrei mit dem letzten Zertifikat im Pfad endet, wird der Pfad als gültig akzeptiert. Wenn Fehler auftreten, wird der Pfad als ungültig markiert.

Grundlegende Zertifikatsverarbeitung

Unabhängig von Erweiterungen müssen Browser immer grundlegende Zertifikatinformationen wie die Signatur oder den Aussteller überprüfen. Die folgenden Abschnitte zeigen die Reihenfolge der Überprüfungen, die Browser durchführen.

1. Der Browser überprüft die Integrität des Zertifikats

Das Stempel, Unterschrift auf dem Zertifikat kann mit normaler Kryptographie mit öffentlichem Schlüssel überprüft werden. Wenn die Signatur ungültig ist, gilt das Zertifikat nach seiner Ausstellung als geändert und wird daher abgelehnt.

2. Der Browser überprüft die Gültigkeit des Zertifikats

Ein Zertifikat Gültigkeitsdauer ist das Zeitintervall, in dem die signierende Zertifizierungsstelle garantiert, dass Informationen über ihren Status beibehalten werden. Browser lehnen Zertifikate ab, deren Gültigkeitsdauer vor oder nach dem Datum und der Uhrzeit der Validierungsprüfung endet.

3. Der Browser überprüft den Sperrstatus des Zertifikats

Wenn ein Zertifikat ausgestellt wird, wird erwartet, dass es während seiner gesamten Gültigkeitsdauer verwendet wird. Natürlich können verschiedene Umstände dazu führen, dass ein Zertifikat ungültig wird, bevor es natürlich abläuft.

Zu diesen Umständen kann gehören, dass ein Betreff seinen Namen ändert oder ein mutmaßlicher Kompromiss mit seinem privaten Schlüssel vorliegt. In solchen Fällen muss eine Zertifizierungsstelle das entsprechende Zertifikat widerrufen, und Benutzer vertrauen auch einer Zertifizierungsstelle, um die Browser über den Sperrstatus ihrer Zertifikate zu informieren.

RFC 5280 empfiehlt, dass Zertifizierungsstellen zu diesem Zweck Sperrlisten verwenden.

Zertifikatsperrlisten (CRL)

Zertifizierungsstellen stellen regelmäßig eine signierte, mit einem Zeitstempel versehene Liste der widerrufenen Zertifikate mit der Bezeichnung a aus Zertifikatsperrliste (CRL). CRLs werden in öffentlich verfügbaren Repositorys verteilt, und Browser können bei der Validierung eines Zertifikats die neueste CRL der Zertifizierungsstelle abrufen und abrufen.

Ein Fehler dieser Methode besteht darin, dass die zeitliche Granularität des Widerrufs auf den CRL-Ausgabezeitraum beschränkt ist. Ein Browser wird erst dann über einen Widerruf benachrichtigt, wenn alle aktuell ausgegebenen CRLs aktualisiert werden sollen. Abhängig von den Richtlinien der unterzeichnenden Zertifizierungsstelle kann dies eine Stunde, einen Tag oder sogar bis zu einer Woche dauern.

Online Certificate Status Protocol (OCSP)

Es gibt andere alternative Methoden zum Abrufen von Informationen zum Widerrufsstatus, wobei die beliebteste die ist Online-Zertifikatstatusprotokoll (OCSP).

Beschrieben im Standarddokument RFC6960Mit OCSP kann ein Browser den Sperrstatus eines bestimmten Zertifikats von einem Online-OCSP-Server (auch als a bezeichnet) anfordern antworten). Bei ordnungsgemäßer Konfiguration ist OCSP viel unmittelbarer und vermeidet das oben erwähnte Problem der CRL-Aktualisierungslatenz. Zusätzlich, OCSP-Heften verbessert Leistung und Geschwindigkeit.

4. Der Browser überprüft den Aussteller

Zertifikate sind normalerweise zwei Entitäten zugeordnet:

  1. Das EmittentDies ist die Entität, die den Signaturschlüssel besitzt, und
  2. Das Fach, bezieht sich auf den Eigentümer des öffentlichen Schlüssels, den das Zertifikat authentifiziert.

Browser überprüfen, ob ein Zertifikat vorhanden ist Emittent Feld ist das gleiche wie das Fach Feld des vorherigen Zertifikats im Pfad. Für zusätzliche Sicherheit die meisten PKI Durch Implementierungen wird auch überprüft, ob der Schlüssel des Ausstellers mit dem Schlüssel übereinstimmt, der das aktuelle Zertifikat signiert hat. (Beachten Sie, dass dies für den Vertrauensanker nicht gilt, da Roots selbst ausgegeben werden - dh sie haben denselben Aussteller und denselben Betreff.)

Verarbeitung von Einschränkungen

Das X.509 v3-Format ermöglicht es einer Zertifizierungsstelle, Einschränkungen oder Einschränkungen für die Validierung und Verwendung jedes Zertifikats als kritische Erweiterungen zu definieren. Jedes Zertifikat im Pfad kann zusätzliche Einschränkungen auferlegen, denen alle nachfolgenden Zertifikate entsprechen müssen.

Zertifikatsbeschränkungen wirken sich selten auf den durchschnittlichen Internetbenutzer aus, obwohl sie in SSL-Unternehmenslösungen häufig vorkommen. Funktionale Einschränkungen können mehreren betrieblichen Zwecken dienen, ihre wichtigste Verwendung besteht jedoch darin, bekannte Sicherheitsbedenken auszuräumen.

5. Der Browser überprüft Namensbeschränkungen

Eine private (aber öffentlich vertrauenswürdige) Zwischenzertifizierungsstelle mit der entsprechenden Namensbeschränkungen kann einer Organisation eine differenzierte Kontrolle über die Verwaltung und Ausstellung von Zertifikaten ermöglichen. Zertifikate können auf eine bestimmte Domäne oder einen bestimmten Domänenbaum (dh einschließlich Subdomänen) für den Domänennamen eines Unternehmens oder einer Organisation beschränkt sein. Namensbeschränkungen werden häufig für Zwischenzertifizierungsstellenzertifikate verwendet, die von einer öffentlich vertrauenswürdigen Zertifizierungsstelle erworben wurden, um zu verhindern, dass die Zwischenzertifizierungsstelle perfekt gültige Zertifikate für Domänen von Drittanbietern ausstellt (z google.com).

6. Der Browser überprüft Richtlinieneinschränkungen

Eine Zertifikatsrichtlinie ist ein von einer Zertifizierungsstelle veröffentlichtes Rechtsdokument, in dem die Verfahren zur Ausstellung und Verwaltung ihrer Zertifikate offiziell aufgeführt sind. Zertifizierungsstellen stellen möglicherweise ein Zertifikat unter einer oder mehreren Richtlinien aus. In jedem ausgestellten Zertifikat sind Links zu diesen enthalten, damit vertrauende Parteien diese Richtlinien bewerten können, bevor sie sich entscheiden, diesem Zertifikat zu vertrauen.

Aus rechtlichen und betrieblichen Gründen können Zertifikate Beschränkungen auferlegen, welchen Richtlinien sie unterliegen können. Wenn festgestellt wird, dass ein Zertifikat wichtige Richtlinieneinschränkungen enthält, müssen die Browser diese überprüfen, bevor Sie fortfahren können. (Kritische politische Einschränkungen treten jedoch in der realen Welt selten auf und werden daher für den Rest dieses Artikels nicht berücksichtigt.)

7. Der Browser überprüft grundlegende Einschränkungen (auch bekannt als Pfadlänge).

Mit dem X.509 v3-Format können Aussteller die maximale Pfadlänge definieren, die ein Zertifikat unterstützen kann. Dies bietet Kontrolle darüber, wie weit jedes Zertifikat in einem Zertifizierungspfad platziert werden kann. Dies ist tatsächlich wichtig - Browser, mit denen die Länge des Zertifizierungspfads ignoriert wurde, bis ein Forscher dies 2009 demonstrierte presentation, wie er das Blattzertifikat seiner Website verwendet hat, um ein gültiges Zertifikat für eine große E-Commerce-Website zu fälschen.

8. Der Browser überprüft die Schlüsselverwendung

Die Erweiterung "Schlüsselverwendung" gibt den Zweck des im Zertifikat enthaltenen Schlüssels an. Beispiele für solche Zwecke sind Verschlüsselung, Signaturen, Zertifikatsignierung usw. Browser lehnen Zertifikate ab, die gegen ihre Schlüsselverwendungsbeschränkungen verstoßen, z. B. das Auftreten eines Serverzertifikats mit einem Schlüssel, der nur für die CRL-Signatur bestimmt ist.

9. Der Browser verarbeitet weiterhin alle verbleibenden kritischen Erweiterungen

Nach der Verarbeitung der oben genannten Erweiterungen überprüfen die Browser alle verbleibenden Erweiterungen, die das aktuelle Zertifikat als kritisch kennzeichnet, bevor sie mit der nächsten fortfahren. Wenn ein Browser fehlerfrei das Blattzertifikat eines Pfads erreicht, wird der Pfad als gültig akzeptiert. Wenn Fehler auftreten, wird der Pfad als ungültig markiert und keine sichere Verbindung hergestellt.

Zusammenfassung

Das World Wide Web ist ein komplexes System miteinander verbundener und sich ständig weiterentwickelnder beweglicher Teile. Die Browsersicherheit ist daher kein gelöstes Problem, und wir hoffen, dass dieser Artikel einen Einblick in die Komplexität selbst der einen Komponente bietet, die wir hier betrachtet haben. Vertrauen spielt eine wichtige Rolle für Ihre Online-Sicherheit. Aus diesem Grund bitten wir Sie dringend, sich mehr über die Zertifikatrichtlinien Ihrer Zertifizierungsstelle zu erkundigen. (Fühlen Sie sich frei zu überprüfen Die Richtlinien von SSL.com finden Sie hier, eigentlich.)

Vielen Dank, dass Sie sich für SSL.com entschieden haben Sicherheit Internet ist ein better Internet.

Abonnieren Sie den Newsletter von SSL.com

Verpassen Sie keine neuen Artikel und Updates von SSL.com

Bleiben Sie informiert und sicher

SSL.com ist ein weltweit führendes Unternehmen im Bereich Cybersicherheit, PKI und digitale Zertifikate. Melden Sie sich an, um die neuesten Branchennachrichten, Tipps und Produktankündigungen von zu erhalten SSL.com.

Wir würden uns über Ihr Feedback freuen

Nehmen Sie an unserer Umfrage teil und teilen Sie uns Ihre Meinung zu Ihrem letzten Kauf mit.