Kubernetes secrets should be used for managing sensitive information.
apiVersion: rules.spotter.dev/v1alpha1
kind: SpotterRule
metadata:
name: spotter-data-001
labels:
severity: "low"
category: "data"
annotations:
rules.spotter.dev/title: "Using Kubernetes Native Secret Management"
rules.spotter.dev/version: "1.0.0"
rules.spotter.dev/cwe: "CWE-522"
rules.spotter.dev/description: "Kubernetes secrets should be used for managing sensitive information."
spec:
match:
resources:
kubernetes:
apiGroups:
- ""
versions:
- "v1"
kinds:
- Secret
namespaces:
include: ["*"]
exclude: []
cel: |
object.kind == "Secret" && (!has(object.data) && !has(object.stringData))
remediation:
manual: "Use Kubernetes secrets to manage sensitive information, such as passwords, OAuth tokens, and ssh keys."
references:
- title: "Kubernetes Secrets"
url: "https://kubernetes.io/docs/concepts/configuration/secret/"