In einer modernen vernetzten Welt ist die vertrauliche Übermittlung von Nachrichten im Unternehmensumfeld essentiell für geschäftlichen Erfolg. Trotz ihres Alters ist die E-Mail weiterhin aus der modernen Unternehmenskommunikation nicht wegzudenken. Ihre Nutzung hat sich im Lauf der Jahrzehnte allerdings deutlich gewandelt.
So ist es heutzutage üblich, geschäftliche E-Mails auch auf mobilen Endgeräten wie Smartphones und Tablets lesen und schreiben zu können. Solche Endgeräte werden üblicherweise mittels Mobile Device Management (MDM) Systemen wie Microsoft Intune verwaltet.
Für die Veschlüsselung von E-Mail Nachrichten verwenden Unternehmen üblicherweise den Secure / Multipurpose Internet Message Extensions (S/MIME) Standard und stellen ihren Benutzern hierfür entsprechende Zertifikate zur Verfügung. Wie kommen diese nun in skalierbarer Weise auf die Endgeräte der Benutzer?
Grundlagen
Kennen Sie TameMyCerts? TameMyCerts ist ein Add-On für die Microsoft Zertifizierungsstelle (Active Directory Certificate Services). Es erweitert die Funktion der Zertifizierungsstelle und ermöglicht die Anwendung von Regelwerken, um die sichere Automatisierung von Zertifikat-Ausstellungen zu realisieren. TameMyCerts ist einzigartig im Microsoft-Ökosystem, hat sich bereits in unzähligen Unternehmen auf der ganzen Welt bewährt und steht unter einer freien Lizenz. Es kann über GitHub heruntergeladen und kostenlos verwendet werden. Professionelle Wartung wird ebenfalls angeboten.
Der nachfolgend beschriebene Prozess verwendet exzessiv die Grundkonzepte der Public Key Infrastruktur (PKI). Zum Verständnis sollte der Leser somit die Grundlagen von Public Key Infrastrukturen (PKI) verinnerlicht haben.
Die wichtigsten Aspekte ist nachfolgend kurz zusammengefasst:
PKI basiert auf dem Konzept der asymmetrischen Kryptographie. Hierbei werden immer zueinander gehörende Schlüsselpaare (genannt öffentlicher und privater Schlüssel) eingesetzt. Die Grundidee ist, dass der eine Schlüssel das entschlüsseln kann, was der andere verschlüsselt hat.
Funktionsweise von S/MIME
- Bei der Ausstellung des S/MIME Zertifikats hat die Zertifizierungsstelle dieses (und somit den öffentlichen Schlüssel des Benutzers) in dessen Benutzerobjekt im Active Directory angehängt. Dieses Attribut wird in die globale Adressliste (GAL) von Microsoft Exchange (und/oder Office 365) übertragen.
- Der Absender (Bob) fragt nun das S/MIME Zertifikat (den öffentlichen Schlüssel) des Empfängers (Alice) in der globalen Adressliste an.
- Mittels des öffentlichen Schlüssels des Empfängers verschlüsselt der Absender die Nachricht und sendet diese anschließend an den Empfänger.
- Der Empfänger der Nachricht ist nun in der Lage, die Nachricht mithilfe seines privaten Schlüssels zu entschlüsseln.
Werden S/MIME Zertifikate zur Verschlüsselung von E-Mails eingesetzt, muss (im Gegensatz zu reinen Signatur-Zertifikaten) somit auf jedem Endgerät der gleiche private Schlüssel vorliegen.
Viele Zertifikate und Schlüssel im Spiel
Im nachfolgenden Prozess kommen sehr viele Zertifikate und Schlüsselpaare zum Einsatz, daher soll nachfolgende Übersicht für ein wenig Klarheit sorgen:
Zertifikat/Schlüssel | Beschreibung |
---|---|
S/MIME Zertifikat (des Benutzers) | Ermöglicht dem Benutzer, verschlüsselte E-Mails zu entschlüsseln. Dieses Zertifikat soll per Intune auf sein verwaltetes Endgerät gebracht werden. |
Zertifizierungsstellen-Austausch-Zertifikat | Wird für die Transportverschlüsselung bei der Archivierung des privaten Schlüssels des S/MIME Zertifikats verwendet. |
Schlüsselwiederherstellungs-Agenten-(Key Recovery Agent, KRA) Zertifikat | Wird für die Archivierung des privaten Schlüssels des S/MIME Zertifikats in der Zertifizierungsstellen-Datenbank verwendet. Beim Archivieren wird der öffentliche Schlüssel verwendet, beim Wiederherstellen der private. |
Schlüsselpaar (oder Zertifikat) für Intune Zertifikatimport (Kunden-Schlüssel) | Wird verwendet, um die Passwörter der S/MIME Zertifikate im PKCS#12 Format vor Upload zu Intune zu verschlüsseln und für die Verwendung auf verwalteten Endgeräten umzuschlüsseln. Somit ist gewährleistet, dass Intune keine Kenntnis über die Passwörter und entsprechend keinen Zugriff auf die privaten Schlüssel der S/MIME Zertifikate der Benutzer hat. |
Geräte-Schlüssel (Geräte-Schlüssel) | Ein Schlüsselpaar, welchem es dem verwalteten Endgerät ermöglicht verschlüsselte Daten zu erhalten und zu entschlüsseln. Der öffentliche Schlüssel wird beim registrieren des Gerätes in Intune an Intune übertragen. |
Wie das Zertifikat auf das mobile Endgerät gelangt
Nachfolgend wird der Prozess mit einem "PKCS imported certificate profile" beschrieben. Dieser Weg soll sicherstellen, dass Intune und somit auch dessen Betreiber keine Kenntnis über die privaten Schlüssel der Benutzer erlangen können.
Aktuell scheint Intune das einzige Mobile Device Management zu sein, welche s einen entsprechenden Schutz vor sich selbst anbietet. Andere MDM wie beispielsweise VMware Workspace One sind je nach Verteilart alle Passwörter der PKCS#12-Dateien bekannt.
Beantragung des S/MIME Zertifikats und Archivierung des privaten Schlüssels
Der hier aufgezeigte Weg der Archivierung von privaten Schlüsseln ist der "klassische" Weg, wie ihn Microsoft einst vorgesehen hat. In modernen Unternehmens-Umgebungen ist nicht sichergestellt, dass jeder Benutzer einen regulären Desktopcomputer mit Active Directory-Mitgliedschaft besitzt. Somit kann es auch Szenarien geben, in welchen die privaten Schlüssel für S/MIME Zertifikate zentral generiert werden. Der Weg für die Bereitstellung in Intune ist prinzipiell aber der gleiche.
- Der Benutzer beantragt von einem Windows-Computer aus ein S/MIME Zertifikat. Üblicherweise erfolgt dies per Autoenrollment. Ist die Archivierung privater Schlüssel aktiviert, wird im Zuge der Zertifikatbeantragung der private Schlüssel mit an die Zertifizierungsstelle übertragen (für die Transportverschlüsselung kommt das Zertifikat für Zertifizierungsstellen-Austausch der Zertifizierungsstelle zum Einsatz).
- Die Zertifizierungsstelle verschlüsselt nach Ausstellung des S/MIME Zertifikats nun den erhaltenen privaten Schlüssel des Benutzers mit einem oder mehreren Schlüsselwiederherstellungs-Agenten-Zertifikaten (engl. Key Recovery Agent), genauer gesagt mit deren öffentlichen Schlüsseln.
Übertragen der privaten Schlüssel nach Intune
- Über eine zielgerichtete Abfrage gegen die Zertifizierungsstellen-Datenbank wird das S/MIME Zertifikat und der dazugehörige private Schlüssel abgefragt.
- Der verschlüsselte private Schlüssel des Benutzers wird mit dem privaten Schlüssel des zugehörigen Schlüsselwiederherstellungs-Agenten-Zertifikats entschlüsselt und in eine PKCS#12 Datei exportiert (auch bekannt als PFX oder P12). Die PKCS#12 Datei enthält das S/MIME Zertifikat des Benutzers und den dazugehörigen privaten Schlüssel und ist mit einem Passwort geschützt.
- Die PKCS#12 Datei wird nun mit dem Intune PFXImport PowerShell Modul nach Intune hochgeladen. Das Passwort der PKCS#12 Datei wird hierbei mit dem öffentlichen Schlüssel für den Intune-Zertifikatimport (Kunden-Schlüssel) verschlüsselt, bevor es zu Intune gesendet wird. Auf diese Weise ist sichergestellt, dass Intune keine Kenntnis über das Passwort und somit den privaten Schlüssel des Benutzers erhalten kann.
Import des S/MIME Zertifikats auf das Endgerät
- Beim Registrieren des Endgerätes in Intune übermittelt das verwaltete Endgerät dessen öffentlichen Schlüssel an Intune.
- Intune kontaktiert den Intune Certificate Connector beim Kunden. Von Intune an den Intune Certificate Connector übertragen wird die PKCS#12 Datei des Benutzers, das dazugehörige verschlüsselte Passwort sowie der öffentliche Schlüssel des Endgerätes.
- Der Intune Certificate Connector entschlüsselt das Passwort der PKCS#12 Datei mit dem vorhandenen privaten Schlüssel für den Intune-Zertifikatimport (Kunden-Schlüssel) und verschlüsselt es nun mit dem von Intune erhaltenen öffentlichen Schlüssel des Endgerätes.
- Das Ergebnis wird nun wieder zurück an Intune übertragen.
- Intune überträgt nun die PKCS#12-Datei und das mit dem öffentlichen Geräteschlüssel verschlüsselte Passwort an das verwaltete Endgerät.
- Das verwaltete Endgerät kann nun mit seinem privaten Geräte-Schlüssel die erhaltenen Daten entschlüsseln und die PKCS#12 Datei importieren. Das verwaltete Endgerät des Benutzers ist jetzt im Besitz dessen S/MIME Zertifikats und des dazugehörigen privaten Schlüssels.
Anmerkungen
- Die Kommunikation zwischen dem Intune Certificate Connector und Intune wird immer vom Intune Certificate Connector ausgelöst, dieser kann auf diesem Wege aber logisch von Intune kontaktiert werden.
- Gleiches gilt für die Kommunikation zwischen den verwalteten Endgerät und Intune.
- Bei Android- oder Windows-Endgeräten sowie iOS Endgeräten, die nicht die Apple-eigene Mail-App verwenden, wird nur das Passwort umgeschlüsselt. Auf iOS mit der nativen Mail App wird die gesamte PFX-Datei umgeschlüsselt. Dies ist durch die bei Apple verwendete Sicherheitsarchitektur begründet, welche keinen Zugriff von Drittanbietern auf die Apple-Keychain erlaubt.
- Der Intune Certificate Connector kann nicht verifizieren, ob das verwaltete Endgerät bekannt ist oder der ihm vorgezeigte öffentliche Geräte-Schlüssel zum entsprechenden Endgerät, geschweige denn zum Besitzer des S/MIME Zertifikats gehört.
Effektiv hat Intune somit zwar keine direkte Kenntnis über die Schlüssel der Benutzer, jedoch könnte dieser Umstand theoretisch für einen Man-in-the-Middle Angriff durch die Intune-Betreiber ausgenutzt werden, indem dieser einen beliebigen Schlüssel in die Kommunikationskette einbringt, zu dem ihm der private Schlüssel vorliegt.
Konkrete Umsetzung
Weiterführende Links:
- S/MIME mit der Outlook App für Apple IOS und Android nur mit über Intune verwalteten Geräten möglich
- Grundlagen Public Key Infrastrukturen (PKI)
- Grundlagen manuelle und automatische Zertifikatbeantragung über Lightweight Directory Access Protocol (LDAP) und Remote Procedure Call / Distributed Common Object Model (RPC/DCOM)
Externe Quellen
- Configure and use imported PKCS certificates with Intune (Microsoft Corporation)
- RFC 8551 – Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 4.0 Message Specification (Internet Engineering Task Force, IETF)
Ein Gedanke zu „Übertragen von S/MIME Zertifikaten zu Microsoft Intune“
Kommentare sind geschlossen.