989
An adversary can cause significant resource consumption on a server by filtering the cryptographic
algorithms offered by the client to the ones that are the most resource-intensive on the server side.
After discovering which cryptographic algorithms are supported by the server, a malicious client
can send the initial cryptographic handshake messages that contains only the resource-intensive
algorithms. For some cryptographic protocols, these messages can be completely prefabricated,
as the resource-intensive part of the handshake happens on the server-side first (such as TLS),
rather than on the client side. In the case of cryptographic protocols where the resource-intensive
part should happen on the client-side first (such as SSH), a malicious client can send a forged/
precalculated computation result, which seems correct to the server, so the resource-intensive
part of the handshake is going to happen on the server side. A malicious client is required to send
only the initial messages of a cryptographic handshake to initiate the resource-consuming part of
the cryptographic handshake. These messages are usually small, and generating them requires
minimal computational effort, enabling a denial-of-service attack. An additional risk is the fact that
higher key size increases the effectiveness of the attack. Cryptographic protocols where the clients
have influence over the size of the used key (such as TLS 1.3 or SSH) are most at risk, as the
client can enforce the highest key size supported by the server.
Observed Examples
Reference Description
CVE-1999-0513 Classic "Smurf" attack, using spoofed ICMP packets to broadcast addresses.
https://www.cve.org/CVERecord?id=CVE-1999-0513
CVE-2003-1564 Parsing library allows XML bomb
https://www.cve.org/CVERecord?id=CVE-2003-1564
CVE-2004-2458 Tool creates directories before authenticating user.
https://www.cve.org/CVERecord?id=CVE-2004-2458
CVE-2020-10735 Python has "quadratic complexity" issue when converting string to int with
many digits in unexpected bases
https://www.cve.org/CVERecord?id=CVE-2020-10735
CVE-2020-5243 server allows ReDOS with crafted User-Agent strings, due to overlapping
capture groups that cause excessive backtracking.
https://www.cve.org/CVERecord?id=CVE-2020-5243
CVE-2013-5211 composite: NTP feature generates large responses (high amplification factor)
with spoofed UDP source addresses.
https://www.cve.org/CVERecord?id=CVE-2013-5211
CVE-2002-20001 Diffie-Hellman (DHE) Key Agreement Protocol allows attackers to send
arbitrary numbers that are not public keys, which causes the server to perform
expensive, unnecessary computation of modular exponentiation.
https://www.cve.org/CVERecord?id=CVE-2002-20001
CVE-2022-40735 The Diffie-Hellman Key Agreement Protocol allows use of long exponents,
which are more computationally expensive than using certain "short
exponents" with particular properties.
https://www.cve.org/CVERecord?id=CVE-2022-40735
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 730 OWASP Top Ten 2004 Category A9 - Denial of Service 711 2339
MemberOf 855 The CERT Oracle Secure Coding Standard for Java
(2011) Chapter 12 - Thread Pools (TPS)
844 2367
MemberOf 857 The CERT Oracle Secure Coding Standard for Java
(2011) Chapter 14 - Input Output (FIO)
844 2368
MemberOf 977 SFP Secondary Cluster: Design 888 2407
CWE Version 4.14
CWE-406: Insufficient Control of Network Message Volume (Network Amplification)
CWE-406: Insufficient Control of Network
Message Volume (Network Amplification) 990
Nature Type ID Name Page
MemberOf 1145 SEI CERT Oracle Secure Coding Standard for Java -
Guidelines 11. Thread Pools (TPS)
1133 2450
MemberOf 1147 SEI CERT Oracle Secure Coding Standard for Java -
Guidelines 13. Input Output (FIO)
1133 2450
MemberOf 1416 Comprehensive Categorization: Resource Lifecycle
Management
1400 2545
Taxonomy Mappings
Mapped Taxonomy Name Node ID Fit Mapped Node Name
PLOVER Asymmetric resource consumption
(amplification)
OWASP Top Ten 2004 A9 CWE More Specific Denial of Service
WASC 41 XML Attribute Blowup
The CERT Oracle Secure
Coding Standard for Java
(2011)
TPS00-J Use thread pools to enable graceful
degradation of service during traffic
bursts
The CERT Oracle Secure
Coding Standard for Java
(2011)
FIO04-J Release resources when they are no
longer needed
References
[REF-1164]Ilya Kantor. "Catastrophic backtracking". 2020 December 3. < https://javascript.info/
regexp-catastrophic-backtracking >.
CWE-406: Insufficient Control of Network Message Volume (Network
Amplification)
Weakness ID : 406
Structure : Simple
Abstraction : Class
Description
The product does not sufficiently monitor or control transmitted network traffic volume, so that an
actor can cause the product to transmit more traffic than should be allowed for that actor.
Extended Description
In the absence of a policy to restrict asymmetric resource consumption, the application or system
cannot distinguish between legitimate transmissions and traffic intended to serve as an amplifying
attack on target systems. Systems can often be configured to restrict the amount of traffic sent
out on behalf of a client, based on the client's origin or access level. This is usually defined in a
resource allocation policy. In the absence of a mechanism to keep track of transmissions, the
system or application can be easily abused to transmit asymmetrically greater traffic than the
request or client should be permitted to.
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 405 Asymmetric Resource Consumption (Amplification) 986
CWE Version 4.14
CWE-406: Insufficient Control of Network Message Volume (Network Amplification)
CWE-406: Insufficient Control of Network
Message Volume (Network Amplification)