Server supports outdated TLS 1.0 / 1.1

What it is

Your server still accepts connections over TLS 1.0 or TLS 1.1. These versions have been officially deprecated since 2020 — every major browser has dropped support for them. The modern web should speak only TLS 1.2 and TLS 1.3.

Why it’s a problem

TLS 1.0 and 1.1 contain publicly known attacks: BEAST, POODLE, renegotiation issues, and weak ciphers. An attacker on the network between you and the server can, in some cases, read or modify the content.

Secondarily, this is often a compliance finding. PCI-DSS has required TLS 1.2+ since 2018. ZoKB / NIS2 auditors check for it too.

How to fix it

nginx

ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;

Apache

SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
SSLHonorCipherOrder on
SSLCipherSuite HIGH:!aNULL:!MD5

Cloudflare

SSL/TLS → Edge Certificates → Minimum TLS Version → TLS 1.2. No restart needed.

Verification

After deploying, verify the result with a fresh scan at vulscan.app (the TLS-version check is part of the free scan) or via nmap --script ssl-enum-ciphers -p 443 example.cz.

What can go wrong

Very old clients (IE 10, Android < 5, payment terminals with legacy firmware) without TLS 1.2 will lose access. For the vast majority of B2C websites this is not a problem. If you have a specific reason (a B2B integration with a legacy system), have the client upgrade — downgrading on your server would be a trap for everyone else.

References