Samstag, 31. Juli 2010 |
Wie Clients in einer Public-Key-Infrastruktur (PKI, siehe About Security #83) sicher E-Mails miteinander austauschen können, erfahren Sie in dieser Folge. Werfen wir zuerst einen Blick darauf, was die Clients haben und können: Jeder Mitarbeiter, der ein Zertifikat benötigt, hat eine Smartcard mit seinem Zertifikat bekommen. Parallel wurden die betroffenen Arbeitsplätze mit Smartcard-Lesegeräten bzw. Tastaturen mit integrierten Lesegeräten ausgerüstet. Die Mitarbeiter sind dadurch in der Lage, nach Installation entsprechender Software empfangene Nachrichten mit ihrem privaten Schlüssel zu entschlüsseln und eigene Nachrichten damit zu signieren. Die öffentlichen Schlüssel ihrer Kommunikationspartner können sie aus dem LDAP-Verzeichnis abfragen, um dann deren Signatur zu prüfen bzw. ihnen eine verschlüsselte Nachricht zu senden. Das Problem ist also nur noch die 'entsprechende Software'. In der Bratkartoffel KG hat man sich für den Einsatz von S/MIME für den Schutz der E-Mail-Kommunikation entschieden.
N E U ! Security
aktuell
Täglich aktuelle Security-Infos!
S/MIME (Secure/Multipurpose Internet Mail Extensions) ist keine eigenständige Software, sondern ein Standard zur Public-Key-Verschlüsselung und -Signatur von in MIME kodierten E-Mails. MIME (Multipurpose Internet Mail Extensions) ist ein Internetstandard, der E-Mails um die Unterstützung anderer Zeichensätze als US-ASCII in Header und Body, binäre Anhänge und mehrteilige Nachrichten-Bodies erweitert. MIME wird in den RFCs 2045 bis 2049 standardisiert. S/MIME wird von der IETF-Arbeitsgruppe 'S/MIME Mail Security (smime)' standardisiert, eine Liste der zugehörigen RFCs befindet sich auf der Webseite. Z.B. wird das Zertifikat-Handling in RFC 3850 definiert, das Nachrichtenformat in RFC 3851.
Der Vorteil von S/MIME ist, dass dieser Standard von vielen Mailprogrammen bereits von Haus aus unterstützt wird. Der Installationsaufwand hält sich dadurch in Grenzen, da in der Anfangsphase außer der sowieso notwendigen Installation des Smartcard-Lesers nur die benötigten Zertifikate in den vorhandenen Programmen installiert und die Programme entsprechend konfiguriert werden müssen. Dabei wird auch gleich der LDAP-Server eingebunden, sodass benötigte Zertifikate ggf. automatisch abgefragt werden können.
S/MIME definiert verschiedene Schutzfunktionen. E-Mails können auf zwei Arten signiert werden: Bei 'clear signed' E-Mails befindet sich die Signatur im Anhang der E-Mail, der Text kann dadurch auch von Programmen, die S/MIME nicht unterstützen, angezeigt werden. Bei 'opaque signed' E-Mails werden Text und Signatur gemeinsam BASE64-kodiert, sodass nur S/MIME-fähige Programme den lesbaren Text ausgeben können. Dies darf aber nicht mit einer Verschlüsselung verwechselt werden, diese ist ggf. zusätzlich durchzuführen. Dabei ergeben sich die 'enveloped data'. Diese E-Mails bestehen aus dem mit einem symmetrischen Verfahren verschlüsselten Text und dem für einen oder mehrere Empfänger asymmetrisch verschlüsselten symmetrischen Schlüssel. Evtl. vorhandene Anhänge der Mail werden ebenfalls verschlüsselt. Verschlüsselte signierte E-Mails werden als 'signed and enveloped data' übertragen.
S/MIME sendet bei signierten Mails den öffentlichen Schlüssel immer mit, das Mailprogramm des Empfängers kann ihn somit direkt in seinen Schlüsselbund aufnehmen. Vertraut der Benutzer der ausstellenden CA, kann er den Schlüssel danach sofort verwenden. Im Fall der Bratkartoffel KG betrifft dies hauptsächlich externe Kommunikationspartner, da die Schlüssel der Mitarbeiter ja aus dem LDAP-Verzeichnis bezogen werden können. Ein Nachteil von S/MIME ist, dass jedes Programm eine eigene Schlüsselverwaltung besitzt. Benutzer mehrerer Mailprogramme müssen also ggf. in einem Programm bereits vorliegende Schlüssel in einem anderen Programm vor der Nutzung erst importieren.
Ein Vorteil von S/MIME ist dessen gute Integration in viele Mailprogramme, die die Einführung erleichtert. Auch ist der Betrieb nicht vom Vorhandensein passender Plug-ins oder Zusatzprogramme abhängig.
Ein Problem von S/MIME ergibt sich aus dessen Verwendung eines hierarchischen Zertifizierungssystems: Eine geschützte Kommunikation mit Partnern, die eine andere PKI verwenden, z.B. Mitarbeitern anderer Unternehmen, ist schwierig. Entweder müssen sich die beteiligten CAs gegenseitig zertifizieren bzw. von einer gemeinsamen übergeordneten CA zertifiziert sein, oder die Benutzer müssen den einzelnen Zertifikaten jeweils manuell ihr Vertrauen aussprechen. Würde GnuPG/PGP verwendet, könnten einzelne Benutzer bei Bedarf und gegebener Möglichkeit untereinander ihre Schlüssel signieren und so eine Verbindung zwischen den lokalen Web-of-Trusts ihrer Unternehmen aufbauen. Allerdings hat das Problem auch einen Vorteil: Bei passenden Voraussetzungen (insbesondere bei zueinander passenden Zertifizierungsrichtlinien) können sich die CAs verschiedener Unternehmen gegenseitig zertifizieren, wodurch alle Mitarbeiter der beteiligten Unternehmen die Zertifikate aller anderen Mitarbeiter prüfen können.
Ein weiteres Problem entsteht dadurch, das S/MIME eine Ende-zu-Ende-Verschlüsselung herstellt. Schadprogramme wie Viren, Trojaner usw. in einer verschlüsselten Mail können von Virenscannern am Gateway oder im Mailserver nicht erkannt werden. Dies ist jedoch kein S/MIME-spezifisches Problem, sondern gilt für jede Ende-zu-Ende-Verschlüsselung, z.B. auch die HTTPS-Verbindungen des Webbrowsers. Auf die Lösung dieses generellen Problems wird in einem zukünftigen About Security eingegangen. Ein Lösungsansatz für verschlüsselte E-Mails besteht darin, die E-Mails nach dem Entschlüsseln auf den Clients auf Schadprogramme zu untersuchen.
In der nächsten Folge geht es um eine weitere Anwendung einer PKI: Sicheres Einloggen mit Single Sign-On.
Wenn Sie Fragen oder Themenvorschläge haben, können Sie diese gerne an die angegebene E-Mail-Adresse senden oder im Security-Forum einbringen!
About Security – Übersicht zum aktuellen Thema "Kryptographie – Anwendungen"