EMudhra Intermediate CA Compromise (emudhra.we-have-a-problem.com)

475 points by galadran 7 hours ago

eqvinox 5 hours ago

Since I haven't seen this mentioned enough yet:

The private key for all 8 "compromised" CAs is a single byte: https://mastodon.catgirl.cloud/@49016/117474217042191790

One of the private keys is literally "4".

I'm putting "compromised" in quotes here, because I can't call it that without cringing and cursing.

[cf. also: https://news.ycombinator.com/item?id=50169109]

saidnooneever an hour ago

I BET this is an error code. they wanted to generate some key via something and it errors and put error code 4 as key and since encryption is dumb and people are people, no one looked at the key material.

edit: The reported private scalars were 4, 56, 66, 115, 155, 156, 230, 237 across the eight certificates so its unlikely i will win my bet :'D

QuiEgo 40 minutes ago

More than that, they claim the key was in an HSM, so they likely could not look at it.

saidnooneever 15 minutes ago

artk42 an hour ago

That was a blasting key generation ceremony.

BonoboIO 36 minutes ago

That could be wining numbers for a lottery

lionkor 6 minutes ago

Maybe somewhere in the code it says

    key_string = to_string(*key);
instead of

    key_string = to_string(key);

ROllerozxa 4 hours ago

Is this real? This seems so ridiculous it makes me wonder for how long this CA has been in circulation in systems and if it has been exploited by someone previously discovering it in that time (state level actor or not). My old phone running Android 6 does not have any certificate from EMudhra, at the very least.

hbcdbff 4 hours ago

Almost certainly noticed and quietly exploited by a state actor

woodruffw 4 hours ago

saidnooneever an hour ago

rollulus 4 hours ago

kccqzy 3 hours ago

themulticaster 4 hours ago

Apparently they've only been included in early October https://www.mail-archive.com/dev-security-policy@mozilla.org...

ROllerozxa 3 hours ago

sreekanth850 3 hours ago

its well-known , we took certificates from them for our company. its due for renewal, iam pausing this for now.

sippingabonedry 4 hours ago

I believe these intermediates chained up to a third party root.

eqvinox 4 hours ago

q3k 4 hours ago

It's real.

oasisbob 3 hours ago

More details in the now-public bugzilla issue:

https://bugzilla.mozilla.org/show_bug.cgi?id=2083449

eqvinox 3 hours ago

> Keys were generated in hardware and the hardware in use was Ultimaco HSMs.

The plot thickens.

Broken HSM? Misconfiguration? Confusion? Straight up lie?

> Excel attached. The Ultimaco devices were used to generate the ECC, RSA key pairs for the issuers. They were not used to generate any other key material. But it doesnt look like the device is at fault.

> We have done some preliminary assessment, there appears to be a flaw in the KGC script that was used on that specific day to create these ECC issuers. As for these ECC keys, our review of the KGC, assessment of the code and view of HSM keys so far indicate that a) a set of original ECC keys were created onboard as expected b) an approved deviation to our usual KGC to test a wrap/unwrap was introduced as these keys were meant for export for this instance c) a flaw in the code resulted in the second pair of keys being created onboard which were weaker d) these second pair of weaker keys were used by mistake to create the csr (because the key labels were similar) and signed by our root e) the CSR from these weaker keys were also sent over to Sectigo for cross signing (we verified the files sent over to Sectigo)

…

sippingabonedry 2 hours ago

q3k 3 hours ago

shellcromancer an hour ago

What a change a month makes. Public discussion on eMudhra getting their own root CA inclusion ended and Mozilla had them slated for approval.

https://bugzilla.mozilla.org/show_bug.cgi?id=1889859

hypfer 3 hours ago

> "The CRL's were signed with the original private keys (which were supposed to be the correct keys with appropriate entropy) but given that this resulted in incorrect signatures, they were resigned with flawed keys."

Ah yes.

"The system says something is wrong, but it's also 4.30PM. Let's just re-sign the thing and go home."

Good luck recovering from this.

sippingabonedry 3 hours ago

> The other two certificates are for codesigning and trusted by Microsoft

That seems like a WAY bigger problem than TLS, but AFAIK Windows still validates code signing certs against CRLs before trusting them (can't remember if it soft-fails).

msm_ 3 hours ago

sippingabonedry 3 hours ago

> One of the private keys is literally "4"

https://i.sstatic.net/Y3zE3.gif

gwittel 4 hours ago

Yikes. I’d have to wonder if this CA should even be trusted ever again?

AlotOfReading 4 hours ago

Definitely not. Their CPS requires that these keys be generated by an HSM and no HSM would ever generate these, so there's little reason to believe they're following any of their other controls.

jthoward64 3 hours ago

somat 2 hours ago

wolvoleo 38 minutes ago

Yeah IMO they should just close up shop. Just like Diginotar.

They had one job, and they blew it. The system is based on trust and they've lost it.

I'm going to remove their roots from all my stuff in any case.

red-iron-pine 4 hours ago

it should not

Dragory 2 hours ago

Anyone have a mirror for the first link? It served me a page assumedly intended for AI scrapers and then promptly blocked me when I refreshed a few times.

kylepomykala 4 hours ago

I am shocked that one of the private keys was literally “4”. Anyone could have broken into this. I really hope there is an industry-wide effort to stop things like this in the future.... but I doubt it.

eqvinox 4 hours ago

There is a variety of projects and researchers scanning for weak keys; possibly that's how this was found (haven't seen anything on that). These certs existed for a year and a half; that's bad but could be worse still.

One of the issues with sub-CAs (well, X509 certs in general) is that they can be ghosts in that there's no way you'll ever get it as a response on a TLS connection, so automated scanners on that won't find it.

CT should cover this (i.e. expose the cert so you can check for weak keys), but I have no idea if/how CT works for sub-CAs. [ed.: see below, doesn't seem to be in CT]

[ed.: these are technically sub-CAs, but rather cross-signed for bootstrapping a new root CA. Thanks @agwa for pointing that out.]

tialaramex 4 hours ago

interroboink 4 hours ago

crossroadsguy 2 hours ago

True randomness respected.

sophacles 3 hours ago

Of all the things... i never expected there to be an XKCD for this: https://xkcd.com/221/

rep_lodsb 4 hours ago

chosen by fair dice roll, no doubt

tanseydavid 4 hours ago

https://xkcd.com/221/

Given that 4 is the value shown in this well known XKCD panel, it almost seems like a (im)practical joke or trolling.

rolandog 2 hours ago

> One of the private keys is literally "4".

Oh no, they reverse engineered the random number generator!

[0]: https://xkcd.com/221/

jeffbee 4 hours ago

4 is as likely as any other randomly chosen number over a given range.

tomjakubowski 3 hours ago

Well, all eight of the compromised certificates had keys which were < 256. So a really poor choice of range.

mystifyingpoi 2 hours ago

poizan42 4 hours ago

They used the xkcd PRNG: https://xkcd.com/221/

galadran 7 hours ago

The impact of this incident is very unevenly spread.

Over 10 years ago, Mozilla shipped OneCRL [1]. We remediated this incident in a couple of hours for Firefox users who were protected automatically without the need for updates. Chrome, Apple and Microsoft have similar tooling. Since then, we've built more advanced tooling to handle revocation at scale for leaf certs (CRLite [2]).

However, for the rest of the ecosystem, there has been little to no investment in revocation and for those clients, this is a massive problem. Hopefully, we'll see folks invest now. Efforts like upki [3] look promising.

[1] https://blog.mozilla.org/security/2015/03/03/revoking-interm...

[2] https://hacks.mozilla.org/2025/08/crlite-fast-private-and-co...

[3] https://github.com/rustls/upki

crote 6 hours ago

Firefox Mobile 158.0 on Android 17 (Pixel 7) connects to all the demo sites with zero warnings. Any idea why the "automatic protection without updates" doesn't seem to be working with that combination?

eigenform 6 hours ago

Pixel 10 with 158.0.1 still connects to the emSign ones, even though the patch notes for 158.0.1 mention that it updates the CRL for those without 'Remote Improvements' enabled?

edit: Disabling all the eMudhra CAs in Android settings does nothing, cool?

edit: I guess there's no way to manually ask for CRL update, cool??

edit: Gave up and reinstalled Firefox. Seems to be fine now.

NamTaf 3 hours ago

crote an hour ago

Update: properly blocked now. Seems like it takes a few hours (days?) for the CRL update to propagate.

paulv 5 hours ago

I am seeing the same thing in the beta app (159.0b4) on an identical device. The sites are blocked correctly in Chrome.

roomey 6 hours ago

I'm on the same Firefox version on android and they are blocked now

nairboon 4 hours ago

dochtman 7 hours ago

More on upki:

https://discourse.ubuntu.com/t/an-update-on-upki/77063

My interest in building OneCRL support into upki has definitely increased this week. Issue:

https://github.com/rustls/upki/issues/229

I'm hoping some organizations will step forward to fund work on this.

(Note that curl on Ubuntu 26.10 now has CRLite support baked via upki -- unfortunately that doesn't help with this because AIUI CRLite is only for end entities, not for intermediate certificates.)

divingdragon 4 hours ago

It's very inconsistent for me even on just Firefox. On multiple systems running different instances of Firefox, checking with https://emudhra.we-have-a-problem.com/:

One blocks everything; one blocks 6 out of 12; one blocks the other 6 out of 12; one blocks nothing.

account42 7 hours ago

You mean the response was uneven. The impact was a complete and total potential compromise of literally everyone. Every domain. Every client using one of the public root programs. Every user of those clients.

tptacek 6 hours ago

I mean, it's an emergency, but the acute severity is debatable; many times a month the major browsers quietly deal with vulnerabilities that yield attackers direct control of victim computers; here, attackers get the ability to spoof websites if they're in a position to hijack connections.

The middlebox situation, with non-updatable roots, is very annoying. But middleboxes also have unfixable RCEs, so...

It's totally fair to evaluate different projects by how well positioned they are to update their WebPKI trust anchors. I'm just saying, keep perspective.

account42 6 hours ago

hypfer 6 hours ago

quotemstr 6 hours ago

You mean you and Chrome stopped supporting normal CRLs and OCSP, replacing (for normal users) these distributed-trust technologies with central lists controlled by browsers

bawolff 3 hours ago

There is a good reason they did. CRL and especially OCSP are both terrible and not particularly effective

sippingabonedry 6 hours ago

Here's a question for Mozilla et. al.:

It's cute you have a magic DIY CRL. You accepted these assholes into your root program.

They lost the KEYS.

What is the screening process for CA's that can't be bothered to use a HSM?

Even Honest Achmed wasn't this careless.

john_strinlai 5 hours ago

>What is the screening process for CA's

it's done in the open, and you're even allowed to voice your cute opinion during the multi-week public commentary periods.

here is an overview https://wiki.mozilla.org/CA/Root_Inclusion_Overview

eqvinox 5 hours ago

They didn't lose the keys, a sub-CA did.

Which is to say, sub-CAs in itself are a giant loophole that needs plugging. Especially since AFAIK nobody is bothering with name constraints (RFC5280 section 4.2.1.10).

agwa 4 hours ago

woodruffw 5 hours ago

sippingabonedry 5 hours ago

bombcar 6 hours ago

IIRC up until very recently the screening process was "they report that they're good boys."

jcranmer 5 hours ago

tech234a 3 hours ago

Explanation from eMudhra in the Mozilla bug report https://bugzilla.mozilla.org/show_bug.cgi?id=2083449:

> We have done some preliminary assessment, there appears to be a flaw in the KGC script that was used on that specific day to create these ECC issuers. As for these ECC keys, our review of the KGC, assessment of the code and view of HSM keys so far indicate that a) a set of original ECC keys were created onboard as expected b) an approved deviation to our usual KGC to test a wrap/unwrap was introduced as these keys were meant for export for this instance c) a flaw in the code resulted in the second pair of keys being created onboard which were weaker d) these second pair of weaker keys were used by mistake to create the csr (because the key labels were similar) and signed by our root e) the CSR from these weaker keys were also sent over to Sectigo for cross signing (we verified the files sent over to Sectigo)

They don't blame the HSM.

Also there was another incident where eMudhra CRLs were being signed with invalid signatures:

> The CRL's were signed with the original private keys (which were supposed to be the correct keys with appropriate entropy) but given that this resulted in incorrect signatures, they were resigned with flawed keys.

oasisbob 3 hours ago

> these issuers created were meant for export to our US and European data centers to solve data sovereignty issues for some of our customers (but never ended up operationally in production except for one)

This bit sets my hair on fire. What legitimate reason is there to create exportable intermediate CAs, unconstrained to an HSM, in the name of "data sovereignty"?

waz0wski 3 hours ago

India has state-mandated spying on network traffic (69B & Telecom Act 2023) so as dumb as this looks, it's possible this could've been purposeful

tptacek 3 hours ago

tech234a 3 hours ago

Additionally, from the Mozilla researcher verifying the compromise:

> 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."

hypfer 6 hours ago

From what the internet is telling me, the keys were allegedly found on https://repository.emsign.com/certs/<redacted>.crt

Which, if true, is definitely a lot of fun.

Hope you people are ready for lots and lots of suddenly hackable IoT.

__

Edit: I might also be misinterpreting what I am seeing and it's actually weak logic that created the keys, in the sense that one could guess the private key?

Someone actually qualified please give credible answers. I'm just pretending.

baby_souffle 5 hours ago

> Hope you people are ready for lots and lots of suddenly hackable IoT.

I was not expecting to find a silver lining _this bright_ but you have a point.

rollulus 4 hours ago

I think you’re right. And since the intermediate certs expire around 2039 and the private keys are known, we have plenty of smooth MitM fun against IoT in front of us.

oasisbob 5 hours ago

Source? That would be an incredible blunder, but that also appears to be the kind of URL one would expect to find certs at.

hypfer 5 hours ago

oasisbob 3 hours ago

bombcar 5 hours ago

That's actually a good point - tons of IoT is "secure enough" to sign things, but not secure enough to bother pinning anything ...

Also who hasn't left their private keys hanging around web-accessible, eh? lol

q3k 5 hours ago

https://chaos.social/@fluepke/117474156947559280

Private keys can be trivially recovered from the public keys because they're tiny. I found D=156, flüpke found D=4.

Yes, that's the entire private key.

john_strinlai 5 hours ago

all of them:

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

lamonade 3 hours ago

I set up a server that responds with a certificate to any host you request. You can use it to see if curl accepts the certificate or not.

curl https://example.org --connect-to example.org::2.29.126.86:

kccqzy 3 hours ago

Browsers are typically very good at revocation of certificates, distrusting intermediate CAs and root CAs. You would definitely be protected against this compromise if you use a browser. Command line tools less so. Try this curl one liner

    curl https://q3k.google.com --resolve 'q3k.google.com:443:135.181.235.221'
If curl returns a response, it means it trusted a fake certificate that allowed this random server at 135.181.235.221 to impersonate google.

Thanks to mastodon user q3k@hackerspace.pl.

baggy_trough an hour ago

Safari and Edge on macOS still vulnerable as of this writing.

lukeschlather 4 hours ago

This seems like an AI-generated summary and it leaves some obvious questions unanswered.

This thread (linked by the page) seems like a better source: https://groups.google.com/a/mozilla.org/g/dev-security-polic...

Ian Carroll notes:

> I think it's worth noting that this compromise is much worse than the private keys simply being stolen by a researcher. They are inherently weak single-byte keys that anyone can factor, and the issue cannot be contained.

jinseokim 2 hours ago

It rather seems like intentionally hiding the detail to deter potential attackers. Not very good strategy in AI era though.

kccqzy 3 hours ago

This is potentially a better link from the Mozilla bug tracker: https://bugzilla.mozilla.org/show_bug.cgi?id=2083449

ChoosesBarbecue 3 hours ago

The Mozilla rep who created that thread (not the reporter, to be clear), created https://emudhra.we-have-a-problem.com/, so I suspect that this page is better for general public disclosure.

With that being said, that Bugzilla is the best thread to understand "how the fuck did this happen?"

dochtman 7 hours ago

Running Go? Upgrade to 1.27.3 or 1.26.10.

Rust with rustls? Upgrade to rustls-webpki 0.103.16 and/or webpki-roots/webpki-root-certs 1.0.10.

Python? Upgrade certifi to 2026.10.19.

Homebrew ca-certificates? 2026-09-25_1.

Electron? 44.9.1, 43.8.1, or 42.11.16.

justincormack 5 hours ago

The Go and Rustls upgrades specifically block the intermediate certs because neither of these use the system revocation lists, I believe. Once you upgrade to a trust store without the root cert for the CA this will also solve the issue. Not sure about other ecosystems.

TheSilva 6 hours ago

Windows? Upgrade to Linux.

agwa 6 hours ago

Linux - the platform which offers no ability to revoke an intermediate certificate, thus necessitating every certificate library to implement its own blocking?

Windows is already blocking the compromised CAs as of today with no need for users to upgrade anything.

stonogo 6 hours ago

wolvoleo an hour ago

I wonder three things:

- Could this be used to run a benign mitm attack on the traffic of some apps, consoles etc? I could see some interesting uses for reverse engineering. For example you can't simply add a CA to the system store on Android anymore. But this one is already there. It won't work for long but it could be used on any unpatched client.

- Can't we just revoke the entire CA? Just like what was done with Diginotar. Edit: apparently they just revoked the intermediates.

- Why isn't there a mechanism where a domain owner can specify which CA it allows? Similar to SPF which allows you to specify which mail server can represent you. It's kinda insane that foreign CAs can just fake anyone's certificate.

pizzafeelsright an hour ago

foreign CAs can just fake anyone's certificate

They are certificates of authority. They have authority, or are given it, and that means don't accept them.

QuiEgo 37 minutes ago

I assume every state level actor is now quietly trying the first few hundred million private keys possible or so just to see what root ca or issuing ca key pairs match.

nneonneo 2 hours ago

> 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.

Yeah that’s just oof. Not hard to imagine the kind of code error that could cause this, but hard to imagine that any serious vendor of cryptography hardware or software could make a mistake like this.

wood_spirit 4 hours ago

Also on front HN page is https://kaba.cx/posts/20261020_Tor/ on how 300 tor exit nodes were compromised.

In that case it was ssh sessions being intercepted.

But my question is if a tor exit node or a vpn provider or your internet provider has a private key to any CA then can they mitm any normal web traffic even though it will show up as https without warnings in your browser?

basilikum 3 hours ago

Yes.

navigate8310 2 hours ago

Some websites still using the revoked roots: https://privatebin.net/?cbaaf3a2eae7a2ff#JE3iPaf8Mek91YbFymM...

Particularly concerning is India's UIDAI https://lea.uidai.gov.in/

denysvitali an hour ago

If you can see this, you're affected. Update your system trust store immediately.

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

ben_pfaff 3 hours ago

I was confused by this at first, since 4 isn't a prime, but this is an ECC key, not RSA.

deoxykev 3 hours ago

Seems like the root cause here was human error during EMudhra's key generation ceremony process.

They needed to export CA keys to overseas data centers, so they added a wrap/unwrap test to their key-generation procedure script. Somehow that generated a second set of weak (test?) keys from the CryptoServer Se-Series Gen2 HSM.

Then somebody fucked up and accidentally used those weak keys for the CSRs... then their root and Sectigo signed it. And it shipped.

That's why the private keys are literally one byte.

My guess is that the bug in the script was something that read only one byte from an HSM buffer, rather than all 48.

https://bugzilla.mozilla.org/show_bug.cgi?id=2083449#c11

asveikau 2 hours ago

In case anybody else is curious, since the workarounds are only offered for Linux and NetBSD, I was able to fix this on FreeBSD with:

    sudo certctl untrust /usr/share/certs/trusted/emSign_ECC_Root_CA_-_G3.pem
And on OpenBSD by editing /etc/ssl/cert.pem, removing everything starting from the line:

    === /C=IN/OU=emSign PKI/O=eMudhra Technologies Limited/CN=emSign ECC Root CA - G3
Up to but not including this line:

    === /C=IN/OU=emSign PKI/O=eMudhra Technologies Limited/CN=emSign Root CA - G1

deathanatos 2 hours ago

Why are the intermediates, and not the root cert, being revoked?

The intermediates seem to be difficult in that the root stores don't seem to have a mechanism for it (… kinda seems like an oversight, at this 20:20 vision point?). If eight of the CA's intermediates are hosed … how many are still "good", and are they good good, or are we just fooling ourselves?

QuiEgo 34 minutes ago

At least Google and Mozilla are revoking the roots too

justincormack an hour ago

There are 30k websites using certs chained to that root

deathanatos an hour ago

I guess the other question I have is just how many intermediates does this one CA have? They've had 8 compromised thus far; that's not the entire lot of them?

LE has two EC intermediates, by comparison.

ghuntley 5 hours ago

Just wrote up a quickie about how Nix + LLMs make patching everything super simple via overlays. Simplest security response I've ever done in my life. http://ghuntley.com/patch

innoying 3 hours ago

I've opened up a PR adding an example certificate generated using these keys to https://badssl.com - https://github.com/chromium/badssl.com/pull/559

taherchhabra an hour ago

Lot of indian financial institutions run on their products.

CiPHPerCoder 5 hours ago

If you're responsible for PHP client software, and waiting on composer/ca-bundle to release a new update, be aware that https://github.com/paragonie/certainty has been updated with the 2026-10-20 bundle already.

TedDoesntTalk 6 hours ago

are there any consequences to eMudhra?

QuiEgo 18 minutes ago

Google and Mozilla are banning their roots. There’s a good chance if’s a death penalty for the company.

darkwi11ow 5 hours ago

Previously such incidents have lead to the CA business cessation by the involved entities (e.g. Diginotar case). I dont see how it would be different in this case.

bawolff 3 hours ago

This is so blatently terrible, its hard to imagine they won't be permenantly removed from the CA ecosystem. I'm pretty sure other CA's have been removed for less.

navigate8310 4 hours ago

That would damage public perception of the current Indian government, so the administration will do everything to keep the CA afloat.

john_strinlai 5 hours ago

they will have to file an incident report, which will be heavily scrutinized, and can possibly (edit: i am leaning towards likely, as more information comes to light) result in their ejection from most/all root stores.

woadwarrior01 5 hours ago

I hadn't heard of the CA before and had to look it up. They're a publicly listed company in India. Markets will price this in.

https://www.nseindia.com/get-quote/equity/EMUDHRA/eMudhra-Li...

itintheory an hour ago

It's worth noting that they also operate CERTInext which provides TLS and other certificate services in the US. In particular, CERTInext was chosen to be the CA for InCommon which means it's used by LOTS of universities all over the country. This was a migration from Sectigo that took place this year.

https://incommon.org/certificates

rockdoe 4 hours ago

So uh, for various IOT junk like Smart TVs, does that mean the ones that don't get security updates (pretty much all of them) are permanently pwned?

q3k 5 hours ago

https://chaos.social/@fluepke/117474156947559280

D=4. That's the entire private key for one of the certs.

aghuang 5 hours ago

This probably has an unimaginable blast radius of existing software out there.

jeffrallen 5 hours ago

Thanks Wayne.

1vuio0pswjnm7 2 hours ago

mhjkl 2 hours ago

Blockchain would've solved this

quotemstr 7 hours ago

Web PKI is cursed. Why should anyone have to ship a new version of Go, Electron, webpki-roots, etc. (possibly over a now-compromised TLS connection!) just to revoke a certificate? Why are so many packages independently shipping high-sensitivity trust-bootstrap credentials? And why can any CA still vouch for any domain instead of each being limited to a specific ccTLD or other non-total shard of subject names?

Also, it's quietly, in the email space, that we're seeing real innovation while browser vendors just say "no" to everything. We should be distributing trust, not centralizing it in browser vendor security teams and Let's Encrypt.

10000truths 6 hours ago

Web PKI doesn't mandate that every client ship with its own root certs. The clients you listed can be configured to use a centrally managed trust store, if that's what you want. The fact that they don't by default is a deliberate tradeoff that the clients made, not some standard's fault.

mook 2 hours ago

My understanding that go at least doesn't ship their own root store; they're shipping a patch to blacklist certain intermediate certificates instead, even if whatever OS-level root store would have accepted them.

Basically, the design didn't have a way to distrust anything other than removal from the root store. Which may still happen, but that will take longer.

kalkin 6 hours ago

This isn't, like, one misbehaving client. It's the way the ecosystem has evolved. GP didn't specify whether they were criticizing the standard or the ecosystem more broadly, but even if they were criticizing the standard, it's pretty fair to evaluate a standard at least partly based on how it gets implemented in practice. There's a reason cryptography tools for the last decade or more have been focused on being misuse-resistant.

10000truths 5 hours ago

quotemstr 6 hours ago

unethical_ban 6 hours ago

Why don't these massive package managers use the host OS CA store, with an optional preconfigured "additional" store if clients need them?

Is the update cadence of CAs that different between the sources? Is the list of CAs included so different from OS vendors and the package managers?

binlog 5 hours ago

sureglymop 21 minutes ago

What's worse is, if this hadn't come to light, how would you even know when an attacker issues a cert for your domain?

Well you might think, oh I can monitor the certificate transparency logs.

I would say well, good luck downloading and parsing terabytes of certificates as they are logged. Then there are CAs whose logs will rate limit you in a way such that you can't catch up to the certs being logged with one server and IP. The system might "work" but not for domain owners. Good luck.

nmadden 6 hours ago

> Also, it's quietly, in the email space, that we're seeing real innovation […]

Can you elaborate on this innovation in the email space around PKI?

sam_lowry_ an hour ago

+1

Is it a out MTA-STS or something else?

Velocifyer 2 hours ago

eqvinox 2 hours ago

I would {hope,expect,urge} the people who can easily convert those numbers into proper key form to just not do that, to leave the tiniest of barrier of entry for trolling scriptkiddies.

Browsers might've gotten their magic revocation updates, but a lot of other things haven't… (and yeah this is "security by hoping hard enough", but still better than nothing.)

https://emudhra.we-have-a-problem.com/ tests all certs. If you don't trust that for whatever reason, https://bgp.tools/ also shows a banner at the top if you're vulnerable.

albert_e 6 hours ago

trying to understand where this service is mainly used. judging by a quick google search ...

is this related to Government of India related websites and their services/websites like tax filing etc? is the impact expected to be concentrated around indian citizens availing these services?

barco 6 hours ago

The way the web works, any CA (Certificate Authority) can create TLS certificates for almost any website.

This means that the people with these keys could MITM almost any https connection people make, not only the ones that this CA issued.

arcfour 5 hours ago

It doesn't have to, you can set X509 name constraints which say "the CA may only issue/may not issue certificates for these Subjects," or you can set CAA in DNS, for example.

(Of course, the former isn't really intended to constrain trusted Root CAs, moreso internal PKIs. But it is an option people should know about!)

eqvinox 5 hours ago

sandeepkd 4 hours ago

Yes and NO. These are intermediate CA's and for them to be recognized by your browser or system, they need to be signed by another CA or root certificate that your system already trusts.

SO, not all CA's are signed by root certificates already on your machine

UltraSane 6 hours ago

"any CA (Certificate Authority) can create TLS certificates for almost any website."

This has always been incredibly stupid.

bombcar 5 hours ago

binlog 5 hours ago

bobkb 6 hours ago

It’s used by Indian companies and also they provide digital signature services. It’s a widely used platform.

cute_boi 2 hours ago

"eMudhra is an Indian public key infrastructure (PKI) and licensed certifying authority headquartered in Bangalore, India"

There is reason why company shouldn't cheap out and use foreign vendors like this....

sureglymop 12 minutes ago

Certainly some American CAs aren't any better, flashbacks to Comodo 2011 (now Sectigo).

Kwpolska an hour ago

They might be foreign to you, but your favorite CA is foreign to Indians.

account42 7 hours ago

> What are the consequences?

> An attacker with the private key of any of the compromised intermediate CAs could impersonate any website or service.

And how many more times do we need to read this before we replace Web PKI with a system that isn't as completely insane?

We already have a functioning system for delegating domain ownership in a hierarchical fashion where compromises are limited to only the subtree under the compromised entity. Let's start using it for domain validation sooner rather than later.

vlan0 7 hours ago

>And how many more times do we need to read this before we replace Web PKI with a system that isn't as completely insane?

You say this like it's easy and simple and we are simply not choosing to do so.

__MatrixMan__ 6 hours ago

It's been obvious for a while now that root-of-trust schemes create juicy targets, and that juicy targets attract all sorts of bad behavior that wouldn't be economical if we used a web-of-trust.

Building a web-of-trust scheme that works might not be easy, but also it's not like we've been trying exceptionally hard lately either.

jcranmer 5 hours ago

quotemstr 7 hours ago

> We already have a functioning system for delegating domain ownership in a hierarchical fashion

Well, yeah. DANE should have won. NameConstraints would be nice tooo, but who's going to make CAs use it?

And FFS, clients could at least check CRLs once in a while.

tptacek 7 hours ago

DANE replaces this system with one that has the same basic cryptographic properties, but in which you can't eject bad actors --- or even monitor them with a mandatory transparency log. It's strictly worse than this.

toast0 2 hours ago

eqvinox 5 hours ago

quotemstr 6 hours ago

ekr____ 6 hours ago

People have debated DANE endlessly here, so I'm not sure how much more I have to add at this point. However, browsers, at least, do swiftly handle revocation for CAs, as indicated in this comment: https://news.ycombinator.com/item?id=50167244. They also handle EE revocation to varying extents, with Firefox having complete coverage and other browsers having partial coverage.