Bugtraq mailing list archives
Re: Certificate spoofing issue with Mozilla, Konqueror, Safari 2
From: Nils Toedtmann <securityfocus () nils toedtmann net>
Date: Tue, 20 Nov 2007 00:58:28 +0100
Am Dienstag, den 20.11.2007, 00:51 +0200 schrieb Kapetanakis Giannis:
On Sun, 18 Nov 2007, Nils Toedtmann wrote:Mozilla based browsers (Firefox, Netscape, ...), Konqueror and Safari 2 do not bind a user-approved webserver certificate to the originating domain name. This makes the user vulnerable to certificate spoofing by "subjectAltName:dNSName" extensions. ... In the end, the cert warning and the spoofing attempt get separated into two events which appear to the user as being unrelated. I consider this a severe cert-spoofing issue, aggravated by the fact that affected browsers also match any hostname with "subjectAltName:dNSName=*". Regards, /nils.I would consider this a feature of the X509 standard and not a bug. subjectAltName and wildcard matching exists primarily for name based virtual hosting in SSL/TLS. There is no other way you could do this without this extention. (*correction -> check bottom*)
Agreed. I don't claim this being a bug of X.509.
If a user is fool enough to accept lame certs (even temporary) and then later on send his private data in secure sites without checking the certificate (at least the CN which yells the difference) then he probably asked for it. If there was a warning that the CN is different than the hostname requested then subjectAltName flexibility would be useless. In temporary saves the CN could be binded to a unique hostname but in permanent saves this would be a problem. I agree with you that subjectAltName should be presented together with the CN in the front page of the cert info as both attributes share the same importance. It shouldn't be too hidden as it is now. However it is visible. Having said that I still believe that since the user accepted the cert he decides to trust it. The user trusts the (whole) certificate not the browser. The user tells the browser I want www.example.com *.example.com and *.foo.bar to be trusted under this certifacate. The browser obays as it should.
Agreed again: if all subjectAltNames would be shown to the user on first contact like the CN it would be a user issue. Instead, browsers bury them in details, Konqueror does not even show them *anywhere*. So an avarage user has not enough information to make a proper decision. However, vendors seem to head towards strong hostname binding. MSIE, Opera and Safari 3 already do so. Mozilla-1.9/Firefox-3 will have the probably best solution: the user can set a list of hostname/port tupels a cert shall be trusted for.
ps. I've just discovered this: http://www.g-loaded.eu/2007/08/10/ssl-enabled-name-based-apache-virtual-hosts-with-mod_gnutls/ rfc3546 defines Server Name Indication (SNI) extention which is used by mod_gnutls for tls name based virtual hosting. Looks interesting :)
Yes, SNI is the 'real' solution to vitual https hosting. But it will still take some time till all servers, clients and admins know that. Regards, /nils.
Current thread:
- Certificate spoofing issue with Mozilla, Konqueror, Safari 2 Nils Toedtmann (Nov 19)
- Re: Certificate spoofing issue with Mozilla, Konqueror, Safari 2 Kapetanakis Giannis (Nov 19)
- Re: Certificate spoofing issue with Mozilla, Konqueror, Safari 2 Graeme Fowler (Nov 19)
- Re: Certificate spoofing issue with Mozilla, Konqueror, Safari 2 Michal Zalewski (Nov 19)
- Re: Certificate spoofing issue with Mozilla, Konqueror, Safari 2 Nils Toedtmann (Nov 20)
- Message not available
- Re: Certificate spoofing issue with Mozilla, Konqueror, Safari 2 Kapetanakis Giannis (Nov 20)
- Re: Certificate spoofing issue with Mozilla, Konqueror, Safari 2 Kapetanakis Giannis (Nov 19)
