Eddy Nigg wrote, On 2009-03-22 12:51: > On 03/22/2009 07:25 PM, Anders Rundgren:
>> Solution: One solution would be to define signature support as a >> browser component. Especially the component you've invented and have been trying to get Mozilla to adopt for some time, right? Anders? > Sounds interesting, lets hear more... Let's see a standard from W3C (or browser standards group de jour) first. >> ------------------------------------------------------------------------ >> FF issue: It seems that the AIA ca issuer extension is not supported. >> This complicates server-setups [or] alternatively requires the end-user >> to install [intermediate] CA certificates. Oh, those poor server admins! It's such a taxing burden on them that they must install intermediate CA certs! You'd think they'd rather DIE or sell their children into slavery than have to do that, the way it is complained about around here. Sheesh. > Even though I agree and have urged Nelson and others to implement AIA > fetching of CA certificates for all products It's in NSS 3.12.2. Has been for some time. FF may enable it whenever Mozilla wishes. > (specially TB is a real pain in this respect), Why is it more painful for TB? Is it because a higher percentage of mail server admins fail to correctly configure their servers with the required certs? > correctly configured servers don't need these to be present in the > browser. Bingo! > I think the only thing preventing AIA issuer certificate fetching is a > political one (privacy: the CA might know to which site you are browsing > as if the CA couldn't know that anyway through OCSP and CRL requests). No, that's not the issue at all. (Well, maybe it is for some people, but I agree that the legitimate CAs are going to find out through revocation checks, as you've suggested.) The concern is that, with AIA cert fetches, you must rely on information in the cert before you've verified that the cert came from a real CA and is not a forgery. This is quite different from the normal cert validation. In "normal" cert validation, you first verify that the entire chain is valid and chains up to a trusted root, which you do without any visits to the net, or reliance on any URLs in the certs. THEN, AFTER you've validated that the certs in the chain were issued by issuers whose signatures verify (from the top down), you check revocation on the certs, from the top down, checking revocation on the penultimate level (second highest, issued by the trusted root) CA first, then on each successive level until you at last check the revocation on the EE (server) cert. So, you're not relying on any URLs in any cert whose authenticity hasn't already been verified. (Without the double-negative, that's: You're only relying on URLs in certs whose authenticity has already been verified.) But with AIA, you get a cert, and you don't know if it's from a legit issuer or is a forgery or an outright bogus cert, but you're going to take a URL from it and go access that URL, as if it was trusted. An attacker can use this to vector all sorts of attacks. Let me give an example. Let's say that there is a server behind a corporate firewall that only honors requests coming from clients that are also behind that firewall on the "intranet". Further, the firewall prevents requests coming from outside to reach the servers behind the firewall. An attacker outside the firewall cannot directly send requests to that intranet server. How could he get a client behind the firewall to do so? He could put the URL of that intranet server into the AIA extension in a bogus cert, and then serve that cert to the client from a bogus MITM attack server. The client gets the bogus cert and, before it has validated the cert, goes and accesses the URL in the cert. Even if the client ultimately determines that the cert it got was bogus, it has already done the harmful deed and fetched the attacker's URL. Further, the server now probably has a record that the harmful request came from an inside user, and that user may get fired or disciplined. So it's a vulnerability to intranet servers and users alike. Yes, there are other ways an attacker could do this, such as an IMG tag in an ordinary http page. But https and PKI are supposed to prevent (or at least mitigate) such attacks, not be a vector for them, and they do that, except in the AIA case. That is the concern held by some browser people, as I understand it. It's purely a browser decision. NSS offers the capability, giving the application control of whether or not to use it. If FF wants to use it, FF must write some code to tell NSS to do so. (NSS generally does not enable new features by default, because of backwards compatibility issues.) -- dev-tech-crypto mailing list dev-tech-crypto@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-tech-crypto