Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Old Containers & Security Vulnerabilities #528

Closed
paul-english opened this issue Apr 25, 2019 · 10 comments
Closed

Old Containers & Security Vulnerabilities #528

paul-english opened this issue Apr 25, 2019 · 10 comments
Assignees
Projects
Milestone

Comments

@paul-english
Copy link

Seldon seems like a great project that helps solve a real problem. We've explored using it within our organization, but we audit & scan all containers that go into our kubernetes clusters. The containers used in the variety of seldon services are all significantly out of date and make it's deployment a non-starter. Many of the issues can be solved by using more up to date OS versions.

Is it possible to review the containers, the jdk, dependency and OS versions that are being used and update to newer versions? Is the build process for the container builds documented anywhere? Maybe this could allow us to fork only the build process and work out updating underlying containers ourselves.

@ukclivecox
Copy link
Contributor

Can I suggest we list the particular things you think we should update as a PR would be preferable.
Hopefully, many of these updates can be made quite easily.

@ukclivecox ukclivecox added this to the 0.2.x milestone Apr 25, 2019
@ukclivecox ukclivecox added this to To do in 0.3.0 Apr 26, 2019
@paul-english
Copy link
Author

Here's some of the output from our image scanner twistlock. This is based off the images I found in the helm chart off commit 0df5904 of seldon-core. We're primarily concerned with critical & high vulnerabilities.

bitnami/minideb:latest

Vulnerabilities
---------------
Image    ID    CVE    Package    Version    Severity    Status    CVSS
-----    --    ---    -------    -------    --------    ------    ----
Vulnerability threshold check results: PASS

Compliance
----------
Image                     ID                  Severity    Description
-----                     --                  --------    -----------
bitnami/minideb:latest    d79fdb0b58b91f39    high        (CIS_Docker_CE_v1.1.0 - 4.1) Image should be created with a non-root user
bitnami/minideb:latest    d79fdb0b58b91f39    high        Image is not trusted

bitnami/redis:4.0.14

Vulnerabilities
---------------
Image    ID    CVE    Package    Version    Severity    Status    CVSS
-----    --    ---    -------    -------    --------    ------    ----
Vulnerability threshold check results: PASS

Compliance
----------
Image                   ID                  Severity    Description
-----                   --                  --------    -----------
bitnami/redis:4.0.14    f1c3efabab2b0816    high        Image is not trusted

oliver006/redis_exporter:v0.31.0

Vulnerabilities
---------------
Image                               ID                  CVE              Package                                      Version      Severity    Status                CVSS
-----                               --                  ---              -------                                      -------      --------    ------                ----
oliver006/redis_exporter:v0.31.0    11909aca7b790d79    CVE-2019-1543    openssl (used in libcrypto1.1, libssl1.1)    1.1.1a-r1    high        fixed in 1.1.1b-r1    7.4
Vulnerability threshold check results: PASS

Compliance
----------
Image                               ID                  Severity    Description
-----                               --                  --------    -----------
oliver006/redis_exporter:v0.31.0    11909aca7b790d79    high        (CIS_Docker_CE_v1.1.0 - 4.1) Image should be created with a non-root user
oliver006/redis_exporter:v0.31.0    11909aca7b790d79    high        Image is not trusted

quay.io/datawire/ambassador:0.40.2

Vulnerabilities
---------------
Image                                 ID                  CVE               Package                         Version      Severity    Status                CVSS
-----                                 --                  ---               -------                         -------      --------    ------                ----
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2019-3861     libssh2                         1.8.0-r3     critical    fixed in 1.8.1-r0     9.1
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2019-3860     libssh2                         1.8.0-r3     critical    fixed in 1.8.1-r0     9.1
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2019-3859     libssh2                         1.8.0-r3     critical    fixed in 1.8.1-r0     9.1
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2019-3862     libssh2                         1.8.0-r3     critical    fixed in 1.8.1-r0     9.1
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2019-3822     curl (used in libcurl, curl)    7.61.1-r1    critical    fixed in 7.61.1-r2    9.8
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2019-9636     python3                         3.6.6-r0     critical    fixed in 3.6.8-r0     9.8
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2019-3858     libssh2                         1.8.0-r3     critical    fixed in 1.8.1-r0     9.1
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2019-3863     libssh2                         1.8.0-r3     high        fixed in 1.8.1-r0     8.8
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2019-3857     libssh2                         1.8.0-r3     high        fixed in 1.8.1-r0     8.8
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2018-20406    python3                         3.6.6-r0     high        fixed in 3.6.8-r0     7.5
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2019-3856     libssh2                         1.8.0-r3     high        fixed in 1.8.1-r0     8.8
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2018-14647    python3                         3.6.6-r0     high        fixed in 3.6.8-r0     7.5
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2018-20506    sqlite (used in sqlite-libs)    3.24.0-r0    high        fixed in 3.26.0-r3    8.1
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2018-20505    sqlite (used in sqlite-libs)    3.24.0-r0    high        fixed in 3.26.0-r3    7.5
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2018-20346    sqlite (used in sqlite-libs)    3.24.0-r0    high        fixed in 3.25.3-r0    8.1
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2019-3823     curl (used in libcurl, curl)    7.61.1-r1    high        fixed in 7.61.1-r2    7.5
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2019-3855     libssh2                         1.8.0-r3     high        fixed in 1.8.1-r0     8.8
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2018-16890    curl (used in libcurl, curl)    7.61.1-r1    high        fixed in 7.61.1-r2    7.5
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    CVE-2019-11324    urllib3                         1.22         high        fixed in 1.24.2       7.5
Vulnerability threshold check results: FAIL

Compliance
----------
Image                                 ID                  Severity    Description
-----                                 --                  --------    -----------
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    high        (CIS_Docker_CE_v1.1.0 - 4.1) Image should be created with a non-root user
quay.io/datawire/ambassador:0.40.2    cb104b21a1676921    high        Image is not trusted

seldonio/apife:0.2.8-SNAPSHOT

Vulnerabilities
---------------
Image                            ID                  CVE                 Package                                                                 Version        Severity    Status                     CVSS
-----                            --                  ---                 -------                                                                 -------        --------    ------                     ----
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-3183       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    critical    fixed in 8.191.12-r0       9
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-19362      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.8             9.8
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-14719      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.7             9.8
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-19361      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.8             9.8
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-14718      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.7             9.8
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-14721      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.7             10
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-14720      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.7             9.8
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-19360      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.8             9.8
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-3149       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    high        fixed in 8.191.12-r0       8.3
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-3169       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    high        fixed in 8.191.12-r0       8.3
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2019-0199       apache tomcat_tomcat-embed-core                                         8.5.34         high        fixed in 9.0.16, 8.5.38    7.5
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-20346      sqlite (used in sqlite-libs)                                            3.24.0-r0      high        fixed in 3.25.3-r0         8.1
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-20505      sqlite (used in sqlite-libs)                                            3.24.0-r0      high        fixed in 3.26.0-r3         7.5
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-20506      sqlite (used in sqlite-libs)                                            3.24.0-r0      high        fixed in 3.26.0-r3         8.1
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-3214       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.191.12-r0       5.3
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-10237      com.google.guava_guava                                                  19.0           medium      fixed in 24.1.1            5.9
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-16435      openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.191.12-r0       5.5
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-13785      openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.191.12-r0       6.5
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-11212      openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.201.08-r0       6.5
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-3180       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.191.12-r0       5.6
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-20217      krb5 (used in krb5-libs)                                                1.15.3-r0      medium      fixed in 1.15.4-r0         5.3
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-1000873    com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       medium      fixed in 2.9.8             6.5
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-16435      lcms2                                                                   2.9-r0         medium      fixed in 2.9-r1            5.5
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-14048      libpng                                                                  1.6.34-r1      medium      fixed in 1.6.35-r0         6.5
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    CVE-2018-13785      libpng                                                                  1.6.34-r1      medium      fixed in 1.6.35-r0         6.5
Vulnerability threshold check results: FAIL

Compliance
----------
Image                            ID                  Severity    Description
-----                            --                  --------    -----------
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    high        (CIS_Docker_CE_v1.1.0 - 4.1) Image should be created with a non-root user
seldonio/apife:0.2.8-SNAPSHOT    163604b5638109d3    high        Image is not trusted

seldonio/cluster-manager:0.2.8-SNAPSHOT

Vulnerabilities
---------------
Image                                      ID                  CVE                 Package                                                                 Version        Severity    Status                     CVSS
-----                                      --                  ---                 -------                                                                 -------        --------    ------                     ----
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-14721      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.7             10
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-14720      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.7             9.8
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-19362      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.8             9.8
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-14718      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.7             9.8
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-3183       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    critical    fixed in 8.191.12-r0       9
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-19361      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.8             9.8
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-14719      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.7             9.8
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-19360      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.8             9.8
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-3149       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    high        fixed in 8.191.12-r0       8.3
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-20346      sqlite (used in sqlite-libs)                                            3.24.0-r0      high        fixed in 3.25.3-r0         8.1
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-20505      sqlite (used in sqlite-libs)                                            3.24.0-r0      high        fixed in 3.26.0-r3         7.5
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-20506      sqlite (used in sqlite-libs)                                            3.24.0-r0      high        fixed in 3.26.0-r3         8.1
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2019-0199       apache tomcat_tomcat-embed-core                                         8.5.34         high        fixed in 9.0.16, 8.5.38    7.5
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-3169       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    high        fixed in 8.191.12-r0       8.3
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-16435      openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.191.12-r0       5.5
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-10237      com.google.guava_guava                                                  19.0           medium      fixed in 24.1.1            5.9
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-20217      krb5 (used in krb5-libs)                                                1.15.3-r0      medium      fixed in 1.15.4-r0         5.3
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-3214       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.191.12-r0       5.3
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-13785      openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.191.12-r0       6.5
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-11212      openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.201.08-r0       6.5
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-1000873    com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       medium      fixed in 2.9.8             6.5
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-3180       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.191.12-r0       5.6
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-16435      lcms2                                                                   2.9-r0         medium      fixed in 2.9-r1            5.5
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-14048      libpng                                                                  1.6.34-r1      medium      fixed in 1.6.35-r0         6.5
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    CVE-2018-13785      libpng                                                                  1.6.34-r1      medium      fixed in 1.6.35-r0         6.5
Vulnerability threshold check results: FAIL

Compliance
----------
Image                                      ID                  Severity    Description
-----                                      --                  --------    -----------
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    high        (CIS_Docker_CE_v1.1.0 - 4.1) Image should be created with a non-root user
seldonio/cluster-manager:0.2.8-SNAPSHOT    7098b4b1ef182277    high        Image is not trusted

seldonio/engine:0.2.8-SNAPSHOT

Vulnerabilities
---------------
Image                             ID                  CVE                 Package                                                                 Version        Severity    Status                     CVSS
-----                             --                  ---                 -------                                                                 -------        --------    ------                     ----
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-19362      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.8             9.8
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-14718      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.7             9.8
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-19361      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.8             9.8
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-14720      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.7             9.8
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-3183       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    critical    fixed in 8.191.12-r0       9
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-14719      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.7             9.8
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-19360      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.8             9.8
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-14721      com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       critical    fixed in 2.9.7             10
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-20346      sqlite (used in sqlite-libs)                                            3.24.0-r0      high        fixed in 3.25.3-r0         8.1
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-3149       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    high        fixed in 8.191.12-r0       8.3
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-20505      sqlite (used in sqlite-libs)                                            3.24.0-r0      high        fixed in 3.26.0-r3         7.5
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-20506      sqlite (used in sqlite-libs)                                            3.24.0-r0      high        fixed in 3.26.0-r3         8.1
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2019-0199       apache tomcat_tomcat-embed-core                                         8.5.34         high        fixed in 9.0.16, 8.5.38    7.5
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-8012       org.apache.zookeeper_zookeeper                                          3.4.6          high        fixed in 3.4.10            7.5
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2016-5017       org.apache.zookeeper_zookeeper                                          3.4.6          high        fixed in 3.5.3, 3.4.9      8.1
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-3169       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    high        fixed in 8.191.12-r0       8.3
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-16435      openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.191.12-r0       5.5
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-3214       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.191.12-r0       5.3
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-13785      openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.191.12-r0       6.5
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-1000873    com.fasterxml.jackson.core_jackson-databind                             2.8.11.2       medium      fixed in 2.9.8             6.5
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-11212      openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.201.08-r0       6.5
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-3180       openjdk8 (used in openjdk8-jre-lib, openjdk8-jre-base, openjdk8-jre)    8.181.13-r0    medium      fixed in 8.191.12-r0       5.6
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-20217      krb5 (used in krb5-libs)                                                1.15.3-r0      medium      fixed in 1.15.4-r0         5.3
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-16435      lcms2                                                                   2.9-r0         medium      fixed in 2.9-r1            5.5
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-10237      com.google.guava_guava                                                  22.0           medium      fixed in 24.1.1            5.9
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-14048      libpng                                                                  1.6.34-r1      medium      fixed in 1.6.35-r0         6.5
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    CVE-2018-13785      libpng                                                                  1.6.34-r1      medium      fixed in 1.6.35-r0         6.5
Vulnerability threshold check results: FAIL

Compliance
----------
Image                             ID                  Severity    Description
-----                             --                  --------    -----------
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    high        (CIS_Docker_CE_v1.1.0 - 4.1) Image should be created with a non-root user
seldonio/engine:0.2.8-SNAPSHOT    4971db697ebfc285    high        Image is not trusted

@martinpanacek
Copy link

Our corporate policy says that all our dependencies need to have reasonably current version (including direct and indirect dependencies). So we are basically not allowed to use Seldon just because it uses outdated libraries. I went through all Seldon Java third-party dependencies (I did not deal with seldon-core-h2o-example and seldn-core-model-template). Here are my findings:

api-frontend

Outdated dependencies:

  • org.springframework.boot:spring-boot-starter-jdbc:jar:1.5.17.RELEASE
  • com.fasterxml.jackson.core:jackson-core:jar:2.8.11
  • com.fasterxml.jackson.core:jackson-databind:jar:2.8.11.2
  • commons-lang:commons-lang:jar:2.6 -> org.apache.commons:commons-lang3:3.8.1
  • org.apache.commons:commons-lang3:jar:3.5 -> 3.8.1
  • org.springframework.boot:spring-boot-starter-web:jar:1.5.17.RELEASE
  • io.grpc:grpc-protobuf:1.5.0
  • io.grpc:grpc-netty:jar:1.5.0
  • io.grpc:grpc-stub:jar:1.5.0
  • com.google.protobuf:protobuf-java:jar:3.2.0
  • com.google.protobuf:protobuf-java-util:jar:3.2.0rc2
  • org.springframework.security.oauth:spring-security-oauth2:jar:2.0.16.RELEASE
  • org.springframework.boot:spring-boot-starter-data-redis:jar:1.5.17.RELEASE
  • mysql:mysql-connector-java:jar:5.1.47
  • org.apache.kafka:kafka-clients:jar:0.11.0.0
  • org.springframework.boot:spring-boot-starter-actuator:jar:1.5.17.RELEASE
  • io.micrometer:micrometer-spring-legacy:jar:1.0.0-rc.1
  • io.micrometer:micrometer-registry-prometheus:jar:1.0.0-rc.1
  • io.kubernetes:client-java:jar:0.2:compile

Dependencies which should have test scope instead of compile scope:

  • junit:junit:jar
  • org.hamcrest:hamcrest-all

cluster-management

Outdated dependencies:

  • io.grpc:grpc-protobuf:jar:1.0.0
  • com.google.protobuf:protobuf-java:jar:3.6.1
  • com.google.protobuf:protobuf-java-util:jar:3.6.1
  • org.apache.commons:commons-lang3:jar:3.5
  • org.springframework.boot:spring-boot-starter-web:jar:1.5.17.RELEASE
  • io.kubernetes:client-java:jar:3.0.0

engine

Outdated dependencies:

  • org.springframework.boot:spring-boot-starter-jdbc:jar:1.5.17.RELEASE:compile
  • org.apache.curator:curator-framework:jar:2.7.1
  • org.apache.curator:curator-recipes:jar:2.7.1
  • com.fasterxml.jackson.core:jackson-core:jar:2.8.11
  • com.fasterxml.jackson.core:jackson-databind:jar:2.8.11.2
  • commons-lang:commons-lang:jar:2.6
  • org.apache.commons:commons-lang3:jar:3.5
  • org.springframework.boot:spring-boot-starter-web:jar:1.5.17.RELEASE
  • io.grpc:grpc-netty:jar:1.14.0:compile
  • io.grpc:grpc-stub:jar:1.14.0:compile
  • io.grpc:grpc-protobuf:jar:1.14.0:compile
  • com.google.protobuf:protobuf-java:jar:3.2.0:compile
  • com.google.protobuf:protobuf-java-util:jar:3.2.0rc2:compile
  • com.google.guava:guava:jar:22.0:compile
  • org.springframework.boot:spring-boot-starter-actuator:jar:1.5.17.RELEASE:compile
  • io.micrometer:micrometer-spring-legacy:jar:1.1.0:compile
  • io.micrometer:micrometer-registry-prometheus:jar:1.1.0:compile
  • io.kubernetes:client-java:jar:1.0.0-beta1:compile
  • io.opentracing.contrib:opentracing-grpc:jar:0.0.10:compile
  • io.opentracing.contrib:opentracing-spring-web:jar:0.3.4:compile

Overall recommendations

  • Ideally all Java libraries should be updated regularly
  • It is good practice to have parent pom where you define versions of all your dependencies (using dependency management) for all your maven modules (java components).

@martinpanacek
Copy link

martinpanacek commented May 2, 2019

Also it would be good to update following python modules:

Flask-OpenTracing 0.2.0 (last version is 1.0.0)
opentracing 1.3.0 (last version is 2.1.0)
tornado 4.5.3 (last version is 6.0.2)
urllib3 1.24.2 (last version is 1.25.2)

@gsunner
Copy link
Member

gsunner commented May 3, 2019

We've done an initial update to the seldon-core images.

@log0ymxm we dont have access to "twistlock" but have tested these against another open source scanner.

seldonio/apife:0.2.8-SNAPSHOT
seldonio/cluster-manager:0.2.8-SNAPSHOT
seldonio/engine:0.2.8-SNAPSHOT

Would be useful if you test again and see which vulnerabilities are remaining.

For ambassador its possible to use another version via the helm value

ambassador.image.tag

@martinpanacek We will review the other changes.

@paul-english
Copy link
Author

@gsunner This is great, this solve some of the system installed dependencies, but it looks like there's still quite a few of the Java dependencies that have known CVE's attached.

@Pips801
Copy link

Pips801 commented May 7, 2019

@gsunner I have pulled the new images and ran a Twistlock vuln scan. It appears literally all of the critical (one with a CVSS of 10!) come from an outdated version of fasterxml/jackson, which has updated and fixed versions.

seldonio/engine:0.2.8-SNAPSHOT

Vulnerabilities
---------------
Image                             ID                  CVE                 Package                                        Version      Severity    Status                     CVSS
-----                             --                  ---                 -------                                        -------      --------    ------                     ----
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2018-19360      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.8             9.8
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2018-19362      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.8             9.8
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2018-14719      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.7             9.8
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2018-19361      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.8             9.8
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2018-14718      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.7             9.8
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2018-14720      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.7             9.8
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2018-14721      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.7             10
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2017-5637       org.apache.zookeeper_zookeeper                 3.4.6        high                                   7.5
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2016-5017       org.apache.zookeeper_zookeeper                 3.4.6        high        fixed in 3.5.3, 3.4.9      8.1
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2018-8012       org.apache.zookeeper_zookeeper                 3.4.6        high        fixed in 3.4.10            7.5
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2019-0199       apache tomcat_tomcat-embed-core                8.5.34       high        fixed in 9.0.16, 8.5.38    7.5
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2018-10237      com.google.guava_guava                         22.0         medium      fixed in 24.1.1            5.9
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2018-14498      libjpeg-turbo                                  1.5.3-r4     medium                                 6.5
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2018-1000873    com.fasterxml.jackson.core_jackson-databind    2.8.11.2     medium      fixed in 2.9.8             6.5
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2019-7317       libpng                                         1.6.35-r0    medium      fixed in 1.6.37-r0         5.3
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2018-14048      libpng                                         1.6.35-r0    medium      fixed in 1.6.37-r0         6.5
seldonio/engine:0.2.8-SNAPSHOT    3fd4e1dc544f94e2    CVE-2018-1000654    libtasn1                                       4.13-r0      medium                                 5.5

seldonio/cluster-manager:0.2.8-SNAPSHOT

Vulnerabilities
---------------
Image                                      ID                  CVE                 Package                                        Version      Severity    Status                     CVSS
-----                                      --                  ---                 -------                                        -------      --------    ------                     ----
seldonio/cluster-manager:0.2.8-SNAPSHOT    86fffe0b196daea6    CVE-2018-14721      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.7             10
seldonio/cluster-manager:0.2.8-SNAPSHOT    86fffe0b196daea6    CVE-2018-19362      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.8             9.8
seldonio/cluster-manager:0.2.8-SNAPSHOT    86fffe0b196daea6    CVE-2018-14719      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.7             9.8
seldonio/cluster-manager:0.2.8-SNAPSHOT    86fffe0b196daea6    CVE-2018-19361      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.8             9.8
seldonio/cluster-manager:0.2.8-SNAPSHOT    86fffe0b196daea6    CVE-2018-14718      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.7             9.8
seldonio/cluster-manager:0.2.8-SNAPSHOT    86fffe0b196daea6    CVE-2018-19360      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.8             9.8
seldonio/cluster-manager:0.2.8-SNAPSHOT    86fffe0b196daea6    CVE-2018-14720      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.7             9.8
seldonio/cluster-manager:0.2.8-SNAPSHOT    86fffe0b196daea6    CVE-2019-0199       apache tomcat_tomcat-embed-core                8.5.34       high        fixed in 9.0.16, 8.5.38    7.5
seldonio/cluster-manager:0.2.8-SNAPSHOT    86fffe0b196daea6    CVE-2018-10237      com.google.guava_guava                         19.0         medium      fixed in 24.1.1            5.9
seldonio/cluster-manager:0.2.8-SNAPSHOT    86fffe0b196daea6    CVE-2018-14498      libjpeg-turbo                                  1.5.3-r4     medium                                 6.5
seldonio/cluster-manager:0.2.8-SNAPSHOT    86fffe0b196daea6    CVE-2018-1000873    com.fasterxml.jackson.core_jackson-databind    2.8.11.2     medium      fixed in 2.9.8             6.5
seldonio/cluster-manager:0.2.8-SNAPSHOT    86fffe0b196daea6    CVE-2019-7317       libpng                                         1.6.35-r0    medium      fixed in 1.6.37-r0         5.3
seldonio/cluster-manager:0.2.8-SNAPSHOT    86fffe0b196daea6    CVE-2018-14048      libpng                                         1.6.35-r0    medium      fixed in 1.6.37-r0         6.5
seldonio/cluster-manager:0.2.8-SNAPSHOT    86fffe0b196daea6    CVE-2018-1000654    libtasn1                                       4.13-r0      medium                                 5.5

seldonio/apife:0.2.8-SNAPSHOT

Vulnerabilities
---------------
Image                            ID                  CVE                 Package                                        Version      Severity    Status                     CVSS
-----                            --                  ---                 -------                                        -------      --------    ------                     ----
seldonio/apife:0.2.8-SNAPSHOT    595143ffd9649504    CVE-2018-19361      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.8             9.8
seldonio/apife:0.2.8-SNAPSHOT    595143ffd9649504    CVE-2018-14720      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.7             9.8
seldonio/apife:0.2.8-SNAPSHOT    595143ffd9649504    CVE-2018-19362      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.8             9.8
seldonio/apife:0.2.8-SNAPSHOT    595143ffd9649504    CVE-2018-14719      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.7             9.8
seldonio/apife:0.2.8-SNAPSHOT    595143ffd9649504    CVE-2018-14721      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.7             10
seldonio/apife:0.2.8-SNAPSHOT    595143ffd9649504    CVE-2018-19360      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.8             9.8
seldonio/apife:0.2.8-SNAPSHOT    595143ffd9649504    CVE-2018-14718      com.fasterxml.jackson.core_jackson-databind    2.8.11.2     critical    fixed in 2.9.7             9.8
seldonio/apife:0.2.8-SNAPSHOT    595143ffd9649504    CVE-2019-0199       apache tomcat_tomcat-embed-core                8.5.34       high        fixed in 9.0.16, 8.5.38    7.5
seldonio/apife:0.2.8-SNAPSHOT    595143ffd9649504    CVE-2018-1000873    com.fasterxml.jackson.core_jackson-databind    2.8.11.2     medium      fixed in 2.9.8             6.5
seldonio/apife:0.2.8-SNAPSHOT    595143ffd9649504    CVE-2018-14498      libjpeg-turbo                                  1.5.3-r4     medium                                 6.5
seldonio/apife:0.2.8-SNAPSHOT    595143ffd9649504    CVE-2019-7317       libpng                                         1.6.35-r0    medium      fixed in 1.6.37-r0         5.3
seldonio/apife:0.2.8-SNAPSHOT    595143ffd9649504    CVE-2018-14048      libpng                                         1.6.35-r0    medium      fixed in 1.6.37-r0         6.5
seldonio/apife:0.2.8-SNAPSHOT    595143ffd9649504    CVE-2018-10237      com.google.guava_guava                         19.0         medium      fixed in 24.1.1            5.9
seldonio/apife:0.2.8-SNAPSHOT    595143ffd9649504    CVE-2018-1000654    libtasn1                                       4.13-r0      medium                                 5.5

@gsunner
Copy link
Member

gsunner commented May 9, 2019

We've updated the 'jackson' dependencies in #547

The latest snapshot images will have this change

@ukclivecox ukclivecox moved this from To do to In progress in 0.3.0 May 24, 2019
@ukclivecox
Copy link
Contributor

Github also reported: Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.9

@gsunner
Copy link
Member

gsunner commented Jun 3, 2019

Closing this for the added fixes.
Please open new Security Vulnerabilities issue if they arise

@gsunner gsunner closed this as completed Jun 3, 2019
@gsunner gsunner moved this from In progress to Done in 0.3.0 Jun 3, 2019
agrski added a commit that referenced this issue Dec 2, 2022
* Use angle brackets to denote metadata direction & position (header/trailer)

Right angle brackets (>) indicate outgoing headers.
Single left angle brackets (<) indicate incoming headers.
Double left angle brackets (<<) indicate incoming trailers.

* Add blank lines after inbound/outbound metadata in gRPC inference requests

* Show response metadata before response itself for gRPC requests

This is consistent with the REST/HTTP1 approach,
and also provides better logical grouping by keeping
all metadata for a single request together.

* Use unary interceptor to log request metadata

Using an interceptor allows us to capture the request method being called,
which is more similar to the REST equivalent.

* Check headers & set up context before creating connection for gRPC

* Add header validation func for gRPC

* Change method -> func as no state used

* Refactor gRPC header parsing/validation to function

* Refactor gRPC metadata injection logic to functions

This makes the main inference call concise and clean to read.

* Use background not TODO context

* Add line breaks for logical grouping

* Move function to under caller

* Use helper functions for REST request metadata injection

* Reorder statements for legibility

* Reorder imports into stdlib/third party dichotomy

* Add missing argument to helper function

* Use closure to capture authority for metadata-logging interceptor

* Simplify setting gRPC authority in connection setup

* Rename var for concision

* Fix typo in function name

* Conditionally use logging interceptor

* Add blank lines for logical separation

* Split long method args list over multiple lines

* Fix typo in var name

* Pass logging options via struct to gRPC inference method

This starts to impose structure on the rather long list of method parameters.
It has the added benefit that the entire group of logging options can then be
passed on to other functions or methods easily.

* Pass inference call options via struct to gRPC inference method

* Fix typos in model inference subcommand

* Provide call & log options in pipeline inference subcommand

* Use logging & call options for REST inference method

* Pass logging options to gRPC connection setup

* Use logging options in unary interceptor for gRPC connections

* Print request in gRPC interceptor, if required

* Print gRPC response metadata in interceptor, if required

* Remove unused trailers var for gRPC inference requests

* Rename interceptor var

* Chain unary gRPC interceptors

* Refactor stream-retry interceptor to var for consistency

* Rename method for clarity

Firstly, it is good to clarify that the object being returned is for gRPC.
Secondly, 'get' implies (potential) reuse of an existing object,
whereas we are creating a fresh object.
In turn, this makes the passing of arguments more reasonable.

* Add comment explaining ordering of chained interceptors
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
0.3.0
  
Done
Development

No branches or pull requests

5 participants