Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
Security Encryption The Internet

Let's Encrypt Discovers CAA Bug, Must Revoke Customer Certificates (arstechnica.com) 66

rufey writes: The free SSL certificate provider Let's Encrypt is going to revoke 2.6% of the SSL certs issued by them that are currently active, due to a bug in boulder, the Certificate Authority Authorization (CAA) software Let's Encrypt uses. Ars Technica reports: "Let's Encrypt uses Certificate Authority software called Boulder. Typically, a Web server that services many separate domain names and uses Let's Encrypt to secure them receives a single LE certificate that covers all domain names used by the server rather than a separate cert for each individual domain. The bug LE discovered is that, rather than checking each domain name separately for valid CAA records authorizing that domain to be renewed by that server, Boulder would check a single one of the domains on that server n times (where n is the number of LE-serviced domains on that server). Let's Encrypt typically considers domain validation results good for 30 days from the time of validation -- but CAA records specifically must be checked no more than eight hours prior to certificate issuance. The upshot is that a 30-day window is presented in which certificates might be issued to a particular Web server by Let's Encrypt despite the presence of CAA records in DNS that would prohibit that issuance.

Since Let's Encrypt finds itself in the unenviable position of possibly having issued certificates that it should not have, it is revoking all current certificates that might not have had proper CAA record checking on Wednesday, March 4. Users whose certificates are scheduled to be revoked will need to manually force-renewal before then. If an admin does not perform this manual renewal step, browsers reaching their websites will show TLS security warnings due to the revoked certificates. Let's Encrypt certificates are issued for 90-day intervals, and Certbot automatically renews them only when 30 days or less are left on the cert -- so this could mean roughly two months of browser errors if the manual forced renewal isn't performed."

The CAB Forum, which oversees the public CAA space, has a ticket for this specific issue.
According to a community post on Let's Encrypt's website, 3,048,289 of the ~116 million overall active Let's Encrypt certificates are affected.
This discussion has been archived. No new comments can be posted.

Let's Encrypt Discovers CAA Bug, Must Revoke Customer Certificates

Comments Filter:
  • I have a recollection that when I first started using LetsEncrypt, it issued a certificate for a name that I owned, but was not on that server.

    For most people, this is a trivial issue. I just manually ran the script that normally runs monthly under cron and got all new certs.

    • >For most people, this is a trivial issue. I just manually ran the script that normally runs monthly under cron and got all new certs.

      Usually the monthly script just runs certbot renew. The e-mail they sent me implied that it's necessary to run certbot renew --force-renewal, suggesting that what you did might not work!

      Check your website's certificate and make sure it's valid starting today...

      • Just checked. Validity starts March 3.

        Thanks for the warning.

        • >Just checked. Validity starts March 3.

          >Thanks for the warning.

          Sure. According to TFM, the difference is that without the --force-renew, the behavior is:

          Renew all previously obtained certificates that are near expiry

          So I think you got lucky.

          • Some were renewed earlier this week. I know this because the renewal failed over the weekend because the server was down and I manually renewed on Monday.

    • by Burdell ( 228580 )

      It was a little extra work for me, as I didn't want to force-renew all my certs. To make cert management and monitoring easier, we have a single VM with certbot and our local scripts (to handle validation and deployment to other servers). With nearly 200 certs on it, I didn't want to force-renew them all! The notification email listed the affected certs, which only ended up being 4 certs for us.

      • Why not? If there are 200 you should have a script to run through them all anyways and it should be a single command to force update them all.

        • by Burdell ( 228580 )

          Mainly because it can take 1-2 minutes per cert, so it would have taken hours. I didn't see the notification email until late afternoon, which was only a couple of hours before the could have started revoking certs, so a full renewal might not have hit the actually affected certs before then.

          Right now, they're fairly spread out over the normal 60 day window of renewals; renew them all at once, and they'll continue to all renew at once (meaning that cron job would also take hours every time), unless I did a

    • by jrumney ( 197329 )

      They recommend in the documentation that you run your cron job twice a day. I have mine in cron.daily, and my certs check out OK, despite a couple of them seeming to fit the profile that would trigger this bug, with multiple domains included in the single certificate.

  • by sizzlinkitty ( 1199479 ) on Tuesday March 03, 2020 @09:11PM (#59794678)

    The link for letsencrypt is wrong in the article, it maps to .com and it should be .org.

  • by kbahey ( 102895 ) on Tuesday March 03, 2020 @09:30PM (#59794728) Homepage

    This was discussed on our local LUG's mailing list today.

    What is in the article does not apply to all Lets Encrypt certificates, nor all multi-domain certificates.

    It is only a subset that is affected.

    You can check yours as follows:


    curl -XPOST -d 'fqdn=google.com' https://unboundtest.com/caapro... [unboundtest.com]

    Of course replace google.com with your domain.

    • by jrumney ( 197329 ) on Tuesday March 03, 2020 @10:39PM (#59794942)

      Note: unboundtest.com does not handle IPv6. If you have servers that are only contactable via IPv6, it is unable to fetch the certificate for checking.

    • by UPi ( 137083 ) on Wednesday March 04, 2020 @03:37AM (#59795374) Homepage

      Despite this hiccup, I can't begin to cover how much good the letsencrypt project has done for system administrators and the internet ecosystem at large. Providing simple and automated ways to prove ownership of your domain and issuing your certificate in seconds makes the process painless for site owners and safe for visitors. I used other providers before, both free and paid, and none of them approached the level of convenience and ease of use of letsencrypt and certbot.

      I have two certificates to renew this morning, but it doesn't even matter because I can do so with issuing one simple command, and the rest just happens. So THANK YOU, Let's Encrypt and ISRG. You've done so much for us.

      • by tlhIngan ( 30335 )

        Yes. I'm sure paypaI.com, bankfoamerica.com and others are definitely very happy for Let's Encrypt providing lots of free phishing certificates and in an automated easy fashion, at that.

        • by bn-7bc ( 909819 )
          Well iirc you need to either tun certbot on their servere, or be in control of their dns to get a certificate issued, and if hackers get that far you might have more serious issues yhan someone geting a cert for your domain
        • Free certificates where available before Let's Encrypt. And those CAs were known to not properly test requests and don't react or react very slowly when cases of misused certificates surfaced.

          So Let's Encrypt didn't open up new avenues for scammers, but did it's part to get more traffic encrypted, which is A Good Thing (TM).

          • by AmiMoJo ( 196126 )

            Let's Encrypt also developed a way for servers to auto-update their certificates, paving the way for reducing certificate lifetime to a year or less. The shorter the lifetime the less possibility of abuse from things like stolen certs or failure to properly check for expired certs.

      • by kbahey ( 102895 )

        Despite this hiccup, I can't begin to cover how much good the letsencrypt project has done for system administrators and the internet ecosystem at large. Providing simple and automated ways to prove ownership of your domain and issuing your certificate in seconds makes the process painless for site owners and safe for visitors. I used other providers before, both free and paid, and none of them approached the level of convenience and ease of use of letsencrypt and certbot.

        I have two certificates to renew th

    • by skids ( 119237 )

      Do we have an estimate of the number of affected certs? I'm guessing this'll be an interesting test of how well CRL/OCSP cystems hold up under large volume.

  • Goes to show how little testing anyone does that no one picked this up.
    • by JcMorin ( 930466 )
      They should just ignore it and wait for next 90 days with auto renew. We don't even know if a single certificate was issue and should not have been. Who setup this: - Multiple domain on the same server, all binded and verifiabled. - The goes to setup at least one of those to NOT be issue by lets encrypt - Then request via letsencrypt a certificate for all the domaines. I means, they will probably cause thousands of sites (millions?) to stop working for a situation that doesn't exist in reality.
      • Unfortunately we do know that there are at least 400 domain names that probably should not have been issued a certificate to, because the current CAA record forbids issuance. See https://bugzilla.mozilla.org/s... [mozilla.org]
        • by amorsen ( 7485 )

          A good number of them are mistakes. I see stuff like ""letsencrypt.org"" with double-double-quotes in that output, or spaces or special characters accidentally added.

          I wonder what the story is behind the rest.

    • by rta ( 559125 )

      But let's force everyone to use certs work 3 day expiration.

      Only Luddite boomers don't use Let's Encrypt and automate their cert renewal process to run automatically and with no human intervention every ten minutes!

      ^-- that's been the jist of every story involving certs or Let's Encrypt for a year plus. Most recently a few days ago with the one about Safari refusing certs with validity longer than two years.

      If one of the legacy CA's messed up like this the platforms would all untrust all their certs... see

    • Goes to show how little testing anyone does that no one picked this up.

      Yeah I know right. Testing catches 100% of all bugs. Everyone knows that.

      idiot.

  • Did they warn the Canadian Automobile Association about it?

  • So, if they can revoke certs, what is the point of their extremely short 3 month duration? I thought the whole point of that was that revoking was too hard, and so they just did it by not refreshing the cert after the 3 months.

On the eighth day, God created FORTRAN.

Working...