Rule Metadata

Last updated: 2024-01-15
🟡
Severity
MEDIUM
⚙️
Category
Configuration & Resource Hygiene
Version
v1.0.0
Downloads
1.2K
Author: Spotter Security Team
Created: 2024-01-10
Compliance:
CIS NIST

CronJob Deadline Not Configured

A starting deadline for a CronJob is important to prevent jobs from running at unexpected times, for example, after a long downtime.

YAML Configuration

rule.yaml YAML
apiVersion: rules.spotter.dev/v1alpha1
kind: SpotterRule
metadata:
  name: spotter-config-007
  labels:
    severity: "medium"
    category: "config"
  annotations:
    rules.spotter.dev/title: "CronJob Deadline Not Configured"
    rules.spotter.dev/version: "1.0.0"
    rules.spotter.dev/cwe: "CWE-730"
    rules.spotter.dev/description: "A starting deadline for a CronJob is important to prevent jobs from running at unexpected times, for example, after a long downtime."
spec:
  match:
    resources:
      kubernetes:
        apiGroups:
          - "batch"
        versions:
          - "v1"
          - "v1beta1"
        kinds:
          - CronJob
        namespaces:
          include: ["*"]
          exclude: ["kube-system", "kube-public"]
        labels:
          exclude:
            rules.spotter.dev/ignore: ["true"]
  cel: |
    !has(object.spec.startingDeadlineSeconds) || object.spec.startingDeadlineSeconds <= 0
  remediation:
    manual: "Set a startingDeadlineSeconds value for the CronJob."
  references:
    - title: "CronJob Limitations"
      url: "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/#limitations"