Los ataques de agotamiento de recursos son vulnerabilidades de seguridad informática que bloquean , bloquean o interfieren de alguna otra manera con el programa o sistema en cuestión. Son una forma de ataque de denegación de servicio , pero son diferentes de los ataques de denegación de servicio distribuidos , que implican saturar un host de red, como un servidor web, con solicitudes de muchas ubicaciones. [1]
Los ataques de agotamiento de recursos generalmente explotan un error de software o una deficiencia de diseño. En el software con administración manual de memoria (generalmente escrito en C o C++ ), las fugas de memoria son un error muy común que se explota para el agotamiento de recursos. Incluso si se utiliza un lenguaje de programación con recolección de basura , los ataques de agotamiento de recursos son posibles si el programa usa la memoria de manera ineficiente y no impone límites a la cantidad de estado que se usa cuando es necesario.
Las fugas de descriptores de archivos son otro vector común . La mayoría de los lenguajes de programación de propósito general requieren que el programador cierre explícitamente los descriptores de archivos, por lo que incluso los lenguajes de nivel particularmente alto permiten que el programador cometa tales errores.