If you have a website that accepts online payments, this affects you.
The PCI Security Standards Council is requiring all payment processors and merchants to move to TLS 1.2 and above by June 30, 2018. “But that’s a year away,” you’re saying; “why should I care now?” Well, PCI recommends switching as soon as possible, and several major payment gateways are heeding this advice. PayPal and Braintree will be requiring TLS 1.2 by June 30, 2017, and disabling all older protocols (SSL v3, TLS 1.0, and TLS 1.1). Authorize.Net will be following suit and disabling everything below TLS 1.2 September 18, 2017. That means if you use PayPal or Braintree with your eCommerce store, you must ensure your server supports TLS 1.2 in the next few weeks, or you risk being unable to process payments.
In the short term, your immediate concern is probably to ensure your website doesn’t break when your payment processor (PayPal, Braintree, Authorize.Net, etc.) stops supporting the older protocols. Each payment provider’s sandbox environment already has the new protocols in place, which can be used to verify compliance.
But longer term, your own website needs to be compatible too: If you accept SSLv3 or TLS 1.0 connections beyond June 2018, your site will not be PCI-compliant. You may have experienced your PCI Approved Scanning Vendor (ASV) scan already flagging your server for supporting the old protocols; the original deadline was June 2016. Right now you can get away with that given the right documentation, but you won’t be able to forever.
One of the primary reasons to delay (and the reason the original PCI deadline was pushed back) was that TLS 1.1 and 1.2 are not supported by default on Internet Explorer 10 or below. IE 8-10 are capable of supporting TLS 1.1 and 1.2, on some operating systems, but the feature must be manually enabled. Turning off TLS 1.0 on your server will mean any users whose browsers do not support the new protocols will be unable to access “https://” pages on your website. Instead, they will receive an error message: “Internet Explorer cannot display the webpage.” With usage of those older versions quickly dwindling, this is becoming less of a concern. Check your website analytics data to see how much of your traffic would be affected.
The situation amounts to this: If your server does not support TLS 1.2 by June 30, 2017, you may not be able to process payments. If your server still accepts TLS 1.0 on June 30, 2018, you will not be PCI-compliant.
What’s the Difference between SSL and TLS?
SSL (Secure Socket Layer) and TLS (Transport Layer Security) are both protocols that encrypt and authenticate data when information is sent between applications and servers. The difference between the two is how the encryption is initiated. SSL came first, back in the 90s. However, it was only around for a few years before major problems were identified. The POODLE attack (see below) in 2011 was the last straw for SSL; its use is no longer recommended at all. TLS 1.0 is basically an updated version of the SSL protocol, and TLS 1.1, 1.2, and 1.3 have built on top of that with increasingly enhanced security. TLS is now the only protocol that anyone should be using.
This can be confusing because everyone refers to SSL and TLS interchangeably. It gets even more confusing with SSL being used to refer to certificates. Your security certificate does not impact your SSL or TLS protocols. Getting a new certificate will not change whether or not you are using SSL or TLS, and your existing SSL/TLS certificate works with both. Supporting TLS is a change that occurs at the server level, based on the versions and configuration of your server operating system and software.
Past SSL/TLS Attacks
There have been three major vulnerabilities found in SSL and TLS in the past several years. These are the reason security experts and PCI are pushing everyone toward the newest protocols.
Short for Browser Exploit Against SSL/TLS, BEAST attacked a cipher block chaining vulnerability in TLS 1.0. It used a man-in-the-middle (MITM) attack to obtain information about the plaintext. A MITM attack describes when a hacker can secretly insert themselves between two parties who are trying to communicate, intercepting and altering the information without their knowledge. In this case, the attacker inserts themselves between the browser and the server. By comparing encrypted and unencrypted information from the initialization vector, the attacker can effectively guess the information that was sent. TLS 1.2 is not affected by this vulnerability.
Meaning Compression Ratio Info-leak Made Easy, CRIME is a MITM attack that works by exploiting a problem in compression to obtain a cookie, thus allowing the attacker to gain control of the session and hack the victim’s account. TLS uses compression to reduce bandwidth and increase security when sending a lot of information. Compression works by replaced repeated characters with a reference to the first time the character was used. An attacker can manipulate the compression and determine the size and value of the user’s cookie. TLS 1.2 has a way around this vulnerability.
Finally, POODLE stands for Padding Oracle On Downgraded Legacy Encryption, and affects SSL 3.0. Like the BEAST attack, POODLE is a MITM attack that exploits the cipher block chaining. In this case, the problem with CBC is that if there is not enough data to finish the last block of the cipher, padding is added. Servers don’t care about what’s actually in this padding, only the size of it. The attacker positions themselves between the client and the server and rejects higher level, more secure SSL/TLS versions until they get down to SSL 3.0. Then, they change the padding and see if the server notices. According to Google, the server does not notice once out of every 256 times, allowing the attacker to start decrypting the data. This vulnerability is avoided by discontinuing all use of SSL 3.0.
Protect Your Business and Your Customers – Support TLS 1.2 Now
Web security is constantly evolving and improving. Keeping up to date is an important responsibility for any eCommerce store, and a necessary step for maintaining PCI compliance. Not only does it help protect your customers, it protects your company. Irreparable damage has been done to businesses whose customer database or credit card information had been stolen. Consumer trust can take months or years to gain, and only a moment to lose.
ParadoxLabs has extensive experience with payment processing and SSL/TLS. If your site is not currently compatible, or you are not sure, we can help coordinate with all the necessary third parties to get your store up to these standards.
Contact us today and secure your site with TLS 1.2.