5 ms·
People don't seem to understand how insecure self-signed certs are (and aren't if provisions are taken). 1) A self-signed cert provides zero protection against
by RyanZAG 14y ago
People don't seem to understand how insecure self-signed certs are (and aren't if provisions are taken).
1) A self-signed cert provides zero protection against just about any attack that would work on clear text - any attacker can simply create their own self-signed cert and pretend to be you, and Google would have previously accepted this and happily accepted the incorrect mail. This is broken security in every way, and it is better to use no security since at least nobody can believe it is secure.
2) Self-signed certs are actually stronger than 'chain of trust' certs, provided you can trade the public cert in advance. Google should have a box on their POP fetch page where the public cert can be entered. This is more secure and the correct way to handle the problem, rather than blocking self-signed certs.
Self-signed certs are perfectly valid if the public cert is provided beforehand. Self-signed certs with the public cert used unchecked from the server is COMPLETELY BROKEN.
TLDR; Google needs to provide a box for the user to upload the mail servers public certificate.
- akirk 14y agoWhat about having your own (self-signed) CA? You sign your own certificates and import that CA on your computer. Would this effectively prevent a man in the middle attack?
- Zash 14y agoGood luck getting Google to trust your CA ;)
- akirk 14y agoSorry, my question was not actually meant to be about this Google situation but about the general approach to using your own CA instead of self-signed certificates.
- omh 14y agoAs long as you don't need your services to be used by third parties then a private CA is a good option, and in some ways more secure than traditional root CAs.
- Nursie 14y agoSo long as you can find a secure way to get your CA cert onto whatever systems need to verify your server certs, it can be a very good thing. The main advantage of this over public infrastructure is that you don't have to trust the authorities, some of whom have in the past been caught handing out dodgy certificates or been compromised. For a set of private systems that don't need to interface with the public internet and unknown clients, I would go so far as to recommend it. You must keep your master keys safe of course!
- RyanZAG 14y agoIt will prevent it as long as the client has your CA's public certificate embedded. Browsers/OS embed all of the normal CA's certs so that you know any cert signed by a regular CA is authentic. However, regular CAs are not incredibly trustworthy and are a security problem... (Regular CAs can be attacked with fairly easily with social attacks, and some CAs can even be bribed or hacked.) Giving Google your CA or your public mail cert are effectively the same thing in theory, as long as Google only uses your CA cert to authenticate your own servers and not anybody elses. In practice, current CA management software in most OSes is (imho) faulty, and will allow any CA in the chain to authenticate any cert. This probably needs to be fixed at some point... So until then, there is no way Google is going to accept your CA, but they SHOULD change their systems to accept a specific public cert for a mailserver for POP3 fetching.
- Nursie 14y agoYou would hope the smart minds at google could come up with a management system for this fairly easily, though I guess it does add complexity when you're dealing with potentially millions of these servers and millions of trusted roots.
- mseebach 14y agoSelf-signed in this context basically means "signed by something else than a trusted CA", not the strict meaning of signing a certificate by itself. There are two elements to public key crypto: The encryption itself (which is perfectly fine on a self-signed cert) and certificate distribution (for which the best current solution are the globally trusted CAs). If you can somehow guarantee that your attacker can only listen to your data, not inject himself as a MITM, self signed is perfectly adequate to protect yourself. The catch is that providing this guarantee is very difficult.
- reidrac 14y ago"Google needs to provide a box for the user to upload the mail servers public certificate." This looks like a brilliant idea. In that way the self-signed cert gets verified without the hassle of getting CA signed certificate that it's not an optimal solution if you're virtual hosting several domains (you can get a free cert from StartSSL, but with virtual hosting and IPs being scarce and all, that's far from being a good solution).
- Adirael 14y agoThanks about speaking about StarSSL, I didn't knew you could get a CA signed certificate for free. I just need to sign mail and would like to get rid of the "invalid certificate" message when accesing administration side of my apps.
- zobzu 14y agoyou get 1 for a single domain and thats it. they can stop doing it at any time, eg after they get everyone's business and services all disallow self sig.ed certs. also by nature these certs are poorly checked and thys less trustable than some other, obviously
- belorn 14y agoIf one is fetching emails without SSL, does that mean the data is sent in clear text over the wire? In that case, self-signed do provide greater than zero protection in regard to ISP surveillance and other passive attacks. (similar to smtp tls encryption, enabled by default by almost all mail servers, and uses self-signed certificates).
- rdl 14y agoI use "real" certs on my START TLS enabled mail servers; it's not that hard to set up, and people should. (free certs from StartSSL, but still "real")
- Nursie 14y agoOnly if there isn't running some sort of self-signed detecting MITM running. Which is not that hard - I made a trivial one that pretends to be a DNS server and hands out phoney addresses, then both forwards and dumps all traffic in ~250 lines of python. But yes, it would stop purely passive attacks, unless I'm missing something.
- RyanZAG 14y agoSure, but this is the same as having a locked door with a window next to it that anybody who knows how can reach through and unlock the door. You can say that having the locked door is better - it will stop anybody who does not think to unlock the door through the window. It also stops any robots that come past who are programmed only to try the door-handle and move on if it fails. Problems start to come in when you put this security on a warehouse and customers leave their secure items inside having been assured that the door is locked. Clearly, anybody can just reach through the window, unlock the door, and take the secure items and the customer is left wondering why the advertised locked door didn't help them. Setting up a MITM mail server for an ISP that will happily proxy between the real server and the requester is as trivially easy as reaching through an open window. When asked, they could just say that it is for 'security purposes' and it helps with 'caching'. If your email provider is willing to snoop on all your email, they're probably willing to tell a few lies also.
- meaty 14y agoWell actually even trusted CA's are not that trustworthy as we've seen recently by the number of revocations. Probably a better approach thank just nuking it would be for Google to import a public certificate into their store for your self-signed cert and then only trust that one.
- deleted 14y ago[deleted]
- zobzu 14y agoand thus and per your own words, self signed is just as - and in fact more - secure than regular certs, when used properly. all the uis, except ssh, are broken for this mechanism. killing self signed just gives more business and control to big corporations.
- St-Clock 14y agoI fail to understand how gmail accepting to fetch email from an account without any sort of encryption, but refusing to fetch email from my CS department which has a self-signed certificate can benefit me or make me more secure...
- martin_k 14y agoDisallowing self-signed certificates doesn't improve security of unencrypted connections, but it increases security of all connections using SSL/TLS. It doesn't make you more secure (you don't have strong authenticity in any of those cases), but it certainly makes me more secure. When Gmail fetches email from my provider, which has a certificate signed by a trusted CA, it would have previously accepted any self-signed certificate from an active MITM.
- St-Clock 14y agoThanks for clarifying. I understand the decision better now. How about an option (disabled by default) that allows self-signed certificate per fetched account, e.g., in the "edit info" dialog? I guess everybody would be happy with this one right?