coredns-fips

Echo's FIPS-validated CoreDNS image — the DNS server that provides service discovery in Kubernetes, built on FIPS 140-3 validated cryptography for FedRAMP and US government workloads.

coredns-fips, coredns, fips 140-3, fedramp, DNS server

What is CoreDNS FIPS?

The CoreDNS image packages the CoreDNS DNS server, a CNCF graduated project written in Go and built around a chain of plugins. It is best known as the default cluster DNS for Kubernetes, where it resolves service and pod names, forwards external queries to upstream resolvers, and caches answers. The same image is also used as a standalone authoritative or forwarding DNS server, configured through a Corefile that declares zones and the plugins that handle them, such as kubernetes, forward, cache, hosts, and prometheus. It is used by platform and networking teams that need a small, reproducible DNS server for clusters, split-horizon setups, and local development environments.

The CoreDNS FIPS image is Echo's FIPS variant of CoreDNS: the same DNS server, built to run on FIPS 140-3 validated cryptography. It is designed for organizations that sell to or operate for the US government — FedRAMP-authorized services, federal contractors, and regulated industries — where a DNS server that answers every name lookup for the workloads in a cluster and forwards unresolved queries upstream must use cryptographic modules with an active NIST CMVP certificate, not merely FIPS-enabled libraries.

What is Echo's CoreDNS FIPS image?

Echo's CoreDNS FIPS image is a hardened, FIPS-validated build of CoreDNS on Echo's hardened base. Because CoreDNS is written in Go, its cryptography is handled by a CMVP-validated Go crypto module such as BoringCrypto rather than by OpenSSL; Echo supports OpenSSL, BoringCrypto, and Bouncy Castle across its FIPS images. Echo images are designed to be a drop-in replacement: swap the image reference in your Dockerfile or deployment manifest for the coredns-fips image and CVEs go to zero without disrupting your Corefile configuration, plugins, upstream forwarders, and cluster DNS settings. Every image is tested across clouds, image use cases, and deployment targets. Echo ships every image in two variants:

  • Distroless variant — optimized for runtime use, with the smallest possible attack surface
  • Default variant — includes essential build tools, package managers, and shells for teams that need operational access

For production CoreDNS deployments, the distroless variant keeps all runtime operations — DNS query resolution, plugin chain execution, caching, forwarding, and Kubernetes service discovery — fully intact while minimizing exposure; the default variant suits platform and networking teams that need shell access for debugging resolution problems, testing queries, or inspecting the Corefile.

What is the difference between Echo's CoreDNS FIPS image and the public CoreDNS image?

Public CoreDNS images ship on general-purpose bases whose cryptographic libraries have not been validated under FIPS 140-3, and FIPS-enabled is not the same as FIPS-validated — auditors for FedRAMP and other federal frameworks flag the gap. Those bases also include OS-level tooling convenient for development but which contribute CVEs that accumulate on a DNS server used in production. CoreDNS images run continuously with access to cluster service topology, internal zone data, and upstream resolver configuration. OS-level CVEs in the base image — particularly in libraries such as openssl, zlib, and libc, along with the Go runtime dependencies — create exploitable paths that bypass application-layer controls entirely, allowing attackers to move from a network-reachable service to host-level access. For teams running CoreDNS across many environments, the image is also a steady source of scanner noise in the CI pipeline — every package in the base becomes a finding your security team must triage, even when none of it is reachable from the service. Echo's FIPS build retains everything CoreDNS needs for DNS query resolution, plugin chain execution, caching, forwarding, and Kubernetes service discovery while routing cryptography through a validated module and removing the packages that don't belong in a production CoreDNS DNS server. As we covered in our post on how to protect your company from software supply chain attacks, long-running services that hold sensitive data and listen on the network are among the widest attack surfaces in the container stack. Echo commits to a 7-day SLA for critical and high severity vulnerabilities, and 10 days for medium, low, and unknown — with vulnerabilities triaged within 24 hours. Echo FIPS images are STIG-hardened, ship with SBOMs in SPDX and CycloneDX formats and signed provenance, and are recognized by all major scanners and mirrored to all major registries, so they fit into existing pipelines without changing your registry, scanner, or runtime tooling.

FAQ

Can I replace my CoreDNS image with Echo's CoreDNS FIPS image?

Yes. Echo's CoreDNS FIPS image is a drop-in replacement. Update the FROM line in your Dockerfile to the coredns-fips image and your workloads keep running. Corefile syntax, the kubernetes and forward plugins, cache and health settings, and Prometheus metrics all continue to work without changes to your cluster DNS manifests or zone configuration. Because FIPS mode disallows non-approved algorithms, anything that depends on legacy ciphers or hashes such as MD5-based signatures needs to move to approved algorithms.

Is Echo's CoreDNS FIPS image FIPS-validated?

Yes. Echo's FIPS images use CMVP-validated cryptographic modules, operating in a configuration consistent with the module's FIPS 140-3 security policy. Because CoreDNS is written in Go, its cryptography is handled by a CMVP-validated Go crypto module such as BoringCrypto rather than by OpenSSL; Echo supports OpenSSL, BoringCrypto, and Bouncy Castle across its FIPS images. That makes the image fit for federal use — unlike FIPS-enabled or FIPS-compliant images whose cryptographic libraries have never been validated. This matters for teams running CoreDNS inside FedRAMP boundaries, where a DNS server that answers every name lookup for the workloads in a cluster and forwards unresolved queries upstream must meet cryptographic requirements across the full stack. Echo also provides a FIPS runtime tester that executes approved and unapproved algorithms to show how the image behaves at runtime.

What is Echo's vulnerability management SLA on the CoreDNS FIPS image?

Echo commits to a 7-day SLA for critical and high severity vulnerabilities, and 10 days for medium, low, and unknown — with vulnerabilities triaged within 24 hours. Patches are mirrored automatically into your private registry so you're always running a clean version — critical for a long-running service that holds cluster service topology, internal zone data, and upstream resolver configuration and is reachable over the network.

Is Echo's CoreDNS FIPS image distroless?

Echo ships every image in two variants: a distroless variant optimized for runtime use, and a default variant that includes essential build tools, package managers, and shells. For production CoreDNS deployments, the distroless variant is the leaner, more secure choice; for platform and networking teams that need shell access for debugging resolution problems, testing queries, or inspecting the Corefile, the default variant is the right fit.

How does Echo achieve such a drastic CVE reduction in CoreDNS?

Echo's CoreDNS FIPS image is built from source with only the absolute essentials needed to run the CoreDNS DNS server, which significantly shrinks the attack surface. Echo also patches aggressively over time, with backports available so you can stay on the CoreDNS version your applications and their dependencies are certified against — avoiding a disruptive upgrade forced purely by OS-level vulnerabilities in the base image rather than by your own requirements.

Will Echo's CoreDNS FIPS image help us achieve FedRAMP?

Yes. The hard parts of FedRAMP — managing vulnerabilities, applying fixes, and using FIPS-validated cryptography — are baked into Echo images, including STIG-hardened configuration and ConMon/POA&M-ready reporting. For platform and networking teams running CoreDNS under an ATO — whether that's cluster DNS for an in-boundary Kubernetes platform, internal zone resolution, or a forwarding resolver — Echo's FIPS-validated CoreDNS image keeps the DNS server layer in-boundary and compliant without requiring custom hardening scripts or manual base image patching between compliance cycles.

‍

Interested in base images that start and stay clean?