Resource Exhaustion

Denial of service can occur when resource usage is disproportionately large in comparison to the input data that causes the resource usage.

This guideline is of greater concern for persistent, server-type systems than for desktop applications. Checking inputs for excessive resource consumption may be unjustified for client software that expects the user to handle resource-related problems. Even for client software, however, should check for inputs that could cause persistent denial of service, such as filling up the file system.

The _Secure Coding Guidelines for the Java Programming Language_ \[[SCG 2009|AA. Bibliography#SCG 09]\] lists some examples of possible attacks:

Rules for preventing denial of service attacks resulting from resource exhaustion include:

Deadlock

Other Denial of Service