The product's resource pool is not large enough to handle peak demand, which allows an attacker to prevent others from accessing the resource by using a (relatively) large number of requests for resources.
Frequently the consequence is a "flood" of connection or sessions.
Threat Mapped score: 1.8
Industry: Finiancial
Threat priority: P4 - Informational (Low)
CVE: CVE-1999-1363
Large number of locks on file exhausts the pool and causes crash.
CVE: CVE-2001-1340
Product supports only one connection and does not disconnect a user who does not provide credentials.
CVE: CVE-2002-0406
Large number of connections without providing credentials allows connection exhaustion.
N/A
N/A
Phase | Note |
---|---|
Architecture and Design | N/A |
Implementation | N/A |
Operation | N/A |
Intro: In the following snippet from a Tomcat configuration file, a JDBC connection pool is defined with a maximum of 5 simultaneous connections (with a 60 second timeout). In this case, it may be trivial for an attacker to instigate a denial of service (DoS) by using up all of the available connections in the pool.
<Resource name="jdbc/exampledb" auth="Container" type="javax.sql.DataSource" removeAbandoned="true" removeAbandonedTimeout="30" maxActive="5" maxIdle="5" maxWait="60000" username="testuser" password="testpass" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/exampledb"/>