DNS: CAA Resource Record
Das Vertrauen in TLS und damit auch in HTTPS basiert für normalsterbliche Leute auf dem Vertrauen in die vielen Zertifizierungsstellen, die bei Betriebssystemen und Browsern vorkonfiguriert sind. Ein Sicherheitsproblem in auch nur einer Zertifizierungsstelle (CA) reicht, um das ganze System unsicher zu machen.
Motivation
Die Geschichte der CAs ist gespickt mit Fehlern. Nur wenige haben eine weiße Weste.
Ab September 2017 haben sich alle CAs selbstverpflichtet den Certification Authority Authorization (CAA) Resource Record (RR) bei der Ausstellung eines jeden Zertifikats zu prüfen.
CAA RR
Der CAA RR ist im RFC6844 beschrieben und definiert, dass man im DNS hinterlegen kann, welche CA einem ein Zertifikat ausstellen darf. Im Falle von Let's Encrypt sieht das z.B. wie folgt aus.
example.com. CAA 0 issue "letsencrypt.org" example.com. CAA 0 issuewild ";" example.com. CAA 0 iodef "mailto:bla@example.com"
Der Eintrag issue und issuewild beschreibt, welche CAs erlaubt sind. Da Let's Encrypt keine Wildcardzertifikate ausstellt, ist dies im Beispiel deaktiviert.
Mit iodef kann man eine URL oder Mailadresse spezifizieren, an die Verstoßversuche gemeldet werden sollen.
Anmerkungen
Qualys SSL Server Test prüft seit neustem auch diesen Record, ein Punktabzug ist mir nicht bekannt.
Es gibt einen CAA RR Generator für die großen CAs, über das Critical Flag, welches im Beispiel 0 ist, sollte man sich aber noch weiter informieren, bevor man das einfach auf 0 setzt.
Fazit
Ich bin gespannt, inwiefern dies hilft. Überzeugt bin ich erst, wenn zehn Jahre am Stück kein CA-Problem mehr auftritt. Das ganze CA-Konzept erachte ich als inherent unsicher und gehört überholt.
DNSSEC und Fingerprints der benutzten selbsterzeugten Zertifikate drin ablegen und schon wäre man den CA-Wasserkopf los;
Kommentare
Thomas am :
Thomas Heidrich am :