Who killed the EV cert? A browser whodunit for Halloween
Posted by roddylindsay 4 days ago
Comments
Comment by ipdashc 1 day ago
In theory we could even limit it so that only a given country's CAs can sign entities under that country (somewhat mitigating the whole eMudhra thing...)
It does feel like kind of a shame sometimes, there's a lot of stuff that would be possible with TLS/certs/webpki that we don't really explore. Mutual TLS, for instance. I get why, and I'm as happy as anyone that Let's Encrypt exists, but sometimes it feels unfortunate that we've settled into the comfort zone of "get a domain name, pull an LE cert for it" and don't often do much else with the technology and all the CA infrastructure.
Comment by Ayesh 1 day ago
For example, a government could be an intermediate CA, and have it technically limited only to issue certificates for `*.gov.CCTLD` domains.
Comment by ameliaquining 1 day ago
ccTLD name constraints are an old idea, back in the news again lately for obvious reasons, and the same arguments against them still apply: https://groups.google.com/g/mozilla.dev.security.policy/c/pF...
Are there other use cases besides those that you think the Web PKI should support?
Comment by ipdashc 23 hours ago
This is an interesting thread, thanks for linking it! Though I felt a lot of the author's argument seemed a little circular / "dividing up trust is bad, because it's bad" right up until the end, where they summarized it nicely:
> It strives to draw borders around the (secure) Internet, and to acknowledge that what you do in your own borders, to your own users, is an issue between you and them. I don't think that's a good state for anyone to be in.
I am definitely sympathetic to this argument, but IDK, I don't think the current state we're in is great either. We've known for ages that the global CA ecosystem is messy, and I think a lot of people were just waiting for something like the "4 incident" to happen. We would all prefer if the audit requirements (and measures like CT and such) were stringent enough that no CA could be a bad guy and everyone was secured globally, but it doesn't seem like that's what we're getting.
It's a hard call for sure, I don't know enough about it to have a strong opinion. My gut instinct is still that I'd prefer to live in a nameConstraints world over the current one where any CA in my /etc/ssl can sign/MiTM anything. (But CT certainly does go a long way towards mitigating that.)
> any particular reason to think that the Stripe problem is solvable
I'd imagine, in a "proper implementation":
- It would probably only make sense for orgs that actually "need" EV certs to get them. I'm not sure how you'd decide this, but I think most users would agree they should be reserved for banks and gov and such, not random LLCs with a few hundred dollars. (EDIT: You could also gate them behind some kind of audit or cert like SOC2/ISO, presumably decided per country)
- Trademark law is somewhat designed for this sort of thing (confusing/overlapping company names), so maybe that could play a part. Nowadays you could maybe include a company logo in the "badge" as well.
- EV certs would still satisfy nonrepudiation, in a way. You'd have to be pretty bold to run a phishing site under a company registered in your targets' country under your legal name.
Comment by rlpb 23 hours ago
I don't think that would be the failure mode. It'd be a phishing site that uses a compromised EV cert issued for an obscure small bank in a far away country purporting to be a major brand bank in your own country, taking advantage of the asymmetry in cybersecurity budget between those two entities. Users would have to actually check the EV cert DN every time (unlikely so successful for a phisher then) or rely on things orthogonal to EV certs like pinning.
Comment by wongarsu 22 hours ago
Additionally, the browser could show a warning if a ccTLD is served with an EV cert of an entity outside that country. Doesn't help the US because of the obscurity of .us, but useful for the rest of the world
Comment by rlpb 20 hours ago
The article covers this. Apparently research demonstrated that the number of users who would notice is not significant.
Comment by ipdashc 22 hours ago
EV certs when they were around showed a big green badge by the URL with the entity's legal name. Presumably this would work similarly, so you'd see ObscureBankInc and not Chase or Citi or whoever.
It'd probably make sense to add a flag indicator, or otherwise warn when the cert is from a country other than the users' own.
Comment by sekinfo 22 hours ago
EV Preload List
Similar to HSTS Preload List, a domain owner can enroll the domain into an "EV only" program on a yearly basis, such that the list of "EV only" domains will be preloaded into major web browsers. Browsers will refuse to accept any certificate for the domain which is not EV. The browser UI does not need to change.
Comment by ipdashc 22 hours ago
Training people to "look for the big green badge and make sure it says JPM Chase, USA" seems easier than "you have to make sure it's chase.com EXACTLY". But in reality the solution is to use a password manager with URL matching (or passkeys... But ehh)
Comment by rgbrenner 1 day ago
Back then, cert vendors would try to sell you on "premium" certificates.. telling you that cheap ssl certificates weren't good enough, so you needed to pay for $100-300+/yr certificate, and you could show to your visitors by displaying silly trust seals like the "Thwarte Seal".. as if customers would know who the hell Thwarte is.
Then this EV seal was launched, displaying what was essentially a trust seal in the browser.. and these same vendors would charge $500+/yr for it.
I can't express how great it is that EV certs died.
Comment by ameliaquining 1 day ago
Comment by tialaramex 23 hours ago
Before the BRs certificate validation quality had been on a dramatically steep race to the bottom. The BRs immediately stopped that, if your certs didn't meet the BRs that's an obvious red line, everybody can see - this was now the bottom. But they also (and this perhaps was less obvious) were incrementally improved.
From the outset the intent was to keep meeting, at first to nail down everything in the agreement, but then to revise and improve the Baseline Requirements. Although there are some changes to make the lives of CAs easier, the vast majority of changes just tighten things up.
For example the original BRs want to stamp out the practice of just making up DNS names. It seems crazy today, but in 2010 that's really a thing "legitimate" CAs would do and your browser would accept it. made-up.name.in.example "works" fine, a CA can issue the certificate, you can use /etc/hosts or equivalent and it all checks out - even though that's clearly nonsense - who could get such a cert? Anybody. So what possible value does it have? Well, somebody paid for the certificate.
After the BRs go into force in July 2012 that's against the rules. It doesn't stop happening immediately, but it is now clearly forbidden, so at least they say "Sorry, won't happen again" and cross fingers they actually mean it.
Likewise, the original BRs say certificates must only last 60 months. That seems like forever - and it is - but at the time some sites had 10 year certificates. Hey, if you agreed to pay $500 for a certificate, on condition that it's valid for a decade, what self-respecting sales person wouldn't sell that?
The BRs say not to issue with terrible keys (yes, I know, that's ironic given what we found out this month) and lots of other basic "Duh obviously" stuff which alas was not apparently obvious enough that it wasn't news to at least one CA.
By 2015 the BRs are telling CAs to stop issuing with SHA-1 hashes. They don't actually meet the deadlines in that document, but they're pretty close, I'm fairly sure that nobody actually got a bogus cert (as had definitely happened for MD5) though it may have been closer than we'd have liked.
This is a success story, and EV certs were a very small price to pay.
Comment by technion 21 hours ago
Comment by michaelt 1 day ago
As I recall, EV certificates also had the 'problem' that a lot of companies trade under names that aren't their full legal name, making the EV cert confusing. To use modern examples, twitter.com having an EV cert for "Space Exploration Technologies Corp", google.com having an EV cert for "Alphabet Inc" and suchlike.
Comment by brewmarche 7 hours ago
Comment by galadran 1 day ago
However, there are obligations to display 2-QWACs if sites choose to use them. Their keys are not used to authenticate web domains or encrypt web traffic.
Disclosure: I was Mozilla's lead for this effort and also helped design 2-QWACs (for my sins).
Comment by roddylindsay 1 day ago
Though I don't understand why they would atone for any sins. IMHO, you created the website identity infrastructure for the agentic web...
And yes, I hope I didn't imply that QWACs are trusted by default for TLS. 1-QWACs would have to come from an existing trusted CA to be recognized by the browser.
Comment by galadran 1 day ago
All the design needed was for the browser to check the TLS cert and the QWAC cert covered the same domain name. Instead, folks at ETSI insisted very stubbornly on the signature from the QWAC over the cert used in TLS - which is an annoying complication for site operators - and provides little additional benefit.
I'd also like to see the EU encode more information in these certs. Knowing a company's address is not very useful (IMO), but a machine readable label that the site is regulated by $COUNTRY_NAME financial or medical regulator would be a much more useful signal.
Good luck in your endeavours!
Comment by roddylindsay 1 day ago
Agree that the next step for 2-QWACs is additional corporate data (professional licensure like you mentioned, incorporation date) and eventually arbitrary claims vetted by a QTSP.
For an average human user, these additional claims are nearly useless since they're so buried in the browser UI...and even if they were more prominent, they wouldn't be of much benefit, as the EV history has shown.
But for an agent that knows to look out for these signals, extensible 2-QWACs will be extremely valuable.
Comment by ameliaquining 1 day ago
Comment by roddylindsay 1 day ago
- If by certifying authority you mean a CA/Trust Service Provider, they don't generally publish client information in a central location.
- If you mean the actual jurisdictional authority, there are thousands and public records are all over the place.
- Websites aren't generally part of corporate filing records. So the agent would still need a way to connect the website to the corporation even after checking the legitimacy of the corporation.
- Serving the structured info in an HTTP header that is cryptographically verifiable by the browser itself (via its trusted roots) essentially serves as a distributed database for website identity, which eliminates the need for each agent to come up with its own ad-hoc verification system on the fly (and all the additional fetches that come along with it)
Comment by ameliaquining 1 day ago
Comment by roddylindsay 23 hours ago
- which business is behind the website?
- when was said business incorporated?
- how many employees does this business have?
- what is the jurisdiction and canonical registration identifier of this business?
All useful info for an agent determining how much to trust the content on a website and whether to transact with it
Comment by ameliaquining 22 hours ago
Comment by xorcist 23 hours ago
Comment by ameliaquining 22 hours ago
Comment by mieko 1 day ago
If anyone is interested:
https://github.com/mieko/greenbar
I should probably chart out the changes throughout the years, but this was more of a curiosity hack.
Comment by sekinfo 1 day ago
I believe the only possible advantage of an EV is not a technical one, but rather an organizational one: it encourages the use of a unique keypair on each server because Wildcard coverage is not allowed (although multi-domain is allowed). For what appear to be non-technical reasons, I have seen many entities copying their keypairs for Wildcard certs between servers, even between business critical on-prem backends and cheap shared hosting or budget VPS, or handing the keypair over to a contractor via email.
Comment by mcc1ane 1 day ago
Comment by sekinfo 1 day ago
Have seen some entities request a large number of EV certs (more than 10, sometimes up to 40) for subdomains under a single domain. At the same time, they are requesting OV Wildcard certificates for the main domain, which have overlapping coverage with the EV certs. These entities do not have any regulatory requirements to use EV as far as I know.
Is there any point in doing this?
The overlap from the Wildcard would seem to nullify any theoretical advantage of the EV cert, given that both will be recognized as valid certs that can cover the subdomains. This in addition to the fact that browsers do not treat EV, OV and DV certs differently in any significant user-facing way since many years now.
Frequently these entities also use Let's Encrypt DV certs on some subdomains alongside their EV certs, so of course a CAA record cannot be used to limit emissions to the CA which emitted the EVs.
Can anyone think of a legitimate technical motivation to use EV certs alongside an overlapping Wildcard OV and various DVs?
Comment by orf 1 day ago
Comment by rfmoz 1 day ago
Comment by logartis 1 day ago
Comment by aleclindz 4 days ago
Comment by max8539 21 hours ago
Comment by rdl 1 day ago
Comment by 9dev 1 day ago
Comment by ameliaquining 1 day ago
Comment by 9dev 1 day ago
A Puerto-Rican crypto bro wouldn’t have a career without the USA exerting their will and regulations onto the rest of the world.
Comment by ameliaquining 1 day ago
Comment by bigstrat2003 22 hours ago