Oracle added a feature in Java that lets companies control what specific Java applets are allowed to run on their endpoint computers, which could help them better manage Java security risks.
The new feature is called the "Deployment Rule Set" and was added in Java 7 Update 40 (Java 7u40) that was released Tuesday.
Many home users can protect themselves from attacks targeting Java by disabling the Java plug-in in their browsers or uninstalling the software completely. However, most companies can't do this, because their employees need access to Web-based, business-critical applications that require Java support.
Many companies can't upgrade to new Java versions for compatibility reasons, which increases the risk of their computers being compromised through Java exploits while their employees surf the Web.
A recent study by security firm Bit9 showed that over 80 percent of Java-enabled enterprise computers run Java 6, with the most widely deployed version being Java 6 Update 20. Oracle ended its public support for Java 6 in April and only users with commercial support contracts can still get security patches for it.
Security researchers criticized Oracle in the past for not adding a whitelisting feature in Java that could be used to only allow specific applets chosen by the user to run inside the browser. It seems that the company listened and the new "Deployment Rule Set" feature can now be used to do that.
The feature gives system administrators fine-grained control over the execution of applets by allowing them to create an XML file with rules for how known applets should be handled by the Java plug-in.
The rules identify Java RIAs (rich Internet applications) -- Java applets and Java Web Start applications -- by their location URL or title and define what action should be taken for them. The possible actions are: running them without displaying most security prompts, handling them using the plug-in's default behavior -- running them while displaying all applicable security prompts -- or blocking them.
Rules added to the XML file are tested sequentially, so they can be used to create a white list. Administrators can first create rules that would match specific RIAs and allow them to run and then add a general rule at the end of the file to block all applications that don't match the first rules.
The rule set file needs to be digitally signed with a digital certificate issued by a trusted certificate authority, packaged as a Java archive (JAR) and placed in a specific directory inside the Java installation on all computers where those rules are to be applied.
"The Deployment Rule Set feature is optional and shall only be used internally in an organization with a controlled environment," Oracle said in the feature's documentation. "If a JAR file that contains a rule set is distributed or made available publicly, then the certificate used to sign the rule set will be blacklisted and blocked in Java."
Companies will need to install Java 7u40 in order to use the new feature, but the feature can be used to create rules that force certain RIAs to be executed with older Java versions installed on the same computers. This will allow companies to maintain compatibility for older applications.