Skip to content

Test your website now

Free, no card. We read only public pages.

Run free audit →

Security · Medium severity

Weak Cipher Suite Negotiated: Review and Harden TLS

Fix a weak cipher suite finding. Review negotiated and supported suites, prefer modern AEAD configurations, test old clients, and understand scan limits.

Published · Updated

What the check tests

Check
sec.tls.cipher-strength - Negotiated cipher suite is strong
Passes when
The handshake must negotiate an AEAD suite (AES-GCM or ChaCha20-Poly1305), and a second handshake offering only deprecated suites must be refused. A family the scanner's own TLS build cannot offer is reported as untested, never as absent.
Scope
graded once per site
Severity
Medium
Fix effort
small - under an hour
Impact when fixed
medium

In one paragraph

A weak cipher suite finding means the TLS connection selected an outdated suite or a targeted probe found a deprecated family still accepted by the server. Review the negotiated suite and probe evidence separately. Update the configuration at the actual TLS endpoint, prefer modern authenticated encryption, and verify compatibility before disabling legacy suites that existing clients may still use.

Why it matters

A TLS cipher suite identifies cryptographic algorithms used to protect a connection. In TLS 1.2 its name also reflects authentication and key-exchange choices; TLS 1.3 separates more of those decisions. A trusted certificate alone does not establish that the negotiated cryptography is appropriate.

Not all legacy suites have the same weaknesses. NULL, export-grade, RC4, and DES-family configurations require different analysis from CBC-mode suites. Modern hardening guidance prefers authenticated encryption with associated data, or AEAD, such as AES-GCM and ChaCha20-Poly1305, and suitable forward-secret key exchange where applicable. Do not label every CBC connection as immediately decryptable; the goal is to avoid older constructions and their operational risks.

A server can choose a strong suite for a modern client while still accepting weaker offers from another client. Observing one good negotiation is therefore not a complete inventory of server support.

How WebAuditOS evaluates this finding

According to the supplied specification, the check records a normal negotiated suite and then attempts additional handshakes offering selected deprecated families. Negotiated RC4, 3DES, DES, NULL, export-grade, or MD5-related suites fail. A negotiated CBC suite warns. A negotiated AEAD suite also warns if a deprecated family is accepted in a probe. AEAD plus refusal of the tested families passes; failed or unavailable testing can remain ungraded as specified.

The documented scanner runtime cannot offer RC4 or 3DES. Those families must be described as not tested, not as disabled. Evidence should distinguish the selected suite, accepted or rejected probes, and unavailable tests. A pass is bounded by those capabilities and does not certify the complete TLS configuration.

How to fix it

  1. Locate TLS termination. Public visitors may negotiate with a CDN or load balancer rather than nginx or Apache on your origin. Change the configuration that actually serves the scanned hostname, and review the edge-to-origin connection separately if applicable.
  2. Read the evidence before changing settings. Determine whether the issue is the normally negotiated suite, an accepted legacy probe, or incomplete coverage. Record the hostname, port, scan time, and negotiated protocol version alongside the suite.
  3. Use a maintained configuration profile suited to your server, TLS library, and clients. Mozilla's TLS configuration generator or your managed platform's current security policies are better starting points than an old cipher string copied from a blog. Review the profile's current compatibility claims rather than assuming its name guarantees a fixed list forever.
  4. Prefer TLS 1.3 and appropriately configured TLS 1.2 where compatibility requires it. For TLS 1.2, favour AEAD suites with suitable ephemeral key exchange and disable obsolete families. Do not assume an AES-GCM label alone proves forward secrecy; key-exchange choices matter as well.
  5. Check how your stack separates protocol settings. TLS 1.3 suites may use a different configuration mechanism from TLS 1.2 and earlier. A change to one cipher-list directive may leave another protocol's settings unchanged. Follow the documentation for the deployed versions.
  6. Test in staging and review real-client usage at the TLS endpoint. Logs may identify integrations still using legacy protocols or suites. Contact affected partners before tightening a public API that supports older runtimes.
  7. Validate and deploy the configuration safely, then test from outside. Use a capable enumeration tool such as testssl.sh or an SSL Labs assessment to examine enabled suites beyond the scanner's limited probes. A local test tool's inability to offer a legacy algorithm is not evidence that the server rejected it.
  8. Rescan in WebAuditOS and compare equivalent endpoints. Keep unavailable-family limitations visible rather than treating a newly green result as a comprehensive security certification.

What the fix can break

Clients without a remaining mutually supported suite cannot complete the handshake. They may fail before sending any HTTP request, so application logs alone can miss the outage. Check TLS-layer errors and partner reports after rollout.

Old Java or embedded integrations may be a more significant compatibility concern than current browsers. Do not retain deprecated suites indefinitely without a documented owner, need, and retirement plan.

On a managed edge, the chosen security policy may also change protocol versions or other TLS parameters. Review the whole change, not just its cipher labels. Maintain a tested deployment rollback, while recognising that restoring a weak profile reintroduces its risk.

Questions

Does a valid certificate mean the cipher suite is secure?

No. Certificate validation and cryptographic negotiation address different parts of the connection. Both need appropriate configuration.

Does a passing scan prove RC4 and 3DES are disabled?

Not for the documented WebAuditOS implementation, whose runtime cannot offer them. Use a capable independent test and inspect explicit not-tested evidence.

Should I disable TLS 1.2 entirely?

Not automatically. Properly configured TLS 1.2 can remain appropriate for compatibility. Prefer TLS 1.3 and use a maintained profile for any supported older protocol.

Review certificate-chain validation, the security headers guide, and the website audit checklist. Secure headers do not repair weak transport cryptography.

Standards and sources

  • Mozilla TLS guidelines

In the report

Test this on your own site

Every scan runs sec.tls.cipher-strength on every page it crawls, on every plan. The finding carries this id, so a line in a report can be matched to the explanation above - and the free scan needs no account.