Hot answers tagged

136

This is more of a problem than you think, particularly for a company like Google, because they're a frequent target for this type of shenanigans. But there are several layers of safeguards, and our protection is getting better over time. Your first line of defense is the Certificate Authority. They shouldn't let certificates be signed inappropriately. Each ...


100

A custom CA is required if you want to use https on your corporate intranet. 3rd party CAs can only give you certificates for public domains. They won't give you certificates for intranet.local or any other hostnames which are only routed in your own network. So when you want to have a certificate for your intranet or for the web interface of your own ...


64

This "Kaspersky Anti-Virus Personal Root Certificate" is the sign that your anti-virus is actively intercepting the connection, in effect running a Man-in-the-Middle attack. This can work because your anti-virus runs locally (on your computer) its own certification authority, and inserted the corresponding CA key in the "trusted store" used by your browsers (...


61

Yup. Yes. (If you consider "My company's admins can change my HTTP(s) traffic" compromise.) Except for some programs that pin their certificate use and fail if another certificate is used. That's pretty much the idea of SSL inspection: Open up SSL/TLS, do some anti-virus-scanning, close up SSL/TLS again. And in place of that "do some anti-virus-scanning" ...


39

You need to import the root certificate into the trust store for the browser. Once the browser knows you trust this root certificate, all certificates signed by this will show up as trusted. Note that this will only make the connection trusted for you, any others who don't have the root certificate installed will still receive an error.


34

The purpose of the warning is that by using HTTPS, there is an expectation of proper security, but a self-signed or expired certificate has vulnerabilities that the user needs to be aware of. The "risk" is that one thinks they are properly secured, but they are not fully secured, as opposed to HTTP, where one knows there is no encryption at all. There ...


31

Self-signed certificates are inherently not trusted by your browser because a certificate itself doesn't form any trust, the trust comes from being signed by a certificate that EVERYONE trusts. Your browser simply doesn't trust your self-signed certificate as if it were a root certificate. To make your browser accept your certificate, go into your browsers ...


27

Installing a root certificate on users browsers, and conducting a MiTM attack on employees is unfortunately a standard practice at many companies. There's a few ways you can detect this. One way is looking for a root CA cert installed on your computer and see if you don't recognize one of the CAs. This of course requires an in-depth knowledge of what ...


26

The answer by user2320464 is good, but I'd like to expand more. Summary: The certificate holder generally does not manage their own revocation information, because the whole point of revocation is to announce that holder of this certificate is not trustworthy. The rightful owner of the cert needs to be able to declare the cert Revoked, but in a way that ...


25

What you are describing sounds a lot like how I share PGP keys with my friends. It works fine when we're all nerds and adding keys manually and are chatting on the phone while we do it, but this approach doesn't scale very well. CAs solve your second bullet in cases where you need to trust the connection the first time, in an automated way - which turns out ...


24

Security difference First, let's talk about SSL (now called TLS by the way), which adds the 'S' at the end of HTTPS and is in charge of "securing the communication". The clue to answer this question is indeed to fully understand what we mean by "securing the communication". SSL, no matter if it is a self-signed certificate which is being used or one signed ...


24

Yes, the number of compromised certificates are much larger with Root Certificate compromise. But it's not just the number certificates. Getting a new root certificates deployed due to compromised root is massively more difficult than replacing the certificates whose intermediates are compromised. For starters, replacing Root Certificate of a public CA, ...


19

You need to prove DNS ownership before someone will sign a certificate for a given domain name. Just creating a CSR with the domain of Google won't be enough. If a certificate authority actually provided you a valid Cert for a domain you did not prove ownership of, that CA would be distrusted by people immediately and their root certs would be removed ...


19

The CRL's and also the OCSP responses are signed by the CA. This means any kind of manipulation will already be detected even if the CRL or OCSP response is transferred using an insecure transport. Thus the protection against tampering which is offered by https is not needed.


18

CA signed certs are not actually more secure than self-signed certs, in the sense that the level of encryption is the same. But there is a big difference in the level of trust between the two. Visitors to a site using a self-signed cert have to trust that the cert was generated by the site owner, simply because the site says it is. There is no easy way to ...


17

Certificates are a matter of trust. CA are supposed to be trustful globaly so we can rely on them even if we don't know each other. In cases where you are communicating with only people you know or .... yourself, like when you are responsible of a network of different machines, you can choose to rely on yourself more than to rely on a CA that in fact, you ...


16

A digital signature, like all cryptographic algorithm, does not solve problems, it just moves them around. Take care that signatures are NOT encryption. If someone tried to explain signatures as a kind of encryption, then go find them and hit them in the teeth with a wrench, repeatedly. Tell them that they are unworthy, and I am disappointed with them. This ...


14

Theoretically, X.509 chains are unlimited in length. The Basic Constraints extension can apply a per-chain limit; this is used mostly for CA that agree to issue a sub-CA certificate but want to constraint that sub-CA to issue only end-entity certificates. Implementations may have limitations. In fact, with some carefully crafted certificates, one can make a ...


14

Yes, StartCom is a legitimate Certificate Authority. On the plus side, they were at one time the only provider which would hand out free SSL certificates which were recognized by the major browsers. (There's competition now in Let's Encrypt). On the minus side, their web site design and implementation is clunky, non-intuitive, and lacks pretty. (The ...


13

All certificates are signed in whole (protected against changes), so you can't change the name, or any other data inside it. The certificate of the server you connect to is signed by the issuer certificate, which in turn may be signed by other certificates higher up, this is the certificate chain. The top, aka root is signed by itself. If you make any ...


13

There is no technical/specification limit imposed on the length of certificate chains. (However, there are X509v3 attributes which can impose policy-based limits on the length of a certificate chain for a CA; see the pathLenConstraint field of Basic Constraints, RFC 5280, Section 4.2.1.9.) With longer chains, verifying clients need to perform a little more ...


13

Is that correct? Is there another benefit? An offline Root CA sacrifices convenience to gain security. But, anyway, CA must issue new Intermediate CA certificates and revoke the old ones... so the only benefit that I can find is that CA issue different Intermediate certificate for different purposes. Yes, in case of a compromised Intermediate, ...


12

Simply put, the webmaster of the site uploads the certificate to CloudFlare. See this article for details. The Keyless mode doesn't have this requirement. It uses an on premise key server instead, to provide the private key of the server. See the diagram here for details on how this works. For free accounts Cloudflare state in their blog: For all ...


12

Does Google's decision mean that it would be prudent for me to also delete or disable the root CA from my machine? Dunno. Symantec ain't being too helpful. Theoretically it should not hurt but something seems to be broken in clients. Also: Vendors don't seem to agree on this. I've whipped up a quick script and parsed four trust stores (Apple, Java, ...


12

It's not about the trust in the certificate itself, but about the process of verification. First: feasibility. If a certificate is renewed/compromised would you expect the for example a bank to launch worldwide ad campaign "we have just changed our certificate, please update your smartphones, browsers, etc."? It's impossible to achieve on a massive scale. ...


11

Intentionally "spying" on yourself for debugging purposes, using proxy tools like Fiddler or Charles to capture https traffic. These tools are often used by mobile app developers, among others, to debug client-server communications. A root CA can be generated and installed on a mobile device, a computer set as that device's http proxy, and all web traffic, ...


10

As pointed out in other answers, the reason why you see "Kaspersky Anti-Virus Personal Root Certificate" is because Kaspersky intercepts the connection, in order to scan for malware. Now, the reason why it isn't the case for Google websites in Chrome is not related to certificate pinning: Chrome does not perform pin validation when the certificate ...


10

Another (additional) answer is that private CA have a different security domain than public CAs. A public CA will certify public information: the fact that the owner of the private key matching has particular public right at the moment of the request. they don't really care about internal segregation and will definitely not secure internal resource (for ...


10

Try "acme-tiny" There is an alternative "Let's encrypt"-client project called "acme-tiny". It is less automated, but smaller. In their own words: This is a tiny, auditable script that you can throw on your server to issue and renew Let's Encrypt certificates. Since it has to be run on your server and have access to your private Let's Encrypt account ...


9

what stops an individual from purchasing a certificate and certifying a site they do not own? Common methods of ownership validation are: adding an DNS record uploading a file to your web sending and email to person in WHOIS adding a meta tag to first page What stops me from registering that site xxx.com, with another CA? Nothing. You are allowed ...



Only top voted, non community-wiki answers of a minimum length are eligible