Remix.run Logo
▲ hbcdbff 5 hours ago

You claimed CT would “definitive”ly prove whether it has or has not been exploited, which is false.

The lack of CT entries only proves that (most likely) browsers were not MITM’d.

▲cortesoft 4 hours ago | parent | next [-]

We would still know if certs were issued, though, which is the thing we want to check

▲tsimionescu 4 hours ago | parent | next [-]

How would you know it? If the CA was compromised, why would the attacker publish the fake certificates in CT?

Basically no one outside the major browsers verifies CT logs, so you can still attack a lot of people even without publishing.

▲bigbuppo an hour ago | parent [-]

The baddies also take a look at the CT logs and look for fresh wordpress instances that haven't yet been configured and will helpfully configure them for you within a few minutes.

▲hbcdbff 3 hours ago | parent | prev [-]

No we wouldn’t.

▲tptacek 4 hours ago | parent | prev [-]

I'm not following. Browser or no browser, every cert eMudhra issues has to generate an SCT.

▲eqvinox 4 hours ago | parent | next [-]

Sure, but a client that doesn't do CT wouldn't care if they don't include a SCT promise. [ed.: this said "break the SCT promise", that doesn't quite make sense] Which you'd only notice if you see the certificate somewhere else afterwards…

It's all rather hypothetical and unlikely, but you could certainly try attacking something like downloads.openwrt.org¹ like that — especially if you can tell apart the TLS client in opkg from a normal browser.

(¹ luckily, OpenWRT and most other package repos don't actually rely on HTTPS for package integrity and authenticity. And OpenWRT would be the most susceptible due to the "exotic" TLS client stack, if any.)

▲hbcdbff 3 hours ago | parent | prev | next [-]

I’m surprised to see this username above this comment.

No, the cert can be issued with no (or invalid/junk) SCT and will work fine with clients who don’t check SCT, which is most non-browser interaction.

▲fc417fc802 2 hours ago | parent [-]

To spell it out a bit further, an attack strictly in a non-browser context that is reasonably well targeted will most likely go undetected since what the attacker is up against is the chance of inadvertently running into a paranoid user who goes out of his way to perform verification.

▲tsimionescu 4 hours ago | parent | prev | next [-]

No, it doesn't. A certificate may or may not include CT info, or include fake CT info. Most TLS clients accept certificates without checking for CT.

▲ 4 hours ago | parent | prev | next [-]
[deleted]
▲oasisbob 4 hours ago | parent | prev [-]

SCT enforcement falls to the client though, yeah? What's stopping someone from signing a rogue cert silently which is accepted by CT-lenient clients?

▲tptacek 4 hours ago | parent [-]

Right, but you don't have to wait for some hapless random browser to check; you can write your own monitor, and people do that.

▲tux3 4 hours ago | parent [-]

I hold eMudhra's private key. I generate a cert signed by their intermediate on my box. eMudhra didn't issue the cert, so it is not sent to any CT logs, and I have no SCT to put in the cert.

Am I missing what you mean by monitor?

▲tptacek 4 hours ago | parent [-]

I think I might just be talking past you. If your point is "anyone with these broken eMudhra keys can attack users without caring about CT", that's totally true --- it's just that browser/no-browser doesn't factor into it. I'm really only on this subthread because of the notion that CT enforcement requires browsers.

▲tux3 3 hours ago | parent [-]

Right, I think I'm with you that browser/no browser shouldn't be a factor. I think I'd like to hear from Rust and Go webpki people on whether we could help the ecosystem enforce CT.

My point is more that as a user of a high-level library like reqwest, I'd like to talk safer defaults when root CAs are in use

▲tptacek 3 hours ago | parent [-]

Right, OK, I was misunderstanding the point you were making. Thanks!