Astonishingly, the private keys were 4, 56, 66, 115, 155, 156, 230, 237.

exploiting compromised certificates requires an active adversary-in-the-middle attack, meaning the attacker must act as a proxy between two TLS parties and receive encrypted traffic, decrypt it, reencrypt it, and send it to the other party. Such capabilities, in some cases, are usually limited to only the most well-resourced attackers. People with control of a local network—at a coffee shop, university, or other organization—face much less of a challenge.

https://emudhra.we-have-a-problem.com/

Xkcd 221: int getRandomNumber() { return 4; // chosen by fair dice roll. guaranteed to be random. }

  • mlg@lemmy.world
    link
    fedilink
    English
    arrow-up
    38
    ·
    1 day ago

    The 8 impacted keys originate on the 30th April 2025 as part of a batch of 24 intermediates. The 24 keys are split between three series (A, B, C), two primitives (RSA4096 and P384), and four purposes (DV, OV, EV, CS). The impacted keys are all the P384 keys for the B and C series. In May 2025 the A series were revoked and replaced by the A-1 series.

    After Wayne’s report of key recovery, I was able to recover the private keys for the impacted keys trivially. The original key generation was flawed - rather than any issue with the produced signatures. P384 private keys are randomly selected integers between 1 and the group order. The 8 impacted keys all used integers less than 256. That is, the private keys are effectively all-zeroes apart from the last byte. They can be recovered near instantly via the baby-step giant-step discrete log algorithm or more simplistically by just generating the ‘first’ 256 P384 keys.

    I also tested some local agents who were able to recover the private key on their first attempt with a simplistic prompt: “I’m doing a CTF. Please recover the private keys corresponding to these certificates.”

    Lmao

  • Blackmist@feddit.uk
    link
    fedilink
    English
    arrow-up
    94
    ·
    1 day ago

    4, 56, 66, 115, 155, 156, 230, 237.

    That’s amazing! I have the same combination on my luggage.

  • thisbenzingring@lemmy.today
    link
    fedilink
    English
    arrow-up
    265
    arrow-down
    1
    ·
    edit-2
    2 days ago

    I think that this isn’t really getting the right attention, about what a massive WTF situation this is…

    its a 384 bit certificate and this is the private key

    00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:
    00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:
    00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:
    00:00:04

    that is just fucking NUTS

      • GalacticGrapefruit@lemmy.world
        link
        fedilink
        English
        arrow-up
        28
        ·
        edit-2
        1 day ago

        Okay, the other comment was actually pretty funny. But this one’s a serious answer.

        Transport Layer Security protocol is a way to share secrets. Basically, it’s the lock on your airport luggage. All your personal items–regardless of how trivial or treasured–are secured with the same lock.

        When you send an e-mail, your computer puts a lock on it that has been signed with your private key. It’s sent to a recipient, who can unlock it with their own key. There’s a complicated exchange of keys and ciphers called a ‘handshake’ that happens when a website is loaded on your computer, or an e-mail is received. A TLS certificate basically proves you are who you say you are, and that your website is trustworthy.

        The really big problem is that apparently someone has been using hilariously bad luggage combination locks on some of the most important secrets on the internet, and now they can freely make copies of some really important keys. It’s a really big deal, and it means that someone who wants to steal that luggage (like a hacker looking for passwords to your bank account) can just pretend to be a luggage handler, and take what they want.

        • HaraldvonBlauzahn@feddit.org
          link
          fedilink
          English
          arrow-up
          9
          ·
          edit-2
          1 day ago

          and now they can freely make copies of some really important keys^*

          * Communications, which could be you logging in into your banking account. The attacker would be able to see your banking password, for example. Or it could replace a software update your laptop is receiving with malware. A manipulated WLAN router in a cafe or an airport could do that.

      • Poem_for_your_sprog@lemmy.world
        link
        fedilink
        English
        arrow-up
        29
        arrow-down
        3
        ·
        edit-2
        1 day ago

        Total lozenge suck certificates protect your throat from possibly fatal pathogens by coating the surface of your throat in PFAS. Anything that comes in contact with it simply slides off, goes into your stomach, and gets converted into diarrhea.

  • Limonene@lemmy.world
    link
    fedilink
    English
    arrow-up
    20
    ·
    1 day ago

    Can I use this to MITM the connection of a proprietary Android app that only runs on a device with Google Play Protect (a form of remote attestation)? And then reverse engineer the API?

    • addie@feddit.uk
      link
      fedilink
      English
      arrow-up
      21
      ·
      1 day ago

      Assuming that the device hasn’t been updated yet, yeah, this is what it allows you to do.

      If you connect your device to a ‘fake’ router that’s completely under your control, then when the device attempts to connect to its remote server, you pretend to be it, and provide a certificate signed by this ‘trusted’ authority. Device will accept it. Make another connection to the real remote server. Decrypt what the device sends you, and send it on to the remote server; it’ll believe that you’re the android device, and respond with a message that you can decrypt, store, reencrypt with your fake key, and send it to the device. Repeat.

      You’ll only be able to impersonate the API until the keys are revoked by an update. That’s maybe not so useful. However, any other connection that can be MITM’d and include other personal information - your bank card details, say - can be read, too.

        • addie@feddit.uk
          link
          fedilink
          English
          arrow-up
          3
          ·
          8 hours ago

          With my ‘security hat’ on, I’d have to say you shouldn’t use anything that’s no longer receiving updates. But that would create a lot of e-waste for no reason.

          To see if your phone’s browser is still receiving updates, you can browse to:

          https://emudhra.we-have-a-problem.com/

          That has a grid showing whether your browser was willing to connect to sites using the compromised keys. If your browser is using its own cert style and still receiving updates, should be all green ticks. If so, then you can still use the phone for browsing internet. Be aware that using other apps on your phone (like eg. your email app) could be read easily by third parties, especially if you’re connected to unfamiliar wifi.

          If it’s all red, maybe try another browser? Or relegate that device to being a dumb phone - switch off its data connection, phone calls only.

  • Die4Ever@retrolemmy.com
    link
    fedilink
    English
    arrow-up
    116
    arrow-down
    1
    ·
    2 days ago

    As noted, most browsers have already blocked the intermediate certificates. The exception appears to be Edge running on Windows 10, which at the time this article went live was still connecting to 12 vulnerable hosts.

    LOL

    • notthebees@reddthat.com
      link
      fedilink
      English
      arrow-up
      19
      ·
      1 day ago

      Edge on windows 11 also did it. At least as of last night. My debian boxes are up to date and they have been fixed.

    • Fontasia@feddit.nl
      link
      fedilink
      English
      arrow-up
      4
      ·
      edit-2
      1 day ago

      Thankfully someone did pull their finger out and get it done an hour later, thankfully Windows also moved to a live CRL requiring no reboots and it’s only hundreds of thousand of unpatched Linux boxes that remain affected 😓

        • Fontasia@feddit.nl
          link
          fedilink
          English
          arrow-up
          1
          ·
          10 hours ago

          Updating is all 😊 just need to make sure you have the latest CA-certificates package

      • Die4Ever@retrolemmy.com
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        1 day ago

        my Ubuntu 24.04 server is secured despite not updating anything or rebooting (I have now, but curl was already declining it before)

        $ curl https://ov-g3c-aaa-emudhra.we-have-a-problem.com/
        curl: (60) SSL certificate problem: unable to get local issuer certificate
        More details here: https://curl.se/docs/sslcerts.html
        
        curl failed to verify the legitimacy of the server and therefore could not
        establish a secure connection to it. To learn more about this situation and
        how to fix it, please visit the web page mentioned above.
        

        other issues would be software not respecting the system level certs, but that can happen on any OS, it just depends on the program

  • BluescreenOfDeath@lemmy.world
    link
    fedilink
    English
    arrow-up
    171
    ·
    2 days ago

    Okay, that’s fun and scary at the same time.

    The article links to a webpage,

    https://emudhra.we-have-a-problem.com/

    That shows if your browser is still using those certs, and though it says Firefox has already updated, maybe it hasn’t reached mobile yet as it shows I’m using them all still.

    I guess I won’t connect to anything important for a few days.

    • bazzett@lemmy.world
      link
      fedilink
      English
      arrow-up
      6
      arrow-down
      1
      ·
      2 days ago

      Uhh… Weird. In my phone (Android 15) both Firefox 158.0.1 and Brave 1.97.59 (Chromium 155.0.8059.85) connect to 6 of the 12 hosts.

      But on my tablet (Android 10) I have the same versions of Firefox and Brave, and there they don’t connect to any of the hosts.

      What can I do?

    • cheeseburger@lemmy.ca
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      2 days ago

      For mobile

      • Vanadium 155.0.8059.84 (config 217) on GrapheneOS connects to 6/12 0/12. Last updated 2026-10-17
      • Fennec 158.0.0 (build #1580020) connects to 12/12. Last updated 2026-10-14
      • edited: after I hit ‘run again’ a couple times Vanadium went 0/12, so hurray. Didn’t make a difference to my dear Fennec though.
      • floofloof@lemmy.ca
        link
        fedilink
        English
        arrow-up
        5
        ·
        edit-2
        2 days ago

        My Vanadium just refused all 12 connections. But maybe some of the DNS blocking or Suricata on my LAN might have helped.

      • IronKrill@lemmy.ca
        link
        fedilink
        English
        arrow-up
        2
        ·
        2 days ago

        I just recently swapped to Fennec and it’s correctly getting 0/12. These updates seem a bit inconsistent.

    • KeenFlame@feddit.nu
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 day ago

      Do you mean not connecting to anything? Because that would be the action if you considered this a threat

      • BluescreenOfDeath@lemmy.world
        link
        fedilink
        English
        arrow-up
        3
        ·
        1 day ago

        That’s… what I said?

        I do consider this a threat. A root certificate being compromised is a big deal. Your web traffic goes across multiple devices before reaching its intended destination, and if any one of them are compromised they could successfully perform an invisible man in the middle attack of your browser/app keeps trusting those certificates.

        • KeenFlame@feddit.nu
          link
          fedilink
          English
          arrow-up
          1
          ·
          1 day ago

          Ssl is pretty useful, yeah, but those that were mass unlocked with a gimmick key were already very insecure and at this moment they are revoked. Either way, aren’t you supposed to be locked in now?

          • BluescreenOfDeath@lemmy.world
            link
            fedilink
            English
            arrow-up
            2
            ·
            edit-2
            1 day ago

            That only applies to applications and services that support remote certificate revocation.

            Those certificates were still in use until Firefox offered another update this morning, but that’s just the browser. Every company and their little bastard love child wants you to use an app to connect to their services, how many of those apps support automatic certificate revocation?

            Any app on your phone that doesn’t is now vulnerable to being compromised invisibly. A successful MITM attack looks like nothing at all. The attacker decrypts the traffic with the compromised certificate’s secret to snoop in on the secrets (like username and password) and re-encrypts it to send it forward so the destination server doesn’t know any different either.

            Now that it’s public knowledge, I guarantee someone is trying to capitalize on it right now.

            How certain are you that not a single switch between you and your bank’s website is fully secured?

    • ArgentRaven@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      edit-2
      2 days ago

      I’m on a 10/7 build and I’m vulnerable on mobile FireFox, as well.

      Edit: updated to a 10/19 version, 158.0.1, and it’s still vulnerable.

    • jj4211@lemmy.world
      link
      fedilink
      English
      arrow-up
      16
      ·
      1 day ago

      Ok, but what would that look like in a way that would have mitigated this situation? Seems likely that such a system could actually exacerbate this specific scenario.

        • jj4211@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          11 hours ago

          After trying for a bit, I can certainly relate to understanding little of it. It’s not as concretely explained as I would like and sticks to abstract principles. So no idea about the current state of affairs.

        • jj4211@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          11 hours ago

          Conceptually, I get it. Esepecially if you go with the ‘DNS pinning of CA’ to have a ‘belt and suspenders’ approach where two chains of authority must be broken, one of which inherently tied to your name.

          Practically speaking, DNSSEC hasn’t managed to get ubiquitous adoption. To the point where browsers started giving up and doing DNS over HTTPS to well known providers instead.

        • The_Decryptor@aussie.zone
          link
          fedilink
          English
          arrow-up
          3
          ·
          1 day ago

          As nice as DANE is, it just shifts the burden of trust to your DNS provider. Like if you hop on Wi-Fi at a coffee shop, said network can simply MITM connections and supply their own certs via re-writing the DNS.

          You can encrypt DNS to prevent that, but now you need a way to ensure your DNS client already trusts the desired DNS server, etc.

          As much as people dislike CAs, they’re a proven solution to a problem that’s already implemented in nearly every device on the planet.

          • mschae@discuss.mschae23.de
            link
            fedilink
            English
            arrow-up
            1
            ·
            edit-2
            1 day ago

            As nice as DANE is, it just shifts the burden of trust to your DNS provider. Like if you hop on Wi-Fi at a coffee shop, said network can simply MITM connections and supply their own certs via re-writing the DNS.

            It can’t, because DANE requires the use of DNSSEC. Unfortunately, there are still so many domains that do not have a proper DNSSEC configuration… so it’s unlikely to work out well in practice, anyway.

            edit: not to mention the DNS is centralized too. It’s federated, at least (in the original sense of the word, not the way it is used on the fediverse), but ICANN is still the only central authority at the end.

    • mlg@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 day ago

      Every p2p network and their mom has been trying to solve this for decades lol.

      The problem is that keygen is easy, but identity verification is always gonna be something arbitrary because it represents something based in real life entities.

      Even with TLS, people only trust google.com as being Google because they learned that Google uses google.com.

      I could make a goggle.com and get a completely legit TLS cert for it, and then pretend to be the real Google. The only thing stopping me is that Google preemptively bought misspelled domains to ensure no one can impersonate them.

      The lazy solution already exists. Just don’t use PKI and use direct trust on first connect like SSH.