Compromised Image Pulled from Untracked Registry
The running container image cannot be traced to a specific, approved build: it was pulled from an external or unapproved registry, built outside standard CI/CD, or has a non-deterministic tag like `:latest`. Provenance is missing, SBOM is unavailable, and the malicious content cannot be distinguished from a legitimate base.
Signals
- •Container image reference resolves to a public Docker Hub or untracked registry
- •Image tag is `:latest` or a non-version-pinned value
- •No SBOM, no provenance attestation, no signature for the deployed image
- •Image digest does not match any known internal build record
Pivot Actions
- 1.Pull the exact image digest from runtime (`crictl inspect`, `docker inspect`) and preserve it as evidence before any rollback
- 2.Inspect the image layers: `skopeo inspect` and `dive` to walk the layer history; identify the unexpected or suspicious layers
- 3.Query admission-controller logs (OPA Gatekeeper, Kyverno, AWS ECR enhanced scanning) for the image-pull event to identify who deployed it and when
- 4.If signature policy was bypassed, add temporary admission rules enforcing signature-verification and SBOM-presence on all new deployments
- 5.Build an emergency SBOM from the preserved image using Syft or Trivy to understand what is actually present
Alternate Evidence Sources
- •Runtime inspection of the preserved image (skopeo inspect, dive, syft)
- •Admission-controller audit logs (Gatekeeper, Kyverno) showing who deployed what
- •Registry audit logs if the untracked registry has any audit at all
- •Emergency-generated SBOM from the preserved image