Base · Medium

CWE-757: Selection of Less-Secure Algorithm During Negotiation ('Algorithm Downgrade')

A protocol or its implementation supports interaction between multiple actors and allows those actors to negotiate which algorithm should be used as a protection mechanism such as encryption or authen...

CWE-757 · Base Level ·5 CVEs

Description

A protocol or its implementation supports interaction between multiple actors and allows those actors to negotiate which algorithm should be used as a protection mechanism such as encryption or authentication, but it does not select the strongest algorithm that is available to both parties.

When a security mechanism can be forced to downgrade to use a less secure algorithm, this can make it easier for attackers to compromise the product by exploiting weaker algorithm. The victim might not be aware that the less secure algorithm is being used. For example, if an attacker can force a communications channel to use cleartext instead of strongly-encrypted data, then the attacker could read the channel by sniffing, instead of going through extra effort of trying to decrypt the data using brute force techniques.

Potential Impact

Access Control

Bypass Protection Mechanism

Detection Methods

  • Automated Static Analysis High — Automated static analysis, commonly referred to as Static Application Security Testing (SAST), can find some instances of this weakness by analyzing source code (or binary/compiled code) without having to execute it. Typically, this is done by building a model of data flow and control flow, then sea

Real-World CVE Examples

CVE IDDescription
CVE-2006-4302Attacker can select an older version of the software to exploit its vulnerabilities.
CVE-2006-4407Improper prioritization of encryption ciphers during negotiation leads to use of a weaker cipher.
CVE-2005-2969chain: SSL/TLS implementation disables a verification step (CWE-325) that enables a downgrade attack to a weaker protocol.
CVE-2001-1444Telnet protocol implementation allows downgrade to weaker authentication and encryption using an Adversary-in-the-Middle AITM attack.
CVE-2002-1646SSH server implementation allows override of configuration setting to use weaker authentication schemes. This may be a composite with CWE-642.

Frequently Asked Questions

What is CWE-757?

CWE-757 (Selection of Less-Secure Algorithm During Negotiation ('Algorithm Downgrade')) is a software weakness identified by MITRE's Common Weakness Enumeration. It is classified as a Base-level weakness. A protocol or its implementation supports interaction between multiple actors and allows those actors to negotiate which algorithm should be used as a protection mechanism such as encryption or authen...

How can CWE-757 be exploited?

Attackers can exploit CWE-757 (Selection of Less-Secure Algorithm During Negotiation ('Algorithm Downgrade')) to bypass protection mechanism. This weakness is typically introduced during the Architecture and Design phase of software development.

How do I prevent CWE-757?

Follow secure coding practices, conduct code reviews, and use automated security testing tools (SAST/DAST) to detect this weakness early in the development lifecycle.

What is the severity of CWE-757?

CWE-757 is classified as a Base-level weakness (Medium abstraction). It has been observed in 5 real-world CVEs.