Suchen

Definition Was ist DNSSEC (Domain Name System Security Extensions)?

Aufgabe von DNSSEC ist es, für die Integrität und Authentizität der im Domain Name System übertragenen Daten zu sorgen. Das in mehreren RFCs standardisierte Verfahren sichert die Resource Records des DNS mit digitalen Zertifikaten ab. Das Funktionsprinzip der Domain Name System Security Extensions basiert auf privaten und öffentlichen Schlüsseln, mit denen DNS-Informationen signiert und geprüft werden.

Die wichtigsten IT-Fachbegriffe verständlich erklärt.
Die wichtigsten IT-Fachbegriffe verständlich erklärt.
(Bild: © aga7ta - stock.adobe.com)

DNSSEC ist die Abkürzung für Domain Name System Security Extensions, ein in mehreren Requests for Comments (RFCs) spezifizierter Standard für den Informationsaustausch im Domain Name System (DNS). Ziel von DNSSEC ist es, die Authentizität und die Integrität der im DNS übertragenen Informationen sicherzustellen. Nicht in den Domain Name System Security Extensions vorgesehen ist die Sicherstellung der Vertraulichkeit ausgetauschter Daten. Eine Verschlüsselung von DNS-Informationen findet nicht statt.

Die für die Domain Name System Security Extensions maßgeblichen Standards sind die RFCs 4033, 4034, 4035 und 5155. In diesen Standards ist die Erweiterung des DNS-Protokolls hinsichtlich der Authentizität und der Integrität beschrieben. Die DNS-Informationen werden mit digitalen Zertifikaten signiert. Das Prüfen und Signieren der DNS-Informationen basiert auf privaten und öffentlichen Schlüsseln und Konzepten der Public Key Infrastructure (PKI).

Durch die Nutzung der Domain Name System Security Extensions lässt sich verhindern, dass DNS-Daten manipuliert werden oder von anderen als den gewünschten Quellen stammen. Mithilfe privater Schlüssel findet das digitale Signieren der Resource Records statt. Empfänger prüfen die Signaturen mit den bereitgestellten öffentlichen Schlüsseln auf Echtheit.

DNSSEC funktioniert nur, wenn sowohl der Anbieter der DNS-Informationen als auch das anfragende Client-System das Verfahren implementiert haben und unterstützen. Eine bereits im Jahr 1999 im RFC 2535 veröffentlichte und mittlerweile obsolete erste Version der Domain Name System Security Extensions war aufgrund einiger Schwachstellen des Standards nicht sinnvoll einsetzbar. Die im Jahr 2005 veröffentlichen Nachfolge-RFCs beseitigten die Schwachstellen. Im Jahr 2010 startete im Internet die Einführung der Domain Name System Security Extensions auf Root-Ebene. Die Top-Level-Domains des Internets sind mittlerweile zum Großteil mit diesem Verfahren signiert.

Gründe für die Entwicklung und Standardisierung von DNSSEC

Das Domain Name System ist eine für das Internet unverzichtbare Komponente. Per DNS werden unter anderem die für die Kommunikation zwischen den Endsystemen benötigten IP-Adressen ermittelt. Hierfür liefert das Domain Name System die zu einem Domainnamen zugehörigen IP-Adresse. In den ursprünglichen DNS-Standards wurden Sicherheitsthemen wie Integrität und Authentizität der übertragenen DNS-Daten nicht berücksichtigt. Das Domain Name System tauscht Daten ungeschützt und unverschlüsselt als Textdaten aus. Mechanismen für das Signieren von Nachrichten waren nicht vorgesehen. Für den Empfänger einer Nachricht ist damit nicht eindeutig erkennbar, ob die Nachricht tatsächlich vom vorgegebenen Absender stammt oder ob Nachrichteninhalte manipuliert wurden.

Die Domain Name System Security Extensions schließen einige dieser Sicherheitsschwachstellen. Die DNS-Informationen sind mit kryptografischen Signaturen abgesichert. Der Empfänger einer DNS-Nachricht hat dadurch die Möglichkeit, die Daten auf Integrität und Authentizität zu prüfen. Die Vertraulichkeit der Daten ist durch DNSSEC weiterhin nicht gegeben, da keine Verschlüsselung der übertragenen Informationen vorgesehen ist.

Grundsätzliches Funktionsprinzip von DNSSEC

Versendet ein für eine per DNSSEC gesicherte Zone zuständiger DNS-Server einen Resource Record, signiert er ihn mit dem nur ihm bekannten privaten Schlüssel. Jede Zone hat ihre eigenen Zonenschlüssel. Zu jedem privaten Schlüssel existiert ein zugehöriger öffentlicher Schlüssel. In den RFCs der Domain Name System Security Extensions ist ein neuer Typ von Resource Record definiert. Er nennt sich RRSIG und löste im Jahr 2004 den vorherigen, fast identischen SIG Resource Record ab.

Im RRSIG ist die Signatur des DNS-Eintrags enthalten. Die Signatur hat eine bestimmte Gültigkeitsdauer und ist mit einen Anfangs- und Endzeitpunkt versehen. In den DNSSEC-Standards ist es vorgesehen, dass Resource Records mit verschiedenen privaten Schlüsseln mehrfach unterschrieben sein können. Dies ist beispielsweise notwendig, wenn Schlüssel zeitlich auslaufen und ein nahtloser Ersatz des ablaufenden Schlüssels erfolgen soll. Um die Signaturen der Resource Records zu prüfen, verwenden die Client-Systeme die allgemein bekannten öffentlichen Schlüssel der jeweiligen DNS-Zone. Nach einer erfolgreichen Verifikation der Signatur ist sichergestellt, dass die Antwort weder manipuliert ist noch von einem anderen Absender stammt.

Probleme, Grenzen und Schwachstellen von DNSSEC

Auch die Domain Name System Security Extensions sind nicht frei von Schwachstellen und Problemen. DNSSEC stellt lediglich die Authentizität und Integrität der DNS-Informationen sicher. Die Daten sind jedoch nach wie vor lesbar, da sie unverschlüsselt übertragen werden. Um für die Vertraulichkeit von DNS-Abfragen zu sorgen, ist es sinnvoll, die Verbindungen zusätzlich mit einen Verschlüsselungsprotokoll wie TLS (Transport Layer Security) abzusichern.

Eine Schwachstelle der Domain Name System Security Extensions ist, dass Denial-of-Service-Attacken auf DNS-Server eher noch erleichtert werden, da das Signieren der Resource Records eine erhöhte Last auf den Servern generiert. Ebenfalls als problematisch anzusehen ist die Verteilung der öffentlichen Schlüssel über das DNS-System selbst. Die Vertrauenskette (Chain of Trust) ist dadurch gefährdet. DNSSEC Walking beschreibt ein Problem, das das vollständige Auslesen des Inhalts von Zonen erlaubt.

(ID:46919640)

Über den Autor