{"id":"CVE-2011-2894","aliases":["CLSA-2026-1779842933","EUVD-2022-3723","GHSA-f866-m9mv-2xr3"],"status":"published","title":"Spring Framework and Spring Security vulnerable to Deserialization of Untrusted Data","description":"Spring Framework 3.0.0 through 3.0.5, Spring Security 3.0.0 through 3.0.5 and 2.0.0 through 2.0.6, and possibly other versions deserialize objects from untrusted sources, which allows remote attackers to bypass intended security restrictions and execute untrusted code by (1) serializing a java.lang.Proxy instance and using InvocationHandler, or (2) accessing internal AOP interfaces, as demonstrated using deserialization of a DefaultListableBeanFactory instance to execute arbitrary commands via the java.lang.Runtime class.","severity":{"version":"2.0","score":6.8,"vector":"AV:N/AC:M/Au:N/C:P/I:P/A:P","level":"medium","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.08601,"percentile":0.95121,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":true,"fix_available":true},"cwes":["CWE-502"],"published":"2011-10-04T10:00:00Z","modified":"2026-11-02T19:45:32Z","exploits":[{"source":"pocgithub","id":"pwntester/SpringBreaker","title":"pwntester/SpringBreaker","date":"2013-07-31","url":"https://github.com/pwntester/SpringBreaker"}],"fixes":[{"ecosystem":"Maven","package":"org.springframework:spring-core","fixed_in":["3.0.6"],"sources":["ghsa","osv"]},{"ecosystem":"Maven","package":"org.springframework.security:spring-security-core","fixed_in":["3.0.6","2.0.7"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"Maven","package":"org.springframework:spring-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.0.0"},{"fixed":"3.0.6"}]}]},{"source":"ghsa","ecosystem":"Maven","package":"org.springframework.security:spring-security-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.0.0"},{"fixed":"3.0.6"}]}]},{"source":"ghsa","ecosystem":"Maven","package":"org.springframework.security:spring-security-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"2.0.0"},{"fixed":"2.0.7"}]}]},{"source":"osv","ecosystem":"TuxCare:Maven","package":"org.springframework:spring-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.0.5.RELEASE"},{"fixed":"3.0.5.RELEASE-tuxcare.2"}]}],"versions":["3.0.5.RELEASE","3.0.5.RELEASE-tuxcare.1"],"bundled":3},{"source":"osv","ecosystem":"TuxCare:Maven","package":"org.springframework:spring-expression","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.0.5.RELEASE"},{"fixed":"3.0.5.RELEASE-tuxcare.2"}]}],"versions":["3.0.5.RELEASE","3.0.5.RELEASE-tuxcare.1"],"bundled":3},{"source":"osv","ecosystem":"TuxCare:Maven","package":"org.springframework:spring-webmvc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.0.5.RELEASE"},{"fixed":"3.0.5.RELEASE-tuxcare.2"}]}],"versions":["3.0.5.RELEASE","3.0.5.RELEASE-tuxcare.1"],"bundled":3},{"source":"osv","ecosystem":"Maven","package":"org.springframework:spring-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.0.0"},{"fixed":"3.0.6"}]}],"versions":["3.0.0.RELEASE","3.0.1.RELEASE","3.0.2.RELEASE","3.0.3.RELEASE","3.0.4.RELEASE","3.0.5.RELEASE"]},{"source":"osv","ecosystem":"Maven","package":"org.springframework.security:spring-security-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.0.0"},{"fixed":"3.0.6"}]}],"versions":["3.0.0.RELEASE","3.0.1.RELEASE","3.0.2.RELEASE","3.0.3.RELEASE","3.0.4.RELEASE","3.0.5.RELEASE"]},{"source":"osv","ecosystem":"Maven","package":"org.springframework.security:spring-security-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"2.0.0"},{"fixed":"2.0.7"}]}],"versions":["2.0.0","2.0.1","2.0.2","2.0.3","2.0.4","2.0.5.RELEASE","2.0.6.RELEASE"]}],"products":[{"vendor":"vmware","product":"spring_framework"},{"vendor":"vmware","product":"spring_security"}],"references":[{"url":"http://www.springsource.com/security/cve-2011-2894","tags":["x_refsource_CONFIRM","x_transferred","Vendor Advisory","web"]},{"url":"http://www.securityfocus.com/bid/49536","tags":["vdb-entry","x_refsource_BID","x_transferred","Third Party Advisory","VDB Entry","web"]},{"url":"http://www.securityfocus.com/archive/1/519593/100/0/threaded","tags":["mailing-list","x_refsource_BUGTRAQ","x_transferred","Third Party Advisory","VDB Entry","web"]},{"url":"http://www.redhat.com/support/errata/RHSA-2011-1334.html","tags":["vendor-advisory","x_refsource_REDHAT","x_transferred","Third Party Advisory","web"]},{"url":"https://exchange.xforce.ibmcloud.com/vulnerabilities/69687","tags":["vdb-entry","x_refsource_XF","x_transferred","Third Party Advisory","VDB Entry","web"]},{"url":"http://securityreason.com/securityalert/8405","tags":["third-party-advisory","x_refsource_SREASON","x_transferred","Third Party Advisory","web"]},{"url":"http://osvdb.org/75263","tags":["vdb-entry","x_refsource_OSVDB","x_transferred","Broken Link","web"]},{"url":"https://web.archive.org/web/20120307233721/http://www.springsource.com/security/cve-2011-2894","tags":["x_refsource_MISC","x_transferred","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2011-2894","tags":["advisory"]},{"url":"https://github.com/spring-projects/spring-framework/commit/070a723ef2c886770a063eb9a67f84f74e06edfb","tags":["web"]},{"url":"https://github.com/advisories/GHSA-f866-m9mv-2xr3"},{"url":"https://github.com/spring-projects/spring-framework","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2011-2894","description":"Spring Framework 3.0.0 through 3.0.5, Spring Security 3.0.0 through 3.0.5 and 2.0.0 through 2.0.6, and possibly other versions deserialize objects from untrusted sources, which allows remote attackers to bypass intended security restrictions and execute untrusted code by (1) serializing a java.lang.Proxy instance and using InvocationHandler, or (2) accessing internal AOP interfaces, as demonstrated using deserialization of a DefaultListableBeanFactory instance to execute arbitrary commands via the java.lang.Runtime class.","status":"published","published":"2011-10-04T10:00:00Z","modified":"2024-08-06T23:15:31.545Z","updated_at":"2026-11-02T14:35:36.252742Z"}],"euvd":[{"id":"EUVD-2022-3723","description":"Spring Framework 3.0.0 through 3.0.5, Spring Security 3.0.0 through 3.0.5 and 2.0.0 through 2.0.6, and possibly other versions deserialize objects from untrusted sources, which allows remote attackers to bypass intended security restrictions and execute untrusted code by (1) serializing a java.lang.Proxy instance and using InvocationHandler, or (2) accessing internal AOP interfaces, as demonstrated using deserialization of a DefaultListableBeanFactory instance to execute arbitrary commands via the java.lang.Runtime class.","status":"published","published":"2011-10-04T10:00:00Z","modified":"2024-08-06T23:15:31Z","updated_at":"2026-11-03T01:39:53.544801Z"}],"ghsa":[{"id":"GHSA-f866-m9mv-2xr3","title":"Spring Framework and Spring Security vulnerable to Deserialization of Untrusted Data","description":"Spring Framework 3.0.0 through 3.0.5, Spring Security 3.0.0 through 3.0.5 and 2.0.0 through 2.0.6, and possibly other versions deserialize objects from untrusted sources, which allows remote attackers to bypass intended security restrictions and execute untrusted code by (1) serializing a java.lang.Proxy instance and using InvocationHandler, or (2) accessing internal AOP interfaces, as demonstrated using deserialization of a DefaultListableBeanFactory instance to execute arbitrary commands via the java.lang.Runtime class.","status":"published","published":"2022-05-14T02:54:56Z","modified":"2024-03-14T21:21:37Z","cwes":["CWE-502"],"updated_at":"2026-11-02T14:37:40.81935Z"}],"nvd":[{"id":"CVE-2011-2894","description":"Spring Framework 3.0.0 through 3.0.5, Spring Security 3.0.0 through 3.0.5 and 2.0.0 through 2.0.6, and possibly other versions deserialize objects from untrusted sources, which allows remote attackers to bypass intended security restrictions and execute untrusted code by (1) serializing a java.lang.Proxy instance and using InvocationHandler, or (2) accessing internal AOP interfaces, as demonstrated using deserialization of a DefaultListableBeanFactory instance to execute arbitrary commands via the java.lang.Runtime class.","status":"published","published":"2011-10-04T10:55:09.363Z","modified":"2026-06-16T23:32:12.007Z","cvss":[{"version":"2.0","score":6.8,"vector":"AV:N/AC:M/Au:N/C:P/I:P/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-502"],"updated_at":"2026-11-02T14:02:09.988332Z"}],"osv":[{"id":"CLSA-2026-1779842933","title":"TuxCare security update for org.springframework (3 CVEs)","description":"TuxCare rebuilt 3 org.springframework packages to address 3 CVEs. Fixed in 3.0.5.RELEASE-tuxcare.2.","status":"published","published":"2026-08-04T14:52:33Z","modified":"2026-11-02T19:45:32.911143955Z","updated_at":"2026-11-02T20:30:18.404297Z"},{"id":"GHSA-f866-m9mv-2xr3","title":"Spring Framework and Spring Security vulnerable to Deserialization of Untrusted Data","description":"Spring Framework 3.0.0 through 3.0.5, Spring Security 3.0.0 through 3.0.5 and 2.0.0 through 2.0.6, and possibly other versions deserialize objects from untrusted sources, which allows remote attackers to bypass intended security restrictions and execute untrusted code by (1) serializing a java.lang.Proxy instance and using InvocationHandler, or (2) accessing internal AOP interfaces, as demonstrated using deserialization of a DefaultListableBeanFactory instance to execute arbitrary commands via the java.lang.Runtime class.","status":"published","published":"2022-05-14T02:54:56Z","modified":"2024-12-03T06:08:45.298122Z","cwes":["CWE-502"],"updated_at":"2026-11-02T15:46:46.006631Z"}]}}
