Lucene search

K
ibmIBMCDA5221CD42B2E49892F47BEA05DE96A9AE8A678CFCC34C22B1338FFC1762890
HistorySep 10, 2020 - 3:43 p.m.

Security Bulletin: Multiple vulnerabilities affecting the Cordova platform and IBM SDK Node.js packaged with Rational Software Architect and Rational Software Architect for WebSphere Software

2020-09-1015:43:59
www.ibm.com
6

10 High

CVSS2

Access Vector

NETWORK

Access Complexity

LOW

Authentication

NONE

Confidentiality Impact

COMPLETE

Integrity Impact

COMPLETE

Availability Impact

COMPLETE

AV:N/AC:L/Au:N/C:C/I:C/A:C

Summary

Multiple vulnerabilities have been discovered that affect the Cordova platform and IBM SDK Node.js packaged with Rational Software Architect and Rational Software Architect for WebSphere software (CVE-2014-3500, CVE-2014-3501, CVE-2014-3502, CVE-2014-5256, CVE-2014-7191, CVE-2014-7192, CVE-2014-3568, CVE-2014-3567 and CVE-2014-3513).

Vulnerability Details

| Subscribe to My Notifications to be notified of important product support alerts like this.

  • Follow this link for more information (requires login with your IBM ID)
    —|—

CVEID:CVE-2014-3500

Description: Apache Cordova is vulnerable to cross-application scripting, which is caused by improper validation of user-supplied input. A remote attacker might exploit this vulnerability using Android intent URLs to execute script in a victim’s web browser within the security context of the hosting web site after the URL is clicked. An attacker might use this vulnerability to steal the victim’s cookie-based authentication credentials.

CVSS Base Score: 4.3 CVSS Temporal Score: See <https://exchange.xforce.ibmcloud.com/vulnerabilities/94408&gt; for the current score *CVSS Environmental Score:**Undefined CVSS Vector:(AV:N/AC:M/Au:N/C:N/I:P/A:N) **
** **CVEID: **CVE-2014-3501

Description: Apache Cordova might allow a remote attacker to bypass security restrictions, which is caused by an error that is related to the failure to use a specific allowlist when communicating over non-http channels by the WebView component. An attacker might exploit this vulnerability to bypass the HTTP allowlist and launch further attacks on the system.

CVSS Base Score: 5.0 **CVSS Temporal Score:**See <https://exchange.xforce.ibmcloud.com/vulnerabilities/95107&gt; for the current score *CVSS Environmental Score:**Undefined CVSS Vector: (AV:N/AC:L/Au:N/C:N/I:P/A:N)

**
CVEID: **CVE-2014-3502

Description: Apache Cordova might allow a remote attacker to obtain sensitive information, which is caused by the manipulation of HTML content within a Cordova application. An attacker might exploit this vulnerability to send data from the application to the network.

CVSS Base Score: 4.3 **CVSS Temporal Score:**See <https://exchange.xforce.ibmcloud.com/vulnerabilities/94443&gt; for the current score *CVSS Environmental Score:**Undefined CVSS Vector: (AV:N/AC:M/Au:N/C:P/I:N/A:N)

CVEID: CVE-2014-5256

**Description:**V8 shipped with Node.js is vulnerable to a denial of service, caused by a memory corruption error. By sending an overly long JSON string, a remote attacker could exploit this vulnerability to cause a segmentation fault.

CVSS Base Score: 5.0 **CVSS Temporal Score:**See <https://exchange.xforce.ibmcloud.com/vulnerabilities/95057&gt; for the current score *CVSS Environmental Score:**Undefined CVSS Vector: (AV:N/AC:L/Au:N/C:N/I:N/A:P)

CVE-ID: CVE-2014-7191

Description: Node.js is vulnerable to a denial of service, caused by an error in the qs module when parsing a string representing a deeply nested object. An attacker could exploit this vulnerability to block the event loop for an extended period of time and cause a denial of service.

CVSS Base Score: 5.0 CVSS Temporal Score:<https://exchange.xforce.ibmcloud.com/vulnerabilities/96729&gt; for more information *CVSS Environmental Score:**Undefined CVSS Vector: (AV:N/AC:L/Au:N/C:N/I:N/A:P)

CVE-ID: CVE-2014-7192

Description: Node.js could allow a remote attacker to execute arbitrary code on the system, caused by the improper validation of input prior to being used in an eval() call. An attacker could exploit this vulnerability to inject and execute arbitrary PHP code on the system.

CVSS Base Score: 7.5 CVSS Temporal Score:<https://exchange.xforce.ibmcloud.com/vulnerabilities/96728&gt; for more information *CVSS Environmental Score:**Undefined CVSS Vector: (AV:N/AC:L/Au:N/C:P/I:P/A:P)

CVE ID: CVE-2014-3513 **
Description: **OpenSSL is vulnerable to a denial of service, caused by a memory leak in the DTLS Secure Real-time Transport Protocol (SRTP) extension parsing code. By sending multiple specially-crafted handshake messages, an attacker could exploit this vulnerability to exhaust all available memory of an SSL/TLS or DTLS server.

CVSS Base Score: 5.0 CVSS Temporal Score:<https://exchange.xforce.ibmcloud.com/vulnerabilities/97035&gt; for more information *CVSS Environmental Score:**Undefined CVSS Vector: (AV:N/AC:L/Au:N/C:N/I:N/A:P)

**
CVE-ID:CVE-2014-3567 **
Description:
OpenSSL is vulnerable to a denial of service, caused by a memory leak when handling failed session ticket integrity checks. By sending an overly large number of invalid session tickets, an attacker could exploit this vulnerability to exhaust all available memory of an SSL/TLS or DTLS server.

CVSS Base Score: 5.0 CVSS Temporal Score:<https://exchange.xforce.ibmcloud.com/vulnerabilities/97036&gt; for more information CVSS Environmental Score:Undefined CVSS Vector:(AV:N/AC:L/Au:N/C:N/I:N/A:P) **
CVE-ID:
CVE-2014-3568 **
Description:
* OpenSSL could allow a remote attacker bypass security restrictions. When configured with “no-ssl3” as a build option, servers could accept and complete a SSL 3.0 handshake. An attacker could exploit this vulnerability to perform unauthorized actions.

CVSS Base Score: 2.6 CVSS Temporal Score:<https://exchange.xforce.ibmcloud.com/vulnerabilities/97037&gt; for more information *CVSS Environmental Score:**Undefined CVSS Vector: (AV:N/AC:H/Au:N/C:N/I:P/A:N)

Affected Products and Versions

Rational Software Architect 9.1 and 9.1.1

Rational Software Architect for WebSphere Software 9.1 and 9.1.1

Remediation/Fixes

Update the Cordova platform to 3.5.0, Node.js to 1.1.0.9 and the Android platform to 3.5.1 using the Node Packaged Modules software provided with the product:

Product VRMF Remediation/Download FixCentral link
Rational Software Architect 9.1 and 9.1.1 Cordova and IBM SDK NodeJS iFix
Rational Software Architect for WebSphere Software 9.1 and 9.1.1 Cordova and IBM SDK NodeJS iFix

Installation Instructions:

For instructions on installing this update using Installation Manager, review the topic Updating Installed Product Packages in the IBM Knowledge Center.

Instructions to download and install the update from the compressed files:

  1. Download the update files from Fix Central by following the link listed in the download table above

  2. Extract the compressed files in an appropriate directory.
    For example, choose to extract to `C:\temp\update

3. Add the update repository location in IBM Installation Manager: 1. Start IBM Installation Manager. 2. On the Start page of Installation Manager, click **File &gt; Preferences**, and then click**Repositories**. 3. On the Repositories page, click **Add Repository**. 4. In the Add repository window, browse to or enter the file path to the repository.config file, which is located in the directory where you extracted the compressed files and then click OK. For example, enterC:\temp\updates\repository.config`.
5. Click OK to close the Preference page.
6. Install the update as described in the the topic Updating Installed Product Packages in the IBM Knowledge Center for your product and version.

Post Installation:
After applying the appropriate fix, additional instructions are needed for the CVE-2014-3500, CVE-2014-3501 and CVE-2014-3502 issues.

Complete the following steps to modify the Cordova allowlist

Note: One of the security fixes involves creating a new allowlist for protocols other than HTTP and HTTPS. If your application uses other protocols besides http and https, such as sms, mailto, geo, etc, then you need to make some configuration changes to add these protocols to the allowlist.

Procedure:

  1. Open the Cordova config.xml file, located in `<project>/config.xml

`
2. View your allowlist entries, such as the following example:

<access origin="https://my.company.com/resources&quot; />
<access origin=“http://*.othersupplier.com” />

  1. For every non HTTP or HTTPS protocol that you use you will need to add a allowlist entry like this code:

<access origin=“sms://" launch-external=“true” />
<access origin="mailto://
” launch-external=“true” />
<access origin=“geo://*” launch-external=“true” />

The launch-external attribute tells Cordova to allow this URL to be handled by other applications in Android system and not by the currently running Cordova. This approach means that when a user clicks a &lt;a href="sms:555..."&gt; link, Android lets whatever application is registered to sms: handle the request.

The only entry in your allowlist might look like this code:
&lt;access origin="*" /&gt;

In this instance, your application allows resource requests to any Internet resource, which might open your application to certain kinds of attacks. You should list specific domains in this tag that you want to be able to access.

If you do not utilize any protocol other than file, data, and content, then you can leave your allowlist as-is as these protocols are essential for Cordova internals and do not need to be explicitly allowlisted. All actions that use protocols that are not added to the allowlist are treated as no-ops and ignored by Cordova.

  1. Rebuild your application and redeploy to your users

After making these changes to the allowlist (if they are needed) then you will need to rebuild your Android application and distribute to your users as an update.

Workarounds and Mitigations

None

10 High

CVSS2

Access Vector

NETWORK

Access Complexity

LOW

Authentication

NONE

Confidentiality Impact

COMPLETE

Integrity Impact

COMPLETE

Availability Impact

COMPLETE

AV:N/AC:L/Au:N/C:C/I:C/A:C