Ihre PKI Design und Zertifikatsrichtlinien wirken sich auf die Sicherheit Ihres Netzwerks und Ihrer Geräte insgesamt aus. Sie sollten Ihre PKI so konzipieren und implementieren, dass typische Gefahren abgewehrt werden, ähnlich wie Sie dafür sorgen würden, dass Ihr Haus ein erdbebensicheres Fundament oder ein hurrikansicheres Dach hat.
Viele dieser Entscheidungen müssen im Voraus getroffen werden, während des Designs und der Entwicklung Ihrer Software oder Ihres Produkts. Obwohl die Implementierung der erforderlichen Sicherheitsmaßnahmen in Ihrer PKI mit Aufwand verbunden ist, können Sie durch die erforderlichen Vorkehrungen zukünftige Sicherheitsbedenken reduzieren.
Denken Sie darüber nach: Welches Sicherheitsrisiko würde ein kompromittiertes Zertifikat in Ihrem Netzwerk darstellen? Könnte ein Server über die Authentifizierung des Zertifikats aufgerufen werden? Könnte es gegen Ihre Benutzer verwendet werden in einem Man-in-the-Middle-Angriff?
Bei der Entwicklung eines Programms oder Geräts, das Zertifikate zur Authentifizierung oder sicheren Kommunikation nutzt, sollten diese Fragen sorgfältig bedacht werden. Es müssen technische Entscheidungen darüber getroffen werden, wie Ihr Produkt mit Zertifikaten umgeht und wie Ihre PKI gestaltet und verwaltet wird.
Dieser Artikel richtet sich an Designer und Produzenten, die mit privaten Client- oder Gerätezertifikaten arbeiten, wie sie in Software oder Internet der Dinge (IoT) Geräte.
Erstellen einer PKI mit dauerhafter Sicherheit
Wir sprechen häufig mit Entwicklern, die ihre Alternativen zur Erstellung von PKI- und Zertifikatsrichtlinien nicht kennen. Mit einer privaten PKI haben Sie bei Ihren Client- und Gerätezertifikaten viel Flexibilität und können so die Sicherheit Ihres Programms oder Geräts erhöhen.
Wir gehen detailliert auf drei entscheidende Faktoren ein, die Sie bei der Verbesserung Ihrer PKI berücksichtigen sollten. Die ersten drei Themen sind die Wahl der Gültigkeitsdauer und des Ersatzes von Zertifikaten, der Schutz privater Schlüssel und die Nutzung des Zertifikatssperrungsmechanismus – sowie die effektive Nutzung dieser Kontrollen zur Risikominimierung.
Obwohl Zertifikate Authentifizierung und Verschlüsselung, ihre Verwendung ist nicht so einfach, wie sie einfach zu installieren und fertig. Beide Eigenschaften können gefährdet sein, aber mit den richtigen Maßnahmen können sie auch gestärkt werden.
Die einfachste Lösung könnte darin bestehen, eine minderwertige PKI einzurichten und sich nie um die Verwaltung Ihrer Zertifikate zu kümmern. Dies birgt jedoch Sicherheitsrisiken, an die Sie möglicherweise nicht gedacht haben.
Nehmen wir als Beispiel die jüngste Abschaffung von SHA-1. Forscher waren sich der Schwäche des SHA-1-Hashing-Verfahrens bewusst, das für die Erstellung kryptografischer Signaturen zur eindeutigen Identifizierung von Zertifikaten entwickelt wurde. Letztes Jahr zeigte Google bei einer realen Kollision zwei unterschiedliche Dateien mit demselben Hash.
Der SHA-1-Algorithmus wurde durch diese Kollision praktisch außer Gefecht gesetzt, und viele Zertifikate wurden durch den sichereren SHA-2-Algorithmus ersetzt, um die Sicherheit aufrechtzuerhalten. Auch langlebige Zertifikate waren betroffen, die mit der Zeit immer anfälliger wurden (steigende Rechenleistung erleichtert deren Ausnutzung). Auch wenn eine SHA-1-Kollision derzeit unmöglich erscheint, wie sieht es in fünf Jahren aus? In 20 Jahren? Dies sind wichtige Faktoren, die Sie berücksichtigen sollten, wenn Ihre Produkte über einen längeren Zeitraum genutzt werden.
Die Komplexität der PKI-Sicherheit lässt sich anhand dieses einfachen Beispiels schnell verdeutlichen. Sie benötigen eine Technik zum Neuausstellen und Ersetzen von Zertifikaten auf Ihren Geräten, einen Widerrufsmechanismus für nachweislich kompromittierte Zertifikate und die Gewissheit, dass Ihr Netzwerk und Ihre Benutzer nicht länger gefährdet sind, um die Sicherheitsrisiken eines fehlerhaften Hash-Algorithmus zu reduzieren.
Gültigkeit eines Zertifikats
Im SSL / TLS Im Bereich der Sicherheit sind kompromittierte Technologien ein unvermeidliches Problem. Die grundlegenden kryptografischen Technologien des Protokolls werden mit einem Verfallsdatum entwickelt, da wir davon ausgehen, dass künftige, stärkere Computer ihre Sicherheit möglicherweise gefährden.
In den letzten zehn Jahren gab es erhebliche Veränderungen, wie beispielsweise die Abkehr von den Hash-Algorithmen MD5 und SHA-1 und die Umstellung auf 2048 Bit. Irgendwann werden uns die 2048-Bit-Schlüssel ausgehen und wir müssen sie ersetzen. Mit einem Plan ist es viel einfacher, mit diesen Veränderungen umzugehen.
Bei der Festlegung der Gültigkeitsdauer Ihrer Zertifikate müssen Sie die Vorteile eines langlebigen Zertifikats gegen den Aufwand für den Schutz langlebiger Schlüssel abwägen. Der Schutz dieser Schlüssel wird mit der Zeit schwieriger, da sich Verschlüsselungsstandards verschlechtern, ersetzt werden und Ihre Zertifikatssammlung wächst. Ein fehlerhafter Algorithmus kann schließlich den dringenden Austausch von Zertifikaten zur Gewährleistung nachhaltiger Sicherheit erforderlich machen, wie im Fall unseres SHA-1-Beispiels.
Es ist wichtig, sowohl das Ablaufdatum als auch den Prozess zum Ersetzen Ihrer Zertifizierungen zu berücksichtigen. Wir haben festgestellt, dass die Verwendung eines einzigen Zertifikats über die gesamte Lebensdauer des Geräts hinweg in den meisten Fällen zu viele Sicherheitskompromisse mit sich bringt.
Durch die Wahl längerer Gültigkeitsdauern können Sie eine größere Vielfalt an Zertifikaten (und zugehörigen privaten Schlüsseln) erstellen, die sicher aufbewahrt werden müssen. Da ihnen dadurch längerer Zugriff gewährt wird, erweitert sich die Anzahl der Angriffsziele für Angreifer und motiviert sie, ein Zertifikat zu kompromittieren. Dies wiederum macht ein Sperrsystem wichtiger und erfordert die längere Aufbewahrung von Sperrdaten, was zu größeren Sperrdateien und erhöhter Netzwerkaktivität führt.
Für eine sichere PKI ist es jedoch nicht erforderlich, Zertifikate jährlich zu ändern. Langlebige Zertifikate können weiterhin verwendet werden, während diese Änderungen effektiv geplant werden. Beim Ersetzen und Erneuern von Gerätezertifikaten können Sie die für Sie optimale Gültigkeitsdauer wählen, ohne befürchten zu müssen, dass Sie sie in Zukunft ersetzen müssen.
Private Schlüssel sicher aufbewahren
Bei der Schlüsselkompromittierung gibt es viele der gleichen Sicherheitsfaktoren wie bei der Zertifikatsgültigkeit. Angreifer können ein Gerät nachahmen, Daten entschlüsseln und lesen und sich bei einem Netzwerk authentifizieren, wenn sie einen privaten Schlüssel erhalten.
Um echte Authentifizierung und Verschlüsselung zu gewährleisten, müssen Schlüssel vor Kompromittierung geschützt, widerrufen und ersetzt werden. Daher ist es keine gute Idee, Schlüssel im Klartext auf einem Gerät zu speichern, wo sie leicht extrahiert werden könnten. Denken Sie stattdessen über eine Hardware-Abwehr wie einen sicheren Chip (TPM) oder eine Software-Lösung wie einen verschlüsselten Schlüsselspeicher nach, die echten Schutz vor Angreifern bietet.
Auch wenn Sie der Meinung sind, dass Ihre Schlüssel ausreichend geschützt sind, ist ein funktionierendes Sperrsystem unerlässlich. Angreifer könnten nach einer Möglichkeit suchen, Ihre Sicherheitsmaßnahmen zu umgehen, wenn sie feststellen, dass es keine praktische Möglichkeit gibt, sie beim Diebstahl eines Schlüssels aufzuhalten. Eine zusätzliche Verteidigungslinie, der sogenannte Sperrmechanismus, dient dazu, Eindringlinge zu neutralisieren und abzuschrecken.
Diese Barrieren haben vieles gemeinsam. Ein zuverlässiges Widerrufssystem – eines, das eine hohe Widerrufsrate bewältigen kann – wird umso wichtiger und teurer, wenn Ihre Schlüssel leicht zu kompromittieren sind.
Widerruf
Da die Zertifikatssperrung ein kostenintensiver Dienst ist, der eine aktive Internetverbindung und hohe Verfügbarkeit erfordert, glauben viele Hersteller und Entwickler, dass sie ihn nicht unterstützen können. Das ist jedoch nicht der Fall. Sie können Sperrinformationen mithilfe branchenüblicher Technologie überprüfen, ohne eine Verbindung zu einem Server herzustellen oder das Internet zu nutzen.
CRL (Zertifikatsperrlisten) und OCSP sind zwei in der Wirtschaft weit verbreitete Technologien zur Überprüfung von Sperrinformationen (Online Certificate Status Protocol). Eine CRL ist vergleichbar mit einer Sperrliste mit Seriennummern für Zertifikate für Personen, die mit diesen Systemen nicht vertraut sind. Mit OCSP sendet der Client eine Anfrage über das Internet an einen zentralen Dienst, um den Status der Sperrung eines bestimmten Zertifikats zu erfahren – ähnlich wie beim Aufruf einer API. Das X.509-Zertifikatprotokoll umfasst sowohl das CRL- als auch das OCSP-Protokoll.
Die einfachere Option, CRL, bietet Ihnen Flexibilität in Situationen, in denen Ihr Gerät möglicherweise keine zuverlässige oder schnelle Internetverbindung hat. Traditionell signiert die ausstellende Zertifizierungsstelle täglich eine CRL-Datei, auf die der Client online zugreifen kann. Die CRL kann jedoch zwischengespeichert und gespeichert werden, wenn das Gerät nicht schnell oder regelmäßig eine Verbindung zum Internet herstellen kann.
CRLs sind signiert und haben, genau wie Zertifikate, eine Gültigkeitsdauer. CRLs sind zuverlässig, da sie von der Zertifizierungsstelle signiert sind. Eine CRL muss nicht direkt von der Zertifizierungsstelle an das Gerät gesendet werden. Stattdessen können sie über ein Netzwerk, beispielsweise ein internes Netzwerk oder einen zentralen Cloud-Server, verteilt werden. Dies bietet Vorteile gegenüber einer einfachen Blacklist oder Whitelist. Wenn eine CRL-Datei eine gültige Signatur aufweist, können Sie sie von jedem Ort herunterladen, ohne sich um Manipulationen sorgen zu müssen.
Wenn eine Sperrliste (CRL) abläuft, was mehrere Wochen oder länger dauern kann, kann sie auf einem Gerät zwischengespeichert und bis dahin verwendet werden. Daher eignet sie sich für Geräte mit lückenhafter oder unzuverlässiger Internetverbindung. So können Sie die Vorteile der Sperrprüfung in vielen Situationen nutzen, ohne den technischen Aufwand für die wiederholte Datenbeschaffung zu betreiben.
Sofern die Geräte Zugriff auf ein entsprechendes Gateway oder einen entsprechenden Server haben, kann OCSP auch dann eingesetzt werden, wenn die Geräte selbst nicht mit dem Internet verbunden sind. Die Sperrinformationen können dank einer optionalen OCSP-Funktion namens „Stapling“ während des TLS-Handshakes übertragen werden, was die Netzwerkleistung verbessert. Sowohl OCSP als auch CRLs können implementiert werden, wobei die aktuellste CRL als Backup dient.
Ein Vorteil ist, dass eine kommerzielle Zertifizierungsstelle bereits einen dieser Standardansätze unterstützt. Es handelt sich um flexible Standards, die an Ihre individuellen Bedürfnisse angepasst werden können, da sie eine breite Palette an Möglichkeiten unterstützen.
Fazit
Alle diese Vorsichtsmaßnahmen dienen der Risikominimierung und -kontrolle. Angreifer haben es weniger auf gut geschützte Schlüssel abgesehen, insbesondere auf solche, die leicht widerrufen und ersetzt werden können.
Ihre Entscheidungen zur Zertifikatsrichtlinie und zum PKI-Design hängen eng zusammen. Stellen Sie sich eine Situation vor, in der das Widerrufssystem sehr schnell ist, die privaten Schlüssel jedoch im Klartext auf dem Gerät gespeichert sind. Diese Schlüssel könnten leicht kompromittiert werden, und Sie müssten Ihre Zertifikate widerrufen, sobald Sie neue ausgestellt haben. Wenn Ihre privaten Schlüssel hingegen gut geschützt sind, es aber keine wirksame Möglichkeit gibt, einen Hackerangriff zu melden, ist Ihr System ebenfalls gefährdet.
Eine solide Sicherheitsgrundlage für Ihre Geräte und Ihr Netzwerk wird durch die Schaffung einer robusten PKI die die technischen Anforderungen Ihres Produkts berücksichtigt. Wenn Sie jetzt einfach die laxesten Richtlinien auswählen, kann dies später zu großen technischen Schwierigkeiten führen.
