PT-2011-4180 · Spring · Spring Security+1

Wouter Coekaerts

·

Published

2011-10-04

·

Updated

2022-07-17

·

CVE-2011-2894

CVSS v2.0

6.8

Medium

VectorAV:N/AC:M/Au:N/C:P/I:P/A:P
Name of the Vulnerable Software and Affected Versions Spring Framework versions 3.0.0 through 3.0.5 Spring Security versions 2.0.0 through 2.0.6 Spring Security versions 3.0.0 through 3.0.5
Description The issue allows remote attackers to bypass intended security restrictions and execute untrusted code by deserializing objects from untrusted sources. This can be achieved by serializing a java.lang.Proxy instance and using InvocationHandler, or by accessing internal AOP interfaces. An example of exploitation is the deserialization of a DefaultListableBeanFactory instance to execute arbitrary commands via the java.lang.Runtime class.
Recommendations For Spring Framework versions 3.0.0 through 3.0.5, consider disabling the deserialization of objects from untrusted sources until a patch is available. For Spring Security versions 2.0.0 through 2.0.6, restrict access to internal AOP interfaces to minimize the risk of exploitation. For Spring Security versions 3.0.0 through 3.0.5, avoid using the InvocationHandler to handle serialized java.lang.Proxy instances until the issue is resolved. At the moment, there is no information about a newer version that contains a fix for this vulnerability.

Exploit

Deserialization of Untrusted Data

Found an issue in the description? Have something to add? Feel free to write us 👾

Weakness Enumeration

Related Identifiers

CVE-2011-2894
GHSA-F866-M9MV-2XR3

Affected Products

Spring Framework
Spring Security