1581
Nature Type ID Name Page
MemberOf 1349 OWASP Top Ten 2021 Category A05:2021 - Security
Misconfiguration
1344 2493
MemberOf 1405 Comprehensive Categorization: Improper Check or
Handling of Exceptional Conditions
1400 2531
CWE-757: Selection of Less-Secure Algorithm During Negotiation ('Algorithm
Downgrade')
Weakness ID : 757
Structure : Simple
Abstraction : Base
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.
Extended Description
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.
Relationships
The table(s) below shows the weaknesses and high level categories that are related to this
weakness. These relationships are defined as ChildOf, ParentOf, MemberOr and give insight to
similar items that may exist at higher and lower levels of abstraction. In addition, relationships such
as PeerOf and CanAlsoBe are defined to show similar weaknesses that may want to be explored.
Relevant to the view "Research Concepts" (CWE-1000)
Nature Type ID Name Page
ChildOf 693 Protection Mechanism Failure 1520
PeerOf 1328 Security Version Number Mutable to Older Versions 2217
Relevant to the view "Architectural Concepts" (CWE-1008)
Nature Type ID Name Page
MemberOf 1013 Encrypt Data 2428
Common Consequences
Scope Impact Likelihood
Access Control Bypass Protection Mechanism
Detection Methods
Automated Static Analysis
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 searching for potentially-vulnerable patterns that connect "sources" (origins of input)
with "sinks" (destinations where the data interacts with external components, a lower layer such
as the OS, etc.)
CWE Version 4.14
CWE-758: Reliance on Undefined, Unspecified, or Implementation-Defined Behavior
CWE-758: Reliance on Undefined, Unspecified,
or Implementation-Defined Behavior 1582
Effectiveness = High
Observed Examples
Reference Description
CVE-2006-4302 Attacker can select an older version of the software to exploit its vulnerabilities.
https://www.cve.org/CVERecord?id=CVE-2006-4302
CVE-2006-4407 Improper prioritization of encryption ciphers during negotiation leads to use of
a weaker cipher.
https://www.cve.org/CVERecord?id=CVE-2006-4407
CVE-2005-2969 chain: SSL/TLS implementation disables a verification step (CWE-325) that
enables a downgrade attack to a weaker protocol.
https://www.cve.org/CVERecord?id=CVE-2005-2969
CVE-2001-1444 Telnet protocol implementation allows downgrade to weaker authentication
and encryption using an Adversary-in-the-Middle AITM attack.
https://www.cve.org/CVERecord?id=CVE-2001-1444
CVE-2002-1646 SSH server implementation allows override of configuration setting to use
weaker authentication schemes. This may be a composite with CWE-642.
https://www.cve.org/CVERecord?id=CVE-2002-1646
MemberOf Relationships
This MemberOf relationships table shows additional CWE Catgeories and Views that reference this
weakness as a member. This information is often useful in understanding where a weakness fits
within the context of external information sources.
Nature Type ID Name Page
MemberOf 957 SFP Secondary Cluster: Protocol Error 888 2398
MemberOf 1346 OWASP Top Ten 2021 Category A02:2021 -
Cryptographic Failures
1344 2488
MemberOf 1413 Comprehensive Categorization: Protection Mechanism
Failure
1400 2542
Notes
Relationship
This is related to CWE-300, although not all downgrade attacks necessarily require an entity that
redirects or interferes with the network. See examples.
Related Attack Patterns
CAPEC-ID Attack Pattern Name
220 Client-Server Protocol Manipulation
606 Weakening of Cellular Encryption
620 Drop Encryption Level
CWE-758: Reliance on Undefined, Unspecified, or Implementation-Defined
Behavior
Weakness ID : 758
Structure : Simple
Abstraction : Class
Description
The product uses an API function, data structure, or other entity in a way that relies on properties
that are not always guaranteed to hold for that entity.
Extended Description
CWE Version 4.14
CWE-758: Reliance on Undefined, Unspecified, or Implementation-Defined Behavior
CWE-758: Reliance on Undefined, Unspecified,
or Implementation-Defined Behavior