...
- 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 passed to read 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="e13b24d900234ff0-d152b36c-43e54ec4-9f68826b-bf9dbe4462ade05f603d78e0"><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="95ec8bd35aaaee37-75e9aab1-41174f06-8190aff8-caf45f45b17b34a6746c9006"><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="d206ccda66f9815d-1dfeb1e2-474a4097-9631ba65-f70d0ee2fa2dbb249df4df0e"><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="1bb10883808461a7-6e952127-4b254da1-94f9b0a8-60ee08acd87aa22e9bb84ff9"><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="64fcdc498cba8f38-30d98ee0-4f0148fd-b1a6a77f-a2af5512a07680187d4bdd1b"><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="aa59f429ccdbca00-347840cb-4e564cc9-9e34a1c1-d1e5d8a66a0311dff86af70a"><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> |
...