Certificate Transparency: a bird's-eye view
emilymstark.com
emilymstark.com
Am I right to be suspicious about Google’s motivations here? It may very well also be the case that CT also improves security, but part of me feels...dirty, knowing that I can’t opt out of this mechanism that sends data straight to Google about any new HTTPS domain I set up, so they can start indexing it. Is this just the cost of improving trust?
Sure, having an infinite, append-only log of domain names for which an HTTPS certificate ever was issued sounds like a GDPR issue. But if it also helps catch bad actors before they can even set up their phishing pages, I'm all for it.
[0] https://hg.mozilla.org/releases/mozilla-beta/raw-file/tip/se...
[0] https://certstream.calidog.io/
[1] https://github.com/x0rz/phishing_catcher https://blog.0day.rocks/catching-phishing-using-certstream-9...
OCSP servers are notoriously unreliable - and with the increasing use of tls I don't see that improving - and that required open failure for TLS connections in browsers. That kind of defeats the purpose of revocation checks as someone can kill the OCSP connection and browsers will have to continue. Even when EV certs were a thing OCSP responders had a tendency to go down.
The really big problem though is privacy - revocation checks require transmitting every server name you are accessing, and secure DNS (if it existed) would not be sufficient to hide where you are navigating.
CT "solves" this by at least requiring an SCT so we know that in principle any cert we do encounter has been posted somewhere where effected individuals can see a misissuance. This obviously doesn't stop misissuance, it just makes it visible and allows us to determine whether CAs have verification flaws, etc. It also doesn't do anything about revocation checking as that is still dependent on OCSP, so has the aforementioned problems. Part of the move to short term certificates is to reduce the need for revocation checks as the lifetime of threat is much more restricted, so someone has to repeatedly compromise a CA to maintain an attack.
One other mechanism browsers have is certificate kill lists, which came into existence following the CNNIC and Symantec misissuances - essentially in the event of high profile/major site misissuance vendors can post a more or less immediate "don't trust these certs" list that is fast and robust vs. OCSP.
edit: s/Digicert/Sectigo - thanks jaas
https://www.cloudflare.com/dns/dnssec/dnssec-complexities-an...
I suppose you can get around enumeration concerns with CT by using a wildcard cert. It's always seemed odd to me to worry about information in a public database like DNS being retrievable on bulk anyway - that approach is just security by obscurity.
Obscurity does have a role to play in security - leaving your front door unlocked is unlikely to be a problem but if you publish that information in a publicly searchable database then you are making yourself a target
There are companies that use private (not publicly resolvable) domains for which they create public certificates for internal hosts, that get published via CT.
Nice for OpsSec sleuthing.
Edit: how to find these "private domains"? Often public certificates contain more than one DNS names, of which one might be "private". YMMV