...
- a memory leak (see rule MSC04-J. Do not leak memory).
- an infinite loop.
- limited amounts of default heap memory available .
- incorrect implementation of common data structures (hash tables, vectors, and so on).
- unbounded deserialization.
- writing a large number of objects to an
ObjectOutputStream
(see rule SER10-J. Avoid memory and resource leaks during serialization). - creating a large number of threads.
- uncompressing a file (see rule IDS04-J. Limit the size of files read Safely extract files from ZipInputStream).
Some of these causes are platform-dependent and difficult to anticipate. Others are fairly easy to anticipate, such as reading data from a file. As a result, programs must not accept untrusted input in a manner that can cause the program to exhaust memory.
...
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="3659723fc5c9b39a-22637e5a-45fb4df3-9bbf816a-cc0a0997fd72d49c37ffdec3"><ac:plain-text-body><![CDATA[ | [ISO/IEC TR 24772:2010 | http://www.aitcnet.org/isai/] | Resource Exhaustion [XZP] | ]]></ac:plain-text-body></ac:structured-macro> |
CWE-400. Uncontrolled resource consumption ("resource exhaustion") | ||||
| CWE-770. Allocation of resources without limits or throttling |
...
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="0fcf6eba323846f9-01e65b11-4c034874-b1448f32-ad6d4c52fe8388d19c94de47"><ac:plain-text-body><![CDATA[ | [[API 2006 | AA. References#API 06]] | Class | ]]></ac:plain-text-body></ac:structured-macro> | |
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="d98e0bef2f947593-fc8ccf69-46454897-8b43a29b-2ba600af5ab4ed0eceeb7f78"><ac:plain-text-body><![CDATA[ | [[Java 2006 | AA. References#Java 06]] | [java – The Java application launcher | http://java.sun.com/javase/6/docs/technotes/tools/windows/java.html], Syntax for increasing the heap size | ]]></ac:plain-text-body></ac:structured-macro> |
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="f97a466f2c5409df-a0e7a458-46ba4d85-a39f89a9-0138475c491bc2e89e6b67ef"><ac:plain-text-body><![CDATA[ | [[SDN 2008 | AA. References#SDN 08]] | [Serialization FAQ | http://java.sun.com/javase/technologies/core/basic/serializationFAQ.jsp] | ]]></ac:plain-text-body></ac:structured-macro> |
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="02be986649d651e5-a7a8596c-4f064e7c-ab2493ba-09c417d602d21425473c10c5"><ac:plain-text-body><![CDATA[ | [[Sun 2003 | AA. References#Sun 03]] | Chapter 5, Tuning the Java Runtime System, [Tuning the Java Heap | http://docs.sun.com/source/817-2180-10/pt_chap5.html#wp57027] | ]]></ac:plain-text-body></ac:structured-macro> |
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="5991b576a6c255e6-a9afc2a4-4ae94a7d-bdb38933-7ca3c88f23241d2c670cbade"><ac:plain-text-body><![CDATA[ | [[Sun 2006 | AA. References#Sun 06]] | [Garbage Collection Ergonomics | http://java.sun.com/javase/6/docs/technotes/guides/vm/gc-ergonomics.html ], Default values for the Initial and Maximum Heap Size | ]]></ac:plain-text-body></ac:structured-macro> |
...