Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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)


RepositoryGroupImpact AnalysisAction
  • aai/model-loader
  • aai/babel
  • aai/sparky-be
  • aai/data-router
  • aai/aai-resources
  • aai/aai-traversal
  • aai/event-client
  • aai/gizmo
  • aai/champ
  • aai/search-data-service
  • aai/aai-common
com.fasterxml.jackson.core

False Positive.

The exploit primarily is about enabling polymorphic type handling with the object mapper and writing class specifics into the JSON object.  There are two ways of doing this:


  1. ObjectMapper.enableDefaultTyping()
  2. @JsonTypeInfo for marshalling / unmarshalling an object


By default the ObjectMapper does not enableDefaultTyping, the code base is not using either approach, so the possibility of the exploit vector does not apply.


  • aai/event-client
com.fasterxml.jackson.core

DMaaP client dependency:

From Dmaap Security/Vulnerability - Beijing: The application is vulnerable by using this component, when default typing is enabled. Message Router do not use the default typing, so using the jackson-databind will not make message router vulnerable



  • aai/aai-resouces
  • aai/aai-traversal
  • aai/champ
  • aai/aai-common
org.codehaus.jackson

False Positive.

The exploit primarily is about enabling polymorphic type handling with the object mapper and writing class specifics into the JSON object.  There are two ways of doing this:


  1. ObjectMapper.enableDefaultTyping()
  2. @JsonTypeInfo for marshalling / unmarshalling an object


By default the ObjectMapper does not enableDefaultTyping, the resources code bases are not using either approach, so the possibility of the exploit vector does not apply.



aai/esr-servercom.fasterxml.jackson.core

False Positive

Explanation:

This vulnerability issue only exists if com.fasterxml.jackson.databind.ObjectMapper.setDefaultTyping() is called before it is used for deserialization.

esr-server doesn't invoke this method, esr-server use new Gson().fromJson(String json, Obj.class) and new Gson().toJson(obj) to deserialization and serialization.

https://github.com/FasterXML/jackson-docs/wiki/JacksonPolymorphicDeserialization

In esr-server, Gson is used to deserialization and serialization:

https://gerrit.onap.org/r/gitweb?p=aai/esr-server.git;a=blob;f=esr-mgr/src/main/java/org/onap/aai/esr/wrapper/EmsManagerWrapper.java;h=588baad96c7942e83e0670784bbf423505c7b194;hb=HEAD

https://gerrit.onap.org/r/gitweb?p=aai/esr-server.git;a=blob;f=esr-mgr/src/main/java/org/onap/aai/esr/wrapper/ThirdpartySdncWrapper.java;h=874205920c156f12df0bc591638a24e3f5575c76;hb=HEAD

https://gerrit.onap.org/r/gitweb?p=aai/esr-server.git;a=blob;f=esr-mgr/src/main/java/org/onap/aai/esr/wrapper/VimManagerWrapper.java;h=fe44536cecb3f9ae9eaa3d99ff7b2d52511e2d52;hb=HEAD

https://gerrit.onap.org/r/gitweb?p=aai/esr-server.git;a=blob;f=esr-mgr/src/main/java/org/onap/aai/esr/wrapper/VnfmManagerWrapper.java;h=8c7c5d39ceadff5e17f9c6d26d5540be49ada070;hb=HEAD

https://gerrit.onap.org/r/gitweb?p=aai/esr-server.git;a=blob;f=esr-mgr/src/main/java/org/onap/aai/esr/util/ExtsysUtil.java;h=3bd01772356055e9711705b8518d55f1678b5179;hb=HEAD


aai/router-coreorg.springframeworkThis should be fixed if router-core moves to the Casablanca version of aai-schema ingest, see the JIRA ticket for details.

Jira
serverONAP JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyAAI-1655

aai/champcommons-httpclient

False positive. This is imported by hadoop which is used for hbase configs; in Beijing, AAI is configured with Janus on cassandra so it will not be accessing these classes. In Casablanca, Champ will serve as a multi-purpose data broker so we will look to upgrade the hadoop libraries to the most current versions.




aai/search-data-servicecom.google.guava

A dependency of a child dependency, json-schema-validator. Even the latest version of json-schema-validator does not have the required fix version for the above components.


aai/search-data-servicecode.libphonumberA dependency of a child dependency, json-schema-validator. Even the latest version of json-schema-validator does not have the required fix version for the above components.
aai/search-data-service

javax.mail

A dependency of a child dependency, json-schema-validator. Even the latest version of json-schema-validator does not have the required fix version for the above components.
aai/data-routerorg.apache.cxf

This artifact is a child dependency for data-router which comes from camel-cxf:2.22.1, and 2.22.1 is the latest version available for camel-cxf.


  • aai/aai-common
  • aai/traversal
  • aai/graphadmin
org.codehaus.groovyThis dependency is a child dependency of org.apache.tinkerpop:gremlin-groovy which is required for traversals. We tried a later version but it is not compatible with the graphdb.
  • aai/aai-common
  • aai/resources
  • aai/traversal
  • aai/graphadmin
com.google.guavaThis dependency is a child dependency of Cassandra which is required for the graphdb; newer versions of Cassandra do not upgrade to a non-vulnerable version of this depedency.

aai/aai-resources

aai/cacher

aai/aai-common

org.apache.activemqThis vulnerability is dependent on XalanXPathEvaluator.java using an insecure or absent document parser. AAI does not use this function, so it does not apply to AAI
aai/data-routerorg.apache.cxf 

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyAAI-1723