626 KiB
626 KiB
hide | |
---|---|
|
Security Overview
Helm-Chart
Scan Results
Chart Object: prometheus/charts/kube-state-metrics/templates/deployment.yaml
Type | Misconfiguration ID | Check | Severity | Explaination | Links |
---|---|---|---|---|---|
Kubernetes Security Check | KSV001 | Process can elevate its own privileges | MEDIUM | Expand...A program inside the container can elevate its own privileges and run as root, which might give the program control over the container and node.Container 'kube-state-metrics' of Deployment 'RELEASE-NAME-kube-state-metrics' should set 'securityContext.allowPrivilegeEscalation' to false |
|
Kubernetes Security Check | KSV003 | Default capabilities not dropped | LOW | Expand...The container should drop all default capabilities and add only those that are needed for its execution.Container 'kube-state-metrics' of Deployment 'RELEASE-NAME-kube-state-metrics' should add 'ALL' to 'securityContext.capabilities.drop' |
|
Kubernetes Security Check | KSV011 | CPU not limited | LOW | Expand...Enforcing CPU limits prevents DoS via resource exhaustion.Container 'kube-state-metrics' of Deployment 'RELEASE-NAME-kube-state-metrics' should set 'resources.limits.cpu' |
|
Kubernetes Security Check | KSV012 | Runs as root user | MEDIUM | Expand...'runAsNonRoot' forces the running image to run as a non-root user to ensure least privileges.Container 'kube-state-metrics' of Deployment 'RELEASE-NAME-kube-state-metrics' should set 'securityContext.runAsNonRoot' to true |
|
Kubernetes Security Check | KSV014 | Root file system is not read-only | LOW | Expand...An immutable root file system prevents applications from writing to their local disk. This can limit intrusions, as attackers will not be able to tamper with the file system or write foreign executables to disk.Container 'kube-state-metrics' of Deployment 'RELEASE-NAME-kube-state-metrics' should set 'securityContext.readOnlyRootFilesystem' to true |
|
Kubernetes Security Check | KSV015 | CPU requests not specified | LOW | Expand...When containers have resource requests specified, the scheduler can make better decisions about which nodes to place pods on, and how to deal with resource contention.Container 'kube-state-metrics' of Deployment 'RELEASE-NAME-kube-state-metrics' should set 'resources.requests.cpu' |
|
Kubernetes Security Check | KSV016 | Memory requests not specified | LOW | Expand...When containers have memory requests specified, the scheduler can make better decisions about which nodes to place pods on, and how to deal with resource contention.Container 'kube-state-metrics' of Deployment 'RELEASE-NAME-kube-state-metrics' should set 'resources.requests.memory' |
|
Kubernetes Security Check | KSV018 | Memory not limited | LOW | Expand...Enforcing memory limits prevents DoS via resource exhaustion.Container 'kube-state-metrics' of Deployment 'RELEASE-NAME-kube-state-metrics' should set 'resources.limits.memory' |
|
Kubernetes Security Check | KSV020 | Runs with low user ID | MEDIUM | Expand...Force the container to run with user ID > 10000 to avoid conflicts with the host’s user table.Container 'kube-state-metrics' of Deployment 'RELEASE-NAME-kube-state-metrics' should set 'securityContext.runAsUser' > 10000 |
|
Kubernetes Security Check | KSV021 | Runs with low group ID | MEDIUM | Expand...Force the container to run with group ID > 10000 to avoid conflicts with the host’s user table.Container 'kube-state-metrics' of Deployment 'RELEASE-NAME-kube-state-metrics' should set 'securityContext.runAsGroup' > 10000 |
|
Kubernetes Security Check | KSV029 | A root primary or supplementary GID set | LOW | Expand...Containers should be forbidden from running with a root primary or supplementary GID.Deployment 'RELEASE-NAME-kube-state-metrics' should set 'spec.securityContext.runAsGroup', 'spec.securityContext.supplementalGroups[*]' and 'spec.securityContext.fsGroup' to integer greater than 0 |
No Misconfigurations found |
---|
No Misconfigurations found |
---|
No Misconfigurations found |
---|
Type | Misconfiguration ID | Check | Severity | Explaination | Links |
---|---|---|---|---|---|
Kubernetes Security Check | KSV001 | Process can elevate its own privileges | MEDIUM | Expand...A program inside the container can elevate its own privileges and run as root, which might give the program control over the container and node.Container 'node-exporter' of DaemonSet 'RELEASE-NAME-node-exporter' should set 'securityContext.allowPrivilegeEscalation' to false |
|
Kubernetes Security Check | KSV003 | Default capabilities not dropped | LOW | Expand...The container should drop all default capabilities and add only those that are needed for its execution.Container 'node-exporter' of DaemonSet 'RELEASE-NAME-node-exporter' should add 'ALL' to 'securityContext.capabilities.drop' |
|
Kubernetes Security Check | KSV009 | Access to host network | HIGH | Expand...Sharing the host’s network namespace permits processes in the pod to communicate with processes bound to the host’s loopback adapter.DaemonSet 'RELEASE-NAME-node-exporter' should not set 'spec.template.spec.hostNetwork' to true |
|
Kubernetes Security Check | KSV010 | Access to host PID | HIGH | Expand...Sharing the host’s PID namespace allows visibility on host processes, potentially leaking information such as environment variables and configuration.DaemonSet 'RELEASE-NAME-node-exporter' should not set 'spec.template.spec.hostPID' to true |
|
Kubernetes Security Check | KSV011 | CPU not limited | LOW | Expand...Enforcing CPU limits prevents DoS via resource exhaustion.Container 'node-exporter' of DaemonSet 'RELEASE-NAME-node-exporter' should set 'resources.limits.cpu' |
|
Kubernetes Security Check | KSV014 | Root file system is not read-only | LOW | Expand...An immutable root file system prevents applications from writing to their local disk. This can limit intrusions, as attackers will not be able to tamper with the file system or write foreign executables to disk.Container 'node-exporter' of DaemonSet 'RELEASE-NAME-node-exporter' should set 'securityContext.readOnlyRootFilesystem' to true |
|
Kubernetes Security Check | KSV015 | CPU requests not specified | LOW | Expand...When containers have resource requests specified, the scheduler can make better decisions about which nodes to place pods on, and how to deal with resource contention.Container 'node-exporter' of DaemonSet 'RELEASE-NAME-node-exporter' should set 'resources.requests.cpu' |
|
Kubernetes Security Check | KSV016 | Memory requests not specified | LOW | Expand...When containers have memory requests specified, the scheduler can make better decisions about which nodes to place pods on, and how to deal with resource contention.Container 'node-exporter' of DaemonSet 'RELEASE-NAME-node-exporter' should set 'resources.requests.memory' |
|
Kubernetes Security Check | KSV018 | Memory not limited | LOW | Expand...Enforcing memory limits prevents DoS via resource exhaustion.Container 'node-exporter' of DaemonSet 'RELEASE-NAME-node-exporter' should set 'resources.limits.memory' |
|
Kubernetes Security Check | KSV020 | Runs with low user ID | MEDIUM | Expand...Force the container to run with user ID > 10000 to avoid conflicts with the host’s user table.Container 'node-exporter' of DaemonSet 'RELEASE-NAME-node-exporter' should set 'securityContext.runAsUser' > 10000 |
|
Kubernetes Security Check | KSV021 | Runs with low group ID | MEDIUM | Expand...Force the container to run with group ID > 10000 to avoid conflicts with the host’s user table.Container 'node-exporter' of DaemonSet 'RELEASE-NAME-node-exporter' should set 'securityContext.runAsGroup' > 10000 |
|
Kubernetes Security Check | KSV023 | hostPath volumes mounted | MEDIUM | Expand...HostPath volumes must be forbidden.DaemonSet 'RELEASE-NAME-node-exporter' should not set 'spec.template.volumes.hostPath' |
|
Kubernetes Security Check | KSV029 | A root primary or supplementary GID set | LOW | Expand...Containers should be forbidden from running with a root primary or supplementary GID.DaemonSet 'RELEASE-NAME-node-exporter' should set 'spec.securityContext.runAsGroup', 'spec.securityContext.supplementalGroups[*]' and 'spec.securityContext.fsGroup' to integer greater than 0 |
No Misconfigurations found |
---|
No Misconfigurations found |
---|
No Misconfigurations found |
---|
No Misconfigurations found |
---|
Type | Misconfiguration ID | Check | Severity | Explaination | Links |
---|---|---|---|---|---|
Kubernetes Security Check | KSV003 | Default capabilities not dropped | LOW | Expand...The container should drop all default capabilities and add only those that are needed for its execution.Container 'RELEASE-NAME-prometheus' of Deployment 'RELEASE-NAME-prometheus' should add 'ALL' to 'securityContext.capabilities.drop' |
|
Kubernetes Security Check | KSV011 | CPU not limited | LOW | Expand...Enforcing CPU limits prevents DoS via resource exhaustion.Container 'alertmanager' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should set 'resources.limits.cpu' |
|
Kubernetes Security Check | KSV011 | CPU not limited | LOW | Expand...Enforcing CPU limits prevents DoS via resource exhaustion.Container 'config-reloader' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should set 'resources.limits.cpu' |
|
Kubernetes Security Check | KSV011 | CPU not limited | LOW | Expand...Enforcing CPU limits prevents DoS via resource exhaustion.Container 'config-reloader' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should set 'resources.limits.cpu' |
|
Kubernetes Security Check | KSV011 | CPU not limited | LOW | Expand...Enforcing CPU limits prevents DoS via resource exhaustion.Container 'prometheus' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should set 'resources.limits.cpu' |
|
Kubernetes Security Check | KSV012 | Runs as root user | MEDIUM | Expand...'runAsNonRoot' forces the running image to run as a non-root user to ensure least privileges.Container 'autopermissions' of Deployment 'RELEASE-NAME-prometheus' should set 'securityContext.runAsNonRoot' to true |
|
Kubernetes Security Check | KSV013 | Image tag ':latest' used | LOW | Expand...It is best to avoid using the ':latest' image tag when deploying containers in production. Doing so makes it hard to track which version of the image is running, and hard to roll back the version.Container 'alertmanager' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should specify an image tag |
|
Kubernetes Security Check | KSV013 | Image tag ':latest' used | LOW | Expand...It is best to avoid using the ':latest' image tag when deploying containers in production. Doing so makes it hard to track which version of the image is running, and hard to roll back the version.Container 'config-reloader' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should specify an image tag |
|
Kubernetes Security Check | KSV013 | Image tag ':latest' used | LOW | Expand...It is best to avoid using the ':latest' image tag when deploying containers in production. Doing so makes it hard to track which version of the image is running, and hard to roll back the version.Container 'config-reloader' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should specify an image tag |
|
Kubernetes Security Check | KSV013 | Image tag ':latest' used | LOW | Expand...It is best to avoid using the ':latest' image tag when deploying containers in production. Doing so makes it hard to track which version of the image is running, and hard to roll back the version.Container 'prometheus' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should specify an image tag |
|
Kubernetes Security Check | KSV014 | Root file system is not read-only | LOW | Expand...An immutable root file system prevents applications from writing to their local disk. This can limit intrusions, as attackers will not be able to tamper with the file system or write foreign executables to disk.Container 'RELEASE-NAME-prometheus' of Deployment 'RELEASE-NAME-prometheus' should set 'securityContext.readOnlyRootFilesystem' to true |
|
Kubernetes Security Check | KSV014 | Root file system is not read-only | LOW | Expand...An immutable root file system prevents applications from writing to their local disk. This can limit intrusions, as attackers will not be able to tamper with the file system or write foreign executables to disk.Container 'alertmanager' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should set 'securityContext.readOnlyRootFilesystem' to true |
|
Kubernetes Security Check | KSV014 | Root file system is not read-only | LOW | Expand...An immutable root file system prevents applications from writing to their local disk. This can limit intrusions, as attackers will not be able to tamper with the file system or write foreign executables to disk.Container 'autopermissions' of Deployment 'RELEASE-NAME-prometheus' should set 'securityContext.readOnlyRootFilesystem' to true |
|
Kubernetes Security Check | KSV014 | Root file system is not read-only | LOW | Expand...An immutable root file system prevents applications from writing to their local disk. This can limit intrusions, as attackers will not be able to tamper with the file system or write foreign executables to disk.Container 'config-reloader' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should set 'securityContext.readOnlyRootFilesystem' to true |
|
Kubernetes Security Check | KSV014 | Root file system is not read-only | LOW | Expand...An immutable root file system prevents applications from writing to their local disk. This can limit intrusions, as attackers will not be able to tamper with the file system or write foreign executables to disk.Container 'config-reloader' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should set 'securityContext.readOnlyRootFilesystem' to true |
|
Kubernetes Security Check | KSV014 | Root file system is not read-only | LOW | Expand...An immutable root file system prevents applications from writing to their local disk. This can limit intrusions, as attackers will not be able to tamper with the file system or write foreign executables to disk.Container 'prometheus' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should set 'securityContext.readOnlyRootFilesystem' to true |
|
Kubernetes Security Check | KSV015 | CPU requests not specified | LOW | Expand...When containers have resource requests specified, the scheduler can make better decisions about which nodes to place pods on, and how to deal with resource contention.Container 'alertmanager' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should set 'resources.requests.cpu' |
|
Kubernetes Security Check | KSV015 | CPU requests not specified | LOW | Expand...When containers have resource requests specified, the scheduler can make better decisions about which nodes to place pods on, and how to deal with resource contention.Container 'config-reloader' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should set 'resources.requests.cpu' |
|
Kubernetes Security Check | KSV015 | CPU requests not specified | LOW | Expand...When containers have resource requests specified, the scheduler can make better decisions about which nodes to place pods on, and how to deal with resource contention.Container 'config-reloader' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should set 'resources.requests.cpu' |
|
Kubernetes Security Check | KSV015 | CPU requests not specified | LOW | Expand...When containers have resource requests specified, the scheduler can make better decisions about which nodes to place pods on, and how to deal with resource contention.Container 'prometheus' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should set 'resources.requests.cpu' |
|
Kubernetes Security Check | KSV016 | Memory requests not specified | LOW | Expand...When containers have memory requests specified, the scheduler can make better decisions about which nodes to place pods on, and how to deal with resource contention.Container 'alertmanager' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should set 'resources.requests.memory' |
|
Kubernetes Security Check | KSV016 | Memory requests not specified | LOW | Expand...When containers have memory requests specified, the scheduler can make better decisions about which nodes to place pods on, and how to deal with resource contention.Container 'config-reloader' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should set 'resources.requests.memory' |
|
Kubernetes Security Check | KSV016 | Memory requests not specified | LOW | Expand...When containers have memory requests specified, the scheduler can make better decisions about which nodes to place pods on, and how to deal with resource contention.Container 'config-reloader' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should set 'resources.requests.memory' |
|
Kubernetes Security Check | KSV016 | Memory requests not specified | LOW | Expand...When containers have memory requests specified, the scheduler can make better decisions about which nodes to place pods on, and how to deal with resource contention.Container 'prometheus' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should set 'resources.requests.memory' |
|
Kubernetes Security Check | KSV018 | Memory not limited | LOW | Expand...Enforcing memory limits prevents DoS via resource exhaustion.Container 'alertmanager' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should set 'resources.limits.memory' |
|
Kubernetes Security Check | KSV018 | Memory not limited | LOW | Expand...Enforcing memory limits prevents DoS via resource exhaustion.Container 'config-reloader' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should set 'resources.limits.memory' |
|
Kubernetes Security Check | KSV018 | Memory not limited | LOW | Expand...Enforcing memory limits prevents DoS via resource exhaustion.Container 'config-reloader' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should set 'resources.limits.memory' |
|
Kubernetes Security Check | KSV018 | Memory not limited | LOW | Expand...Enforcing memory limits prevents DoS via resource exhaustion.Container 'prometheus' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should set 'resources.limits.memory' |
|
Kubernetes Security Check | KSV020 | Runs with low user ID | MEDIUM | Expand...Force the container to run with user ID > 10000 to avoid conflicts with the host’s user table.Container 'RELEASE-NAME-prometheus' of Deployment 'RELEASE-NAME-prometheus' should set 'securityContext.runAsUser' > 10000 |
|
Kubernetes Security Check | KSV020 | Runs with low user ID | MEDIUM | Expand...Force the container to run with user ID > 10000 to avoid conflicts with the host’s user table.Container 'alertmanager' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should set 'securityContext.runAsUser' > 10000 |
|
Kubernetes Security Check | KSV020 | Runs with low user ID | MEDIUM | Expand...Force the container to run with user ID > 10000 to avoid conflicts with the host’s user table.Container 'autopermissions' of Deployment 'RELEASE-NAME-prometheus' should set 'securityContext.runAsUser' > 10000 |
|
Kubernetes Security Check | KSV020 | Runs with low user ID | MEDIUM | Expand...Force the container to run with user ID > 10000 to avoid conflicts with the host’s user table.Container 'config-reloader' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should set 'securityContext.runAsUser' > 10000 |
|
Kubernetes Security Check | KSV020 | Runs with low user ID | MEDIUM | Expand...Force the container to run with user ID > 10000 to avoid conflicts with the host’s user table.Container 'config-reloader' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should set 'securityContext.runAsUser' > 10000 |
|
Kubernetes Security Check | KSV020 | Runs with low user ID | MEDIUM | Expand...Force the container to run with user ID > 10000 to avoid conflicts with the host’s user table.Container 'prometheus' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should set 'securityContext.runAsUser' > 10000 |
|
Kubernetes Security Check | KSV021 | Runs with low group ID | MEDIUM | Expand...Force the container to run with group ID > 10000 to avoid conflicts with the host’s user table.Container 'RELEASE-NAME-prometheus' of Deployment 'RELEASE-NAME-prometheus' should set 'securityContext.runAsGroup' > 10000 |
|
Kubernetes Security Check | KSV021 | Runs with low group ID | MEDIUM | Expand...Force the container to run with group ID > 10000 to avoid conflicts with the host’s user table.Container 'alertmanager' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should set 'securityContext.runAsGroup' > 10000 |
|
Kubernetes Security Check | KSV021 | Runs with low group ID | MEDIUM | Expand...Force the container to run with group ID > 10000 to avoid conflicts with the host’s user table.Container 'autopermissions' of Deployment 'RELEASE-NAME-prometheus' should set 'securityContext.runAsGroup' > 10000 |
|
Kubernetes Security Check | KSV021 | Runs with low group ID | MEDIUM | Expand...Force the container to run with group ID > 10000 to avoid conflicts with the host’s user table.Container 'config-reloader' of Alertmanager 'RELEASE-NAME-prometheus-alertmanager' should set 'securityContext.runAsGroup' > 10000 |
|
Kubernetes Security Check | KSV021 | Runs with low group ID | MEDIUM | Expand...Force the container to run with group ID > 10000 to avoid conflicts with the host’s user table.Container 'config-reloader' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should set 'securityContext.runAsGroup' > 10000 |
|
Kubernetes Security Check | KSV021 | Runs with low group ID | MEDIUM | Expand...Force the container to run with group ID > 10000 to avoid conflicts with the host’s user table.Container 'prometheus' of Prometheus 'RELEASE-NAME-prometheus-prometheus' should set 'securityContext.runAsGroup' > 10000 |
|
Kubernetes Security Check | KSV029 | A root primary or supplementary GID set | LOW | Expand...Containers should be forbidden from running with a root primary or supplementary GID.Deployment 'RELEASE-NAME-prometheus' should set 'spec.securityContext.runAsGroup', 'spec.securityContext.supplementalGroups[*]' and 'spec.securityContext.fsGroup' to integer greater than 0 |
No Misconfigurations found |
---|
No Misconfigurations found |
---|
No Misconfigurations found |
---|
No Misconfigurations found |
---|
No Misconfigurations found |
---|
Containers
Detected Containers
tccr.io/truecharts/alpine:v3.14.2@sha256:4095394abbae907e94b1f2fd2e2de6c4f201a5b9704573243ca8eb16db8cdb7c
tccr.io/truecharts/prometheus-operator:v0.53.1@sha256:544c374aff1ba203b78fc7e7c400fb7cc373b4400ca4df1a1b078026059341d7
bitnami/node-exporter:1.3.1-debian-10-r0
bitnami/kube-state-metrics:2.3.0-debian-10-r0
Scan Results
Container: tccr.io/truecharts/alpine:v3.14.2@sha256:4095394abbae907e94b1f2fd2e2de6c4f201a5b9704573243ca8eb16db8cdb7c (alpine 3.14.2)
alpine
Container: tccr.io/truecharts/prometheus-operator:v0.53.1@sha256:544c374aff1ba203b78fc7e7c400fb7cc373b4400ca4df1a1b078026059341d7 (debian 10.11)
debian
gobinary
gobinary
No Vulnerabilities found |
---|
Container: bitnami/node-exporter:1.3.1-debian-10-r0 (debian 10.11)
debian
gobinary
Package | Vulnerability | Severity | Installed Version | Fixed Version | Links |
---|---|---|---|---|---|
golang.org/x/text | CVE-2021-38561 | UNKNOWN | v0.3.6 | 0.3.7 | Expand... |
Container: bitnami/kube-state-metrics:2.3.0-debian-10-r0 (debian 10.11)
debian
gobinary
No Vulnerabilities found |
---|