RichFaces is an open source framework that adds Ajax capability into existing JavaServer Faces (JSF) applications.
A flaw was found in the way RichFaces ResourceBuilderImpl handled deserialization. A remote attacker could use this flaw to trigger the execution of the deserialization methods in any serializable class deployed on the server. This could lead to a variety of security impacts depending on the deserialization logic of these classes. (CVE-2013-2165)
The fix for this issue introduces a whitelist to limit classes that can be deserialized by RichFaces.
If you require to whitelist a class that is not already listed, for example, a custom class, you can achieve this by following one of these methods:
Method 1: Implementing the SerializableResource interface. In RichFaces 3, this is defined at org.ajax4jsf.resource.SerializableResource and in RichFaces 4/5, at org.richfaces.resource.SerializableResource.
Method 2: Adding the class to the resource-serialization.properties file (a default properties file is provided once this update is applied). To do this you can extend the framework provided properties file that is available under org.ajax4jsf.resource in RichFaces 3 and org.richfaces.resource in RichFaces 4/5. The modified properties file has to be copied into the classpath of your deployment under the version-specific packages.
Where possible, it is recommended that Method 1 be followed.
Red Hat would like to thank Takeshi Terada (Mitsui Bussan Secure Directions, Inc.) for reporting this issue.
Warning: Before applying this update, back up your existing Red Hat JBoss Web Platform installation (including all applications and configuration files).
All users of Red Hat JBoss Web Platform 5.2.0 on Red Hat Enterprise Linux 4, 5, and 6 are advised to upgrade to these updated packages. The JBoss server process must be restarted for the update to take effect.