Secure Sockets Layer (SSL)


SSL connection
Secure Sockets Layer

SSL (Secure Socket Layer) is a security protocol that provides authentication and encryption of communications over the Internet. It is used in web browsers to protect user information such as passwords, credit card numbers, and other sensitive data.


SSL was first developed in the mid-1990s by Netscape Communications. It has been updated over the years to address security vulnerabilities and is currently at version TLS 1.3. SSL is used in conjunction with the HTTP protocol to provide a secure communications channel. When a user visits a website that uses SSL, the web browser establishes a secure connection with the web server. This connection is used to transmit encrypted data between the browser and server.


SSL is also used to protect email communications. When an email client connects to an email server using SSL, the email client will establish a secure connection with the server and use it to transmit encrypted email messages.



SSL certificates


SSL certificates are used to encrypt traffic between a web server and a web browser. This is done to ensure that the data passing between the two is not intercepted by a third party. When a web browser connects to a web server that is using an SSL certificate, the web browser will check the certificate to make sure that it is valid If the certificate is valid, the web browser will then encrypt the traffic between the two using the certificate's private key. If you are using a web server that is not using an SSL certificate, you can purchase an SSL certificate from a third-party provider.


SSL certificates use public-key cryptography to create a secure connection. Public-key cryptography is a system in which two keys are used: a public key and a private key. The public key is used to encrypt data, and the private key is used to decrypt data. When an SSL certificate is installed on a web server, the server's public key is used to encrypt data, and the client's private key is used to decrypt data. This creates a secure connection between the server and the client.


There are a few ways to obtain an SSL certificate:

  1. Purchasing an SSL certificate from a trusted certificate authority (CA)

  2. Generating a self-signed SSL certificate

  3. Using an SSL certificate from a free certificate authority



Is SSL connection secure?


In most cases, the answer is ‘yes’. However, SSL connection is only a small part of a company’s overall security approach. Security Policy is a document that establishes approaches to security by company management, employees, and technical staff.


Below is a list of Secure Sockets Layer connection flaws discovered in previous years.


SSL Connection flaws

CVE-2016-2107, CVE-2016-2108, CVE-2016-2109, CVE-2016-2110, CVE-2016-2111, CVE-2016-2112, CVE-2016-2113, CVE-2016-2114, CVE-2016-2115, CVE-2016-2116, CVE-2016-2117, CVE-2016-2118, CVE-2016-2119, CVE-2016-2120, CVE-2016-2121, CVE-2016-2122, CVE-2016-2123, CVE-2016-2124, CVE-2016-2125, CVE-2016-2126, CVE-2016-2127, CVE-2016-2128, CVE-2016-2129, CVE-2016-2130, CVE-2016-3131, CVE-2016-3132, CVE-2016-3133, CVE-2016-3134, CVE-2016-3135, CVE-2016-3136, CVE-2016-3137, CVE-2016-3138, CVE-2016-3139, CVE-2016-3140, CVE-2016-3141, CVE-2016-3142, CVE-2016-3143, CVE-2016-3144, CVE-2016-3145, CVE-2016-3146, CVE-2016-3147, CVE-2016-3148, CVE-2016-3149



OpenSSL is a library that implements the Secure Sockets Layer (SSL) and Transport Layer Security (TLS) protocols, as well as a full-strength, general-purpose cryptography library. Below is a list of possible attacks that can compromise the company's data.


A remote attacker can exploit a flaw in the way OpenSSL handles:

  • SSLv2 handshake messages to cause a denial of service (application crash)

  • SSLv2 handshake messages to obtain sensitive information

  • DTLS packets to cause a denial of service (application crash)

  • DTLS packets to obtain sensitive information

  • Heartbeat Extension packets to cause a denial of service (application crash)

  • Heartbeat Extension packets to obtain sensitive information

  • ChangeCipherSpec messages to cause a denial of service (application crash)

  • ChangeCipherSpec messages to obtain sensitive information

  • the ServerKeyExchange message to cause a denial of service (application crash)

  • the ServerKeyExchange message to obtain sensitive information

  • the ClientKeyExchange message to cause a denial of service (application crash) the ClientKeyExchange message to obtain sensitive information

  • the Finished message to cause a denial of service (application crash)

  • the Finished message to obtain sensitive information

  • the EncryptedExtensions message to cause a denial of service (application crash) the EncryptedExtensions message to obtain sensitive information

  • the CertificateVerify message to cause a denial of service (application crash) the CertificateVerify message to obtain sensitive information

  • the Next Protocol Negotiation message to cause a denial of service (application crash)

  • and many more


In spite of the above-mentioned ways to break through an SSL encrypted connection, it will take a lot of effort from the attacker to prepare and successfully accomplish the malicious intrusion. Secure Sockets Layer will do its job making these efforts time-consuming and will continue to be used to secure connections between users and websites. It is still a reliable and trusted way to ensure that communications are private and trustworthy.