DoS User Specified Object Allocation
DoS User Specified Object Allocation
It is possible to cause the environment to run out of memory if users are able to submit, either
directly or indirectly, a value that will determine how many of an object to construct on the
application server, and if the server does not enforce a hard upper limit on that value. The
appropriate number of objects may be allocated by the server; but, if this number is too high, the
server may experience severe problems, perhaps overloading its memory and degrading its
operation.
The following is a simple example of vulnerable code in Java:
A buffer overflow can occur in any language where the programmer is directly in charge of
managing memory allocation, most notably in C and C++. The ability to run arbitrary code on
the server is the most dangerous risk associated with a buffer overflow, but the first risk is the
possibility of an application crash causing a denial of service.