I am trying to compile a complete list of all the restrictions placed on unsigned Java applets (defined as things that a normal Java application can do, but an unsigned Java applet cannot).
This is the list I have compiled so far:
Unbound Java applet ...
- Unable to access local file system.
- Unable to access system buffer.
- Cannot start print job.
- It is impossible to connect to resources or receive resources from any third-party server (on any server except the server from which the applet was created).
- Unable to use multicast sockets.
- Cannot create or register
SocketImplFactory , URLStreamHandlerFactory or ContentHandlerFactory . - Unable to listen for incoming socket connections.
- Unable to listen to datagrams.
- Unable to access some system properties (java.class.path, java.home, user.dir, user.home, user.name).
- Unable to create or register a
SecurityManager object. - It is not possible to dynamically load native code libraries using the
load() or loadLibrary() methods of Runtime or System . - It is not possible to create new processes by calling any of the
Runtime.exec() methods. - It is not possible to create or access threads or groups of threads outside of a thread group in which the untrusted code runs.
- Unable to define classes in
java.* , sun.* And netscape.* . - You cannot explicitly load classes from the
sun.* Package. - You cannot exit the Java runtime by calling
System.exit() or Runtime.exit() . - Unable to access the system event queue.
- It is not possible to use reflection methods
java.lang.Class to obtain information about non-public members of a class, unless the class has been loaded from the same host as the untrusted code. - It is not possible to manipulate security identifiers in any way (java.security).
- Unable to set or read security properties (java.security).
- Unable to list, find, insert, or delete security providers (java.security).
Question: Are there any restrictions? If yes, please clearly indicate what restriction, in your opinion, is not listed.
java security jvm applet
knorv
source share