Let's Encrypt now supports ACME-CAA: closing the DV loophole
By Hugo Landau, 2022-12-17
-
https://www.devever.net/~hl/acme-caa-live
"Today, Let's Encrypt announced that they are enabling an extension
to DNS CAA records known as ACME-CAA (RFC 8657). This came as a
surprise to me, but a very pleasant one, since I wrote the ACME-CAA
specification back in 2016 with Let's Encrypt in mind, and it was
finally published as RFC 8657 back in 2019. To my knowledge, this
is the first production deployment of ACME-CAA, so I'd like to take
this opportunity to introduce people to ACME-CAA and why they might
want to use it.
The purpose of SSL certificates is, ultimately, to mitigate
man-in-the-middle attacks on connections between a browser and a
website. Thus, when you request a SSL certificate for a website
from a CA such as Let's Encrypt, that CA must take steps to ensure
you are the legitimate owner of the domain in question.
The CA industry has largely settled on a model of charging money
based on the degree of verification performed. The cheapest kind of
certificate is a "Domain Validation" (DV) certificate, free in the
case of Let's Encrypt. (While there are more expensive certificates
such as "Extended Validation" (EV), these are basically pointless
because even if you go through the process of paying a lot more
money for an EV certificate, browsers will still accept a DV
certificate, so a MitM attacker still only needs to successfully
obtain a DV certificate to pull off a MitM attack successfully.)
DV. So, how does "Domain Validation" work? In general, it involves
the CA generating some kind of random challenge string, and then
requiring you to make it available at your domain, for example via
HTTP or a DNS TXT record. If you can successfully host the
challenge string at your domain, presumably you have control over
the domain, and are thus the legitimate operator of the domain.
Except, when this Domain Validation is performed, you don't have a
certificate yet. That's why you're going through the process in the
first place: to get a certificate. Which means that when the CA
verifies that your domain is correctly hosting the challenge, it
does so via ordinary, unencrypted HTTP... which can be trivially
subject to man-in-the-middle attacks." ...
--
__ __
#_ < |\| |< _#
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)