Zurück zum Blog

Folgen und abonnieren

So sorgen wir für eine bessere TLS Certification Authority

Shiloh Heurich

Staff Security Engineer mit Fokus auf angewandte Kryptographie, Public-Key-Infrastruktur und Produktentwicklung, Fastly

Wie bereits angekündigt</u>, ist Certainly</u>, Fastlys eigene TLS Certification Authority (CA), nun für alle Fastly Kunden verfügbar. Die Verwaltung von Zertifikaten kann sehr zeitaufwendig sein und unnötig Ressourcen beanspruchen. Mit Certainly von Fastly werden alle Ihre Anforderungen an die Zertifikatsverwaltung abgedeckt. Nebenher profitieren Sie von drei wesentlichen Vorteilen: erhöhte Sicherheit und geringeres Risiko (ohne Aufpreis!), vereinfachte und beschleunigte Zertifikatsverwaltung und zuverlässigerer Service und Support. In diesem Blogpost möchten wir uns eingehender mit den technischen Feinheiten und Entscheidungen befassen, die unserer CA zugrunde liegen.

Architektur: eine Festung für Ihre Zertifikate

Unsere Systemarchitektur beruht auf drei Hauptzielen: Zweckmäßigkeit, Redundanz und Sicherheit auf höchstem Niveau.

  • Zweckmäßigkeit: Jede einzelne Komponente unserer Architektur wurde speziell für die Abläufe der CA und unsere besonderen Bedürfnisse konzipiert – von den Serverracks bis hin zu den Doppelböden.

  • Redundanz: Unsere Infrastruktur ist auf mehrere Standorte verteilt. Dies gewährleistet nicht nur eine hohe Verfügbarkeit, sondern auch Ausfallsicherheit im Katastrophenfall. Egal ob küstennahe Naturkatastrophe oder ein räumlich beschränktes (Metropol-)Problem – unsere CA bleibt funktionsfähig. Dieses Maß an Redundanz erstreckt sich über den gesamten Stack, d. h. von den Stromversorgungs-, Kühlungs- und Feuerschutzsystemen über die Netzwerkinfrastruktur bis hin zu den Datenspeichern.

  • Sicherheit: Neben digitaler Sicherheit standen auch physische Sicherheitsmaßnahmen an erster Stelle. Zugangskontrollen, Überwachungs- und Einbruchserkennungssysteme sorgen dafür, dass unsere Standorte geschützt bleiben. Ein zentraler Bestandteil der CA-Integrität ist die Überprüfung durch mehrere Parteien, weshalb jeder, der physischen Zugang zum Rechenzentrum anfordert, von mehreren autorisierten Personen verifiziert werden muss. In sicherheitsempfindlichen Bereichen ist Einzelpersonen der Zutritt nicht gestattet.

Systeme: Automatisierung und kurzlebige Vorgänge

Unsere Systeme sind seit jeher auf Automatisierung ausgelegt. Manuelle Prozesse bergen Risiken, die wir minimieren wollen.

  • ACME: Die Schnittstelle zwischen Certainly und seinen Kunden bildet das in RFC 8555</u> spezifizierte Automated Certificate Management Environment (ACME). Das wiederum bedeutet, dass wir nur automatisierte Validierungsmethoden unterstützen.

  • Automatisierte Vorgänge: Jeder Prozess, von der Ausstellung von Zertifikaten bis hin zur Bereitstellung von Code, ist automatisiert. Dies verbessert nicht nur die Effizienz und Beständigkeit, sondern senkt auch die Fehlerquote. Unsere Systeme werden programmatisch unter Verwendung von Infrastructure-as-Code-Praktiken entwickelt, um präzise, wiederholbare Deployments und genaue Tests zu ermöglichen.

  • Kurzlebige Systeme: Gemäß modernen Sicherheitspraktiken sind unsere Systeme so konzipiert, dass sie selbstzerstörend und kurzlebig sind. Sowohl die Systeme als auch die Speicher werden in regelmäßigen Abständen rückstandslos gelöscht. Durch diesen Ansatz der Zustandslosigkeit wird die Möglichkeit, dass sich Bedrohungen in unseren Systemen festsetzen, drastisch reduziert. Allerdings gehen damit auch viele Herausforderungen einher, die wir in einem späteren Blogpost genauer untersuchen wollen.

Unser eigener Schlüssel zum Erfolg: die Root Signing Ceremony

Die Root Signing Ceremony ist ein wichtiger Gesichtspunkt der CA, denn sie begründet das Vertrauen. Unsere Zeremonie wurde akribisch geplant und durchgeführt.

  • Bausteine der Zeremonie:

    • Befehls-Skripte: Automatisierung war ein integraler Bestandteil unserer Zeremonie. Wichtige Aufgaben liefen nach Skript ab, um die Korrektheit der Befehle zu gewährleisten. Schließlich beugt die Minimierung des manuellen Tippaufwands einer Vielzahl von Fehlern vor. Anhand von kryptografisch signierten Ceremony Logs konnte die Integrität bei jedem Prozessschritt eindeutig nachgewiesen werden.

    • Abgesicherter Laptop: Während der Ceremony nutzten wir einen speziell präparierten Apple Laptop, auf dem eine sichere, schreibgeschützte Software installiert war und dem jegliche Hardwarekomponenten entfernt wurden, um möglichen Störungen von außen effektiv vorzubeugen.

    • Abschrift auf Papier: Jeder Schritt wurde auf Papier protokolliert, um Transparenz und Präzision zu gewähren.

  • Genutzte Software:

    • Ceremony Operating Environment (COEN): Wir haben COEN</u>, eine Software, die von der Internet Assigned Numbers Authority (IANA) abgeleitet wurde, als Grundlage für die Integrität der Datenverarbeitung verwendet. Der Einsatz reproduzierbarer Builds</u> sorgte dafür, dass unsere Software stabil und zuverlässig war. Ein einziges, in sich geschlossenes Systemabbild erhöhte die Sicherheit und Zuverlässigkeit noch weiter.

    • Tools: Unser Toolset umfasste Shell-Skripte und das Ceremony Tool</u> Boulder. Während der gesamten Zeremonie lag der Fokus auf Automatisierung, um das Risiko menschlicher Fehler auszuschließen.

Nächste Schritte

Die Möglichkeiten, die sich uns in Zukunft bieten werden, begeistern uns:

  • Multiperspektivische Validierung: Wir planen den Einsatz einer multiperspektivischen Domain-Validierung</u> für Fastlys Edge, die vor Angriffen auf Internet-Routing-Protokolle schützen und dadurch die Zuverlässigkeit unserer CA weiter erhöhen soll.

  • Revolutionäre Domain-Validierung: Im Zuge unseres Engagements für die Verbesserung der Web-PKI streben wir die Integration des aus dem jüngsten IETF-Entwurf</u> stammenden Challenge-Typs dns-account-01</u> an. Diese neue Methode wird es unseren Kundendomänen ermöglichen, die Validierung an mehrere Services abzugeben, indem pro Account ein Challenge-Label verwendet wird.

  • Variable Zertifikatsgültigkeit: Auf Grundlage der ACME Spezifikation arbeiten wir daran, variable Gültigkeitszeiträume für Zertifikate anzubieten. Dadurch werden Fastly Kunden eine noch kürzere Zertifikatslaufzeit als unsere ohnehin konkurrenzlose Standardlaufzeit von 30 Tagen auswählen und so ein ausgewogeneres Verhältnis zwischen Flexibilität und erhöhter TLS-Verbindungssicherheit erzielen können.

Die Entwicklung von Certainly war geprägt durch eine Mischung aus sorgfältiger Planung, modernster Technologie und einer Leidenschaft für Sicherheit und Zuverlässigkeit. Wir sind stolz auf unsere Leistung und freuen uns auf noch mehr Innovationen und Fortschritte in der Zukunft.