1

I'd like to know until what point and under what circumstances it is fine to rely on HTTPS for client-server communications. In the previous years, there has been some news about hacks of Certificates Authorities (like diginotar), I know there also are some flaws in the way HTTPS work, for example ISP DNS resolvers might not be trustworthy in some region, and send fake HTTPS certificates to the clients...

Let's say i'm running server hosting a website that will handle million dollars of money transactions, it will probably be subject to hacks. The server is ultra-secured (no DDOS, ssh intrusion or code injection possible), my concerns here are about the communication between my server and the clients that might live anywhere in the world.

My questions:

  • Is the choice of the CA to register my domain an important one?
  • Are there some CAs that are considered as more safe or less safe?
  • Are there some CAs that are blacklisted or forbidden access in some regions of the world? (This would make my clients from those regions unable to access my platform through HTTPS.)
  • Is it possible for ISPs to monitor the requests made from client for certificates, and sometime issue fake certificates?
  • 1
    You'll probably get more useful answers by asking one question at a time, since it fits the site's Q&A approach better. Your second and third questions may not be good fits though, since they would be heavily time-dependent: Symantec were considered safe prior to the incidents listed at wiki.mozilla.org/CA:Symantec_Issues but unsafe after. – Matthew Oct 26 '18 at 12:03
  • For $1M+ transactions, you should consider transaction signing on a second factor authentication device. SSL is mostly trustworthy but not perfect. Make sure to monitor certificate transparency logs for unexpected certificates issued to your domain. – paj28 Oct 26 '18 at 12:52
  • @paj28 , yes of course 2FA is important, but 2FA requires that the right web page is served to the client in the first place ;), if a hacker intercepts the requests and can usurp my domain name, It is already game over... – Lamouette Oct 26 '18 at 16:38
  • That's not true for all MFA. In particular, giving a signed transaction to a malicious website does not let an attacker perform fraud. – paj28 Oct 26 '18 at 23:04
1
  • Is the choice of the CA to register my domain an important one?

Yes. There have been physical on-premise breaches that have exposed signing certificates from some CAs (RSA). There are CAs that have issued bogus certs for legitimate companies (THAWTE/Symantec, China). There are CAs that have been banned for chronically/"mistakenly" issued bogus certs that have ended up used in malware or used to provide for illegal SSL interception of legitimate sites. (China's Wosign and CNNIC)

  • Are there some CAs that are considered as more safe or less safe?

In my opinion, yes. According to people who build and maintain certificate untrusted lists, yes. Google actually maintains a list and API of untrusted certs via project called Submariner.

  • Are there some CAs that are blacklisted or forbidden access in some regions of the world? (This would make my clients from those regions unable to access my platform through HTTPS.)

Yes, but the matrix of what country trusts what CA doesn't exist. And even worse, unless you're living in a country who controls your Internet access, the problem becomes more nebulous with trying to determine what companies trusts what CAs...

  • Is it possible for ISPs to monitor the requests made from client for certificates, and sometime issue fake certificates?

It is possible for people inline to your connection to perform an SSL/TLS Man-in-the-middle attack (commonly dubbed, SSL Interception) but if, as the user initiating the connection, you're checking your certificates when your browser complains about a problem, you should see it (e.g. go to https://www.google.com and the cert your browser sees is for some-other-registrant).

If you are still using SSL and some early versions of TLS, there are known attacks for them as well.

If you are still using old certificates that are using antequated hashing or encryption algorithms, there are attacks against them as well (e.g. DES, 3DES, MD4/5).

  • Your answers to the first two questions seem to be ignoring the fact that a breached CA can compromise your site regardless of what CA your site is using for its certificate. CA A's cert is just as valid for your site as CA B's cert, regardless of which of those certificates was actually authorized by you. – Ajedi32 Oct 26 '18 at 14:22
  • Ajedi32, your answer is both correct and misleading. Yes, a different compromised CA can still expose your company by intercepting users' traffic. But that doesn't cover the fact that if the certificate authority YOU chose was compromised due to lack of security or failure to secure your signing certificates will cause a business outage and cost money as you have to go through and get new certs issued and then update them throughout your SSL/TLS infrastructure--which, depending on your business, could have enormous implications. – thepip3r Oct 26 '18 at 14:27
0

Look into public key pinning, which provides some protection against compromised certificate authorities:

https://developer.mozilla.org/en-US/docs/Web/HTTP/Public_Key_Pinning

  • 1
    Note that HPKP is deprecated as of Chrome 67, in favour of Expect-CT - currently no information about whether other browsers will follow this. – Matthew Oct 26 '18 at 12:49

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.