COMMON ATTACK PATTERN ENUMERATION AND CLASSIFICATIONLive MITRE record

CAPEC-125

Flooding

An adversary consumes the resources of a target by rapidly engaging in a large number of interactions with the target. This type of attack generally exposes a weakness in rate limiting or flow. When successful this attack prevents legitimate users from accessing the service and can cause the target to crash. This attack differs from resource depletion through leaks or allocations in that the latter attacks do not rely on the volume of requests made to the target but instead focus on manipulation of the target's operations. The key factor in a flooding attack is the number of requests the adversary can make in a given period of time. The greater this number, the more likely an attack is to succeed against a given target.

Abstraction

Meta

Typical severity

Medium

Likelihood of attack

High

Understand the attack

What is this attack pattern?

An adversary consumes the resources of a target by rapidly engaging in a large number of interactions with the target. This type of attack generally exposes a weakness in rate limiting or flow. When successful this attack prevents legitimate users from accessing the service and can cause the target to crash. This attack differs from resource depletion through leaks or allocations in that the latter attacks do not rely on the volume of requests made to the target but instead focus on manipulation of the target's operations. The key factor in a flooding attack is the number of requests the adversary can make in a given period of time. The greater this number, the more likely an attack is to succeed against a given target.

Requirements

What does the attack require?

Prerequisites

  • Any target that services requests is vulnerable to this attack on some level of scale.

Skills required

Not stated in the MITRE record.

Resources required

  • A script or program capable of generating more requests than the target can handle, or a network or cluster of objects all capable of making simultaneous requests.

Impact

What does a successful attack lead to?

Unreliable ExecutionResource Consumption

Affected scopes: Availability

Defence

How is it prevented and mitigated?

1
Ensure that protocols have specific limits of scale configured.
2
Specify expectations for capabilities and dictate which behaviors are acceptable when resource allocation reaches limits.
3
Uniformly throttle all requests in order to make it more difficult to consume resources more quickly than they can again be freed.