4

There are many sites that have self-signed ("untrusted" in Firefox) certificates. I then have the option to trust them or not. If I not trust them I can either leave the site or only visit the site fully unencrypted.

I know, there are cases where I should not use the site at all if there's the smallest risk of "being watched" (online banking, shopping, and so on). So, the question is more like: On non-critical websites, e.g. sites I only read (news or blogs for example), is there any reason to not trust a self-signed certificate? In the worst case "I'm watched", which I could be anyways if I used unencrypted HTTP.

3

Firefox had once a bug, where the trust was not applied to site+certificate, but to the certificate only. E.g. if you had a self-signed certificate with a common name of example.org but a subject alternative name of paypal.com and the user visited your site example.org and accepted the self-signed certificate, then this certificate could be used to transparently intercept paypal.com, e.g. no more questions asked or warnings issued.

Bugs like these tend to resurface from time to time (especially when somebody writes a new TLS stack) so accepting self-signed certificates can lead to serious problems.

Apart from that, using self-signed certificates just teaches people to ignore these security warnings (which most don't understand anyway).

3

An untrusted certificate is at least as secure as unencrypted HTTP -- in fact its slightly more secure as passive eavesdroppers can't listen in.

Note with untrusted certificates (where you do nothing to validate that the certificate is properly tied to the website), an active eavesdropper could easily launch a Man in the Middle attack and eavesdrop (altering the certificate with one they control). So its not much better.

The downside to untrusted certificates is that your browser will complain loudly about their use (as it should) and there's no reason to use it. Also, its not hard to get a properly signed certificate for free these days (e.g., startssl.com -- granted you'll have to update it every year).

If a user intended to go to trusted site, but found it replaced with an untrusted certificate the user should have no confidence that their connection is not being eavesdropped on -- that is you went back to the security of HTTP (being none).

1

Yes, and it's not a technical one, it's psychological. Every time you, I, or anyone else accepts a suspicious cert, it makes us less resistant to doing it again next time. Sooner or later, something bad happens.

On the technical side, I wish browsers would prompt both on the first GET, and before every POST - a user might start out intending to only read a site, get interested in the content, then later sign-up to read more/comment and forget that they'd previously whitelisted a suspicious cert.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.