Security

Container & Docker Security Audit

Free Docker & Container Security Audit (Trivy, Grype, Cosign, SLSA)

A senior-engineer-verified audit of every Dockerfile, base image, multi-stage build, container registry, and supply-chain control in your stack. Combines Trivy, Grype, Clair, Snyk Container, Anchore, Docker Scout, Hadolint, Dockle, Checkov, KICS, Syft (CycloneDX / SPDX SBOMs), and Cosign / Sigstore / Notary v2 - benchmarked against the CIS Docker Benchmark, NIST SSDF, EO 14028, OWASP Container Top 10, and SLSA Build levels 1-3.

  • Covers Docker, Kubernetes, ECS / Fargate, Cloud Run, Container Apps, Nomad, and Swarm - across ECR, ACR, GAR, GHCR, Docker Hub, Harbor, and JFrog Artifactory
  • Combines Trivy, Grype, Clair, Snyk Container, Anchore, Docker Scout, Hadolint, Syft, and Cosign - mapped to CIS Docker Benchmark, NIST SSDF, EO 14028, and OWASP Container Top 10
  • Senior security engineer verifies every finding - typical first audit surfaces 200+ CVEs in base images, 3-8 hardcoded secrets, and 5-15 Dockerfile hardening gaps
  • Read-only access only
  • Images analysed in isolated sandbox
  • Senior security-engineer verified
  • Live findings walkthrough included

Supported Platforms

Docker
GitHub Container Registry
Amazon ECR
Azure Container Registry
Google Artifact Registry

What We Audit Across Your Container Supply Chain

Six areas covering every gate from Dockerfile commit to production runtime - benchmarked against the CIS Docker Benchmark, NIST SSDF, OWASP Container Top 10, and SLSA Build levels 1-3.

Dockerfile Hardening & Linting

Hadolint, Dockle, Conftest, Checkov, and KICS analysis covering root user execution, ADD vs COPY, secret ARGs and ENVs, multi-stage build opportunities, layer caching, .dockerignore coverage, healthcheck quality, and USER / WORKDIR / ENTRYPOINT hygiene - with line-level remediations against CIS Docker Benchmark and OWASP Container Top 10.

Base Image & CVE Vulnerability Scan

Trivy, Grype, Clair, Snyk Container, Anchore, Docker Scout, and AWS Inspector results triaged for actual exploitability - not raw CVSS. Every CVE mapped to a fix path: minimal base image swap (Alpine, distroless, scratch), Chainguard Wolfi migration, or pinned upstream patch with quantified risk reduction.

Secret Detection in Build Context, Layers & History

Scans build ARGs, ENVs, every image layer, history metadata, and .dockerignore-leaked files for hardcoded credentials, cloud keys, GitHub / GitLab tokens, private keys, JWT secrets, and database URLs - using Gitleaks, TruffleHog, and Trivy secret detection, mapped to the exact layer and instruction.

SBOM Generation & Supply-Chain Provenance

Generates SBOMs in CycloneDX and SPDX formats with Syft, validates against in-toto attestations and SLSA Build level 1-3 provenance, flags high-risk or EOL dependencies, identifies typosquats, and maps the build pipeline against NIST SSDF and EO 14028 for federal and enterprise procurement.

Registry, Image Signing & Admission Control

Reviews registry access controls, image immutability, retention, and replication for ECR, ACR, GAR, GHCR, Docker Hub, Harbor, and Quay. Audits Cosign / Sigstore / Notary v2 signing coverage, Rekor transparency-log verification, attestation policy, and admission control (Kyverno, OPA/Gatekeeper, Connaisseur, Ratify) so unsigned images cannot reach production.

Runtime Hardening & Container Score

Evaluates seccomp and AppArmor / SELinux profiles, read-only root filesystem, dropped Linux capabilities, runAsNonRoot enforcement, gVisor and Kata Containers, and runtime detection (Falco, Tracee, Sysdig). Returns a Container Security Score (0-100) with Crawl / Walk / Run maturity and a prioritised remediation roadmap.

How It Works

1

Register & Grant Read-Only Access

Provide a read-only token to your registry (ECR, ACR, GAR, GHCR, Docker Hub, Harbor) and your repository (GitHub App, fine-grained PAT, GitLab project token, or Azure DevOps PAT) so we can pull image manifests and Dockerfiles. No write access, no source code clones leave your environment.

2

Automated Image, Dockerfile & Pipeline Scan

Images are pulled into an isolated, network-restricted sandbox and scanned with Trivy, Grype, Clair, Snyk Container, Anchore, and Docker Scout. Dockerfiles are linted with Hadolint, Dockle, Conftest, Checkov, KICS. SBOMs via Syft validated against in-toto and SLSA provenance. Build pipelines and registry policy reviewed for signing, admission, and supply-chain controls.

3

Senior Security Engineer Verification

A senior security engineer reviews every finding, removes false positives, models exploitability against your stack, recommends targeted base-image swaps (Alpine, distroless, Chainguard Wolfi, scratch) where they pay off, and rewrites recommendations into line-level Dockerfile remediations and registry policy changes.

4

Receive Report & Live Debrief

Get your Container Security Score, line-level Dockerfile remediations, base-image migration plan, SBOM and SLSA gap report, registry and signing roadmap, and runtime hardening backlog - within 1-2 business days, plus a 45-minute live walkthrough.

What You Get

Your report will include the following deliverables.

Container Security Score (0-100) with Crawl / Walk / Run maturity per area
Line-level Dockerfile remediations (Hadolint, Dockle, Conftest, Checkov, KICS) mapped to CIS Docker Benchmark
Base-image CVE report (Trivy, Grype, Clair, Snyk, Anchore, Docker Scout) with distroless / Chainguard Wolfi migration plan
Secret-detection findings mapped to specific image layers and instructions
SBOM in CycloneDX and SPDX formats plus SLSA Build level 1-3 provenance gap report
Registry hardening report (ECR, ACR, GAR, GHCR, Docker Hub, Harbor, Quay) with Cosign / Sigstore signing roadmap
Admission-control gap analysis (Kyverno, OPA/Gatekeeper, Connaisseur, Ratify)
Runtime hardening backlog (seccomp, AppArmor / SELinux, capabilities, runAsNonRoot, Falco / Tracee coverage)
Compliance mapping to CIS Docker Benchmark, NIST SSDF, EO 14028, OWASP Container Top 10, SOC 2, ISO 27001
Prioritised remediation roadmap and 45-minute live findings walkthrough

Ship containers an attacker cannot break into.

Get a senior-engineer-verified Container Security Report covering Dockerfiles, base images, registries, signing, SBOMs, and runtime hardening - read-only access only, images analysed in an isolated sandbox, completely free.

Get My Container Security Report

How We Handle Your Images & Build Configuration

A container audit must never become a supply-chain incident. Here is exactly what we read - and what never leaves your environment.

Read-Only Registry & Repository Access

We use a read-only registry token and a read-only SCM token (GitHub App, fine-grained PAT, GitLab project token, or Azure DevOps PAT) scoped strictly to image-pull and Dockerfile-read permissions, time-limited to the audit window. We can never push images, modify tags, change registry policy, or commit to your repositories.

Images Analysed in Isolated, Network-Restricted Sandbox

Images are pulled into a per-audit sandbox with no outbound internet egress except to your registry, no shared state with other engagements, and full network isolation. Application source code is never cloned off your infrastructure - only Dockerfiles and build configuration are read for the lint and pipeline review.

Auto-Revoked & Destroyed After Audit

As soon as your Container Security Report is delivered, every credential is revoked, the analysis sandbox and every pulled image are destroyed, and the SBOM exports are deleted. Only aggregate, anonymised findings are retained for QA - never image digests, repository names, or registry paths.

Frequently Asked Questions

The most common questions we hear from teams running this assessment.

What access do you actually need? Does our source code or any image leave our environment?

A read-only registry token (ECR / ACR / GAR / GHCR / Docker Hub / Harbor / Artifactory / Quay) for image pulls and a read-only SCM token (GitHub App, fine-grained PAT, GitLab project token, or Azure DevOps PAT) for Dockerfile reads - both scoped to the minimum permissions and time-limited to the audit window. Images are pulled into an isolated, network-restricted sandbox; we never push images, modify tags, or commit anything. Application source code is never cloned off your infrastructure - only Dockerfiles and build configuration are read.

Which scanners and benchmarks do you actually run?

Trivy, Grype, Clair, Snyk Container, Anchore, Docker Scout, and AWS Inspector for vulnerability and misconfiguration scanning; Hadolint, Dockle, Conftest, Checkov, and KICS for Dockerfile linting and policy; Gitleaks, TruffleHog, and Trivy secret detection for credential leakage; Syft for SBOM generation in CycloneDX and SPDX formats; Cosign and Rekor for signing and transparency-log verification. Findings are benchmarked against the CIS Docker Benchmark, NIST SSDF (SP 800-218), Executive Order 14028, OWASP Container Security Top 10, and SLSA Build levels 1-3.

How is this different from running Trivy or Snyk in CI ourselves?

Those tools produce raw findings; this audit interprets them. A senior security engineer triages every finding for actual exploitability against your stack, removes false positives (e.g. CVEs in unused libraries that are not reachable), combines results across Trivy, Grype, Clair, Snyk Container, Anchore, Docker Scout, Hadolint, Dockle, and Syft with manual review of build pipelines, registry policy, signing posture, and admission control - into a prioritised, line-level remediation plan with a quantified base-image migration roadmap, rather than a 10,000-line raw vulnerability dump.

Should we migrate to distroless or Chainguard Wolfi? Will the report tell us where it pays off?

Yes - that is one of the highest-ROI parts of the audit. We map every base image to its CVE count, support lifecycle, and image size, and identify exactly which workloads benefit most from a swap to Alpine, distroless (gcr.io/distroless), Chainguard Wolfi / Chainguard Images, or scratch. The migration plan includes the exact Dockerfile changes, expected CVE reduction, build-time and runtime impact, and the workloads where staying on Debian / Ubuntu / UBI is the right call (e.g. specific glibc dependencies).

Do you cover SBOM, SLSA provenance, and EO 14028 supply-chain requirements?

Yes. We generate SBOMs in CycloneDX and SPDX formats with Syft, validate in-toto attestations and SLSA Build level 1-3 provenance, and map your build pipeline to NIST SSDF (SP 800-218) and the supply-chain requirements of US Executive Order 14028. The report tells you exactly what you need to add to be SLSA Build level 2 or 3 compliant for federal or enterprise procurement, and includes Cosign / Sigstore signing rollout and admission-control (Kyverno, OPA/Gatekeeper, Connaisseur, Ratify) deployment plans.

Can the audit cover runtime hardening as well as build-time?

Yes. The audit reviews seccomp profiles, AppArmor / SELinux profiles, dropped Linux capabilities, read-only root filesystem adoption, runAsNonRoot enforcement, gVisor and Kata Containers usage, and runtime detection coverage with Falco, Tracee, and Sysdig. The runtime backlog is delivered alongside the build-time remediations so platform teams can sequence quick Dockerfile wins ahead of cluster-wide Pod Security Admission and admission-controller rollouts.

Will the audit affect production or trigger registry alarms?

No. The audit is fully read-only. Image pulls happen at a controlled rate against the registry endpoints you authorise; we never push, retag, delete, or modify policy. Where your CSPM / CWPP / SIEM (Wiz, Orca, Prisma Cloud, Lacework, CrowdStrike, Defender) might flag the read activity we can pre-coordinate with your detection team - but in practice the calls look identical to a normal CI pull.

How long until we receive the report?

Typical turnaround is 1-2 business days from the moment read-only access is granted, plus a 45-minute live findings walkthrough at a time that suits your security and platform leads. Larger estates with hundreds of images across multiple registries can take a little longer; we confirm the timeline as soon as we see the scope.

Register for Your Free Container & Docker Security Audit

Fill out the form below and our team will get back to you within 2 business days.

Your Container Footprint

These six answers help us scope the audit, choose the right scanners, and tailor the Dockerfile remediations and registry hardening plan to your specific stack.

Your data is protected under our Non-Disclosure Agreement.By registering, you and OpsHero are bound by our NDA - guaranteeing your data is used solely to generate this report, runs in an isolated sandbox, and is permanently deleted once complete. We retain absolutely nothing.

By clicking "Register for Free Review" you agree to our Non-Disclosure Agreement and confirm your data may be processed solely for report generation.