This template is intended to be used to document the outcome of the impact analysis related to the known vulnerability reported by Nexus-IQ (CLM tab in Jenkins). Nexus-IQ can identify the known vulnerabilities contained in the components use by onap components.
This table will be presented to TSC at Code Freeze milestone (M4) to the TSC.
It is recommended to first update to the latest version of the third party components available. In case the latest third party components still reports some vulnerabilities, you must provide an impact analysis as illustrated in the example below.
In the case where you have nested third party components (a third party component embedding another third party component) and there is NO CVE number for the upstream third party component (meaning the third party component you are embedding), it is recommended to open a vulnerability issue on the upstream third party component.
The following table is addressing 2 different scenarios:
- Confirmation of a vulnerability including an action
- False Positive
The information related to Repository, Group, Artifact, Version and Problem Code are extracted from the CLM report (see the below screenshot)
...
Vulnerable artifacts:
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.4.4 located at Module org.onap.dcaegen2.analytics.tca:dcae-analytics-aai:jar:2.2.0-SNAPSHOT
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.4.4 located at Module org.onap.dcaegen2.analytics.tca:dcae-analytics-cdap-common:jar:2.2.0-SNAPSHOT
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.4.4 located at Module org.onap.dcaegen2.analytics.tca:dcae-analytics-cdap-plugins:jar:2.2.0-SNAPSHOT
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.4.4 located at Module org.onap.dcaegen2.analytics.tca:dcae-analytics-cdap-tca:jar:2.2.0-SNAPSHOT
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.4.4 located at Module org.onap.dcaegen2.analytics.tca:dcae-analytics-common:jar:2.2.0-SNAPSHOT
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.4.4 located at Module org.onap.dcaegen2.analytics.tca:dcae-analytics-dmaap:jar:2.2.0-SNAPSHOT
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.4.4 located at Module org.onap.dcaegen2.analytics.tca:dcae-analytics-it:jar:2.2.0-SNAPSHOT
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.4.4 located at Module org.onap.dcaegen2.analytics.tca:dcae-analytics-model:jar:2.2.0-SNAPSHOT
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.4.4 located at Module org.onap.dcaegen2.analytics.tca:dcae-analytics-tca:jar:2.2.0-SNAPSHOT
Although the offending dependency appears in all above artifacts, it is only the direct dependent of "dcae-analytics-model". All other uses are transient dependencies through this artifact. Hence the analysis below applies to the "dcae-analytics-model" artifact.
Vulnerability report:
False Positive Classification Reasoning
This table represents the known exploitable and non-exploitable vulnerabilities in third party packages used in the project.
Repository | Group | Impact Analysis | Action |
---|---|---|---|
dcaegen2/analytics/tca-gen2 | com.fasterxml.jackson.core | False Positive - we are not using the Jackson code in the manner that exposes the vulnerability. | Request exception |
dcaegen2/analytics/tca | com.fasterxml.jackson.core | False Positive - we are not using the Jackson code in the manner that exposes the vulnerability. There is no use of |
No Action (same version as R2) | |
dcaegen2/analytics/tca | com.fasterxml.jackson.core |
Vulnerable artifacts:
<same as jackson-databind 2.4.4 above>False Positive |
There is no use of either |
. | No Action (same version as R2) | ||
dcaegen2/collectors/datafile | com.fasterxml.jackson.core | Only used by Swagger which get jackson in connection with API generation(from Spring). So if we exclude jackson, we will get runtime exception according to lack of jackson library. At the moment we haven't got any workaround. | Request exception |
dcaegen2/collectors/hv-ves | com.fasterxml.jackson.core | False Positive Vulnerable artifacts are used only in following cases:
Other modules affected are component-level-tests and coverage report which also are not used in production environment. | Request exception |
dcaegen2/collectors/ves | com.fasterxml.jackson.core | False Positive The application is only vulnerable by using this component, when default typing is enabled and passing in untrusted data to be deserialization which is not the case here. | Request exception |
dcaegen2/platform/inventory-api | com.fasterxml.jackson. |
core |
Vulnerable artifact:
False Positive |
According to these description, and the fact that the org.onap.dcaegen2.platform:inventory-api code does not enable use of global type information, using Class name as the type id, we believe that this report is a false positive. |
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
DCAEGEN2-768 | Request exception | ||
dcaegen2/services/mapper | com.fasterxml.jackson.core | False Positive There is no use of | Request exception |
dcaegen2/services/prh | com.fasterxml.jackson.core |
Vulnerable artifact:
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.8.11 located at Module org.onap.dcaegen2.collectors.ves:VESCollector:jar
Vulnerability report:
CVE-2017-7525 originally reports that the application is vulnerable by using this component, when default typing is enabled. More details about the vulnerability is provided by https://github.com/FasterXML/jackson-docs/wiki/JacksonPolymorphicDeserialization.
False Positive Classification Reasoning:
Only used by Swagger which get jackson in connection with API generation(from Spring). So if we exclude jackson, we will get runtime exception according to lack of jackson library. | Request exception | ||||||||||||
dcaegen2/collectors/ves | org.apache.tomcat.embed | Requires moving to tomcat-embed-websocket:8.5.34 | Added 10/29 - Request exception
|
| ||
dcaegen2/ |
platform/ |
inventory-api |
Vulnerable artifact:
Vulnerability report: incomplete fix for the CVE-2017-7525 deserialization flaw. This is exploitable by sending maliciously crafted JSON input to the readValue method of the ObjectMapper, bypassing a blacklist that is ineffective if the c3p0 libraries are available in the classpath.
False Positive Classification Reasoning:
In mapper, Jackson is only used for converting between POJO to JSON, not the other direction which is reported as vunerable by CVE-2018-7489. The member call used is ObjectMapper.writeValueAsString. not the risky readValue method. Thus we believe the reporting is a false positive.org.postgresql | Requires moving postgresql to 42.2.5 | Added 10/29 - Request exception |
| ||
dcaegen2/ |
analytics/ |
tca-gen2 |
io. |
Vulnerable artifact:
Dependency org.springframework:spring-expression:jar:5.0.4.RELEASE located at Module org.onap.dcaegen2.services.mapper.vesadapter:snmpmapper:jar:0.0.1
Vulnerability report:
older unsupported versions, allow applications to expose STOMP over WebSocket endpoints with a simple, in-memory STOMP broker through the spring-messaging module. A malicious user (or attacker) can craft a message to the broker that can lead to a remote code execution attack.
False Positive Classification Reasoning:
In mapper, there is no use of STOMP over websocket. There fore we believe that this is a false positive.
undertow | No non-vulnerable version available. | Request exception | |||||||||||
dcaegen2/analytics/tca | com.google.guava | No non-vulnerable version available. | Request exception | ||||||||||
dcaegen2/analytics/tca | commons-codec | Not applicable as base32 encoding is not used | Request exception | ||||||||||
dcaegen2/collectors/datafile | org.springframework | Newer non vulnerable version available (5.1.0.RELEASE) | Upgrade to newer version
|
| ||
dcaegen2/ |
collectors/ |
datafile | com. |
Vulnerable artifact:
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.9.5 located at Module org.onap.dcaegen2.services.mapper.vesadapter:UniversalVesAdapter:jar:0.0.1
Vulnerability report:
jackson-databind
is vulnerable to Remote Code Execution (RCE). A remote attacker can exploit this by uploading a malicious serialized object that will result in RCE if the application attempts to deserialize it.
False Positive Classification Reasoning:
jcraft | Not applicable; as the application doesn't run on windows | Request exception | |||||||||||
dcaegen2/collectors/hv-ves | org.apache.kafka | Newer non vulnerable version available | Request exception | ||||||||||
dcaegen2/collectors/ves | org.springframework | Requires moving to spring-web:5.1.1.RELEASE | Added 10/29 - Request exception
|
| |||
dcaegen2/collectors/ves | com.googlecode.libphonenumber | Not applicable. | Request exception |
dcaegen2/ |
collectors/ |
ves |
Vulnerable artifact:
Dependency org.springframework:spring-webmvc:jarjavax.mail | Not applicable; as the specified method is not invoked | Request exception |
dcaegen2/collectors/ves | org.springframework.security | spring-security-web:5.0. |
Vulnerability report:
older unsupported versions, allow applications to configure Spring MVC to serve static resources (e.g. CSS, JS, images). When static resources are served from a file system on Windows (as opposed to the classpath, or the ServletContext), a malicious user can send a request using a specially crafted URL that can lead a directory traversal attack.
False Positive Classification Reasoning:
The identified vulnerability exists when serving static artifact from Windows host. Our use is neither from a Windows host, or serving static file. Therefore we believe this is afalse positive.
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
incomplete fix for the CVE-2017-7525 deserialization flaw
FasterXML 2.9.5 released March 2018, supposed to correct this behavior (in tests currently).
6.RELEASE flagged No non-vulnerable version available. | Added 10/30 - Request exception | ||||||||||||
dcaegen2/platform/inventory-api | org.postgresql : postgresql | No non-vulnerable version available. | Request exception | ||||||||||
dcaegen2/services/mapper | dom4j : dom4j : | Not applicable; as the specified method is not invoked | Request exception | ||||||||||
dcaegen2/services/mapper | org.springframework : spring-web | No non-vulnerable version available & Unknown license reported | Request exception | ||||||||||
dcaegen2/services/mapper | ognl : ognl : 3.0.9 | Newer non vulnerable version available | Upgrade to newer version available
|
All vulnerabilities addressed, according to CLM scan on 04/21. https://nexus-iq.wl.linuxfoundation.org/assets/index.html#/reports/dcaegen2-services-prh/a66b0ace9ec046c18cda082800e0fddc
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.9.5 located at Module org.onap.dcaegen2.analytics.tca-gen2:dcae-analytics-tca-core:jar:3.0.0-SNAPSHOT
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.9.5 located at Module org.onap.dcaegen2.analytics.tca-gen2:dcae-analytics-tca-model:jar:3.0.0-SNAPSHOT
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.9.5 located at Module org.onap.dcaegen2.analytics.tca-gen2:dcae-analytics-tca-web:jar:3.0.0-SNAPSHOT
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.9.5 located at Module org.onap.dcaegen2.analytics.tca-gen2:dcae-analytics-test:jar:3.0.0-SNAPSHOT
Dependency com.fasterxml.jackson.core:jackson-databind:jar:2.9.5 located at Module org.onap.dcaegen2.analytics.tca-gen2:dcae-analytics-web:jar:3.0.0-SNAPSHOT
Vulnerability report:
SONATYPE-2017-0312
jackson-databind
is vulnerable to Remote Code Execution (RCE). The createBeanDeserializer()
function in the BeanDeserializerFactory
class allows untrusted Java objects to be deserialized. A remote attacker can exploit this by uploading a malicious serialized object that will result in RCE if the application attempts to deserialize it.
False Positive Classification Reasoning to be confirmed
if identified Jackson is only used for converting between POJO to JSON, not the other direction which is reported as vunerable by CVE-2018-7489. The member call used is ObjectMapper.writeValueAsString. not the risky readValue method.
spring-aop
Vulnerability report
spring-data-commons
Vulnerability report
| |||||||||||||
dcaegen2/services/mapper | org.postgresql : postgresql : 42.2.4 | No non-vulnerable version available. | Request exception | ||||||||||
dcaegen2/services/mapper | xerces : xercesImpl : 2.12.0 | No non-vulnerable version available. | Request exception | ||||||||||
dcaegen2/services/prh | org.springframework : spring-web | Newer non vulnerable version available | Upgrade to newer version available
|