Archiv für den Monat: Januar 2017

DNS-based Authentication of Named Entities (DANE)

DNS-based Authentication of Named Entities (DANE) bietet durch Erweiterung von TLS eine zusätzliche Überprüfbarkeit von Server-Zertifikaten. Dafür werden X.509-Zertifikate mit DNS-Einträgen verknüpft und per DNS-Security Extensions (DNSSEC) gesichert. Ziel von DANE ist die Überprüfbarkeit, ob das Server-Zertifikat tatsächlich auch zur gewünschten Domain gehört. Ursprünglich spielen bei TLS sogenannte Certificate Authorities (CA), auf Deutsch Zertifizierungsstellen, eine wichtige Rolle, da diese Zertifikate ausstellen und damit praktisch für die Vertrauenswürdigkeit der Gegenstelle bürgen. In der Vergangenheit hat sich aber immer wieder gezeigt, dass die CAs ihrer Aufgabe in einigen Fällen nicht nachkommen, oder Angreifer sich Zugriff auf die CA verschafft und einfach selbst Zertifikate ausgestellt haben. Mit DANE macht man sich nun unabhängig von den CAs, in dem jeder Nutzer direkt beim Domain-Inhaber das Zertifikat überprüfen kann und nicht mehr auf die Vertrauenswürdigkeit der Zertifizierungsstelle abhängig ist.

Funktionsweise

Der Server- bzw. Domainbetreiber hinterlegt bei DANE sein TLS-Zertifikat als TLSA-Eintrag im Domain Name System (in der DNS-Zone). Da nur der Betreiber sein Domain selbst verwalten kann, kann auch nur er den entsprechenden Fingerprint (Hashwert) des authentischen Zertifikats im DNS hinterlegen. Zur Überprüfung des Zertifikats wird nun nicht mehr die CA kontaktiert, sondern der DNS, wobei die Herausgabe des Fingerprints über DNSSEC erfolgt. Zusätzlich erhält der Client auch den öffentlichen Schlüssel. Über den öffentlichen Schlüssel kann der Client nun durch Berechnung eines eigenen Hashs und anschließendem Vergleich mit dem übertragenen Fingerprint die Authentizität des Servers feststellen.