Dependency Firewall offer: 50% off the base fee. See pricing

Dependency Firewallfor containers

Your rules check every image Docker, crane and oras pull, scanning each layer before it reaches a build agent or a production node.

Container firewalling is enabled per organization on request, also during the trial. Contact us

  • Built in Sweden and hosted in the EU
  • Supply chain security since 2018

Supported OCI registries

Docker Hub
GitHub Container Registry
JFrog Artifactory
Any OCI registry

Supported OS package formats

The firewall reads the package database inside each image, so advisories are matched to the OS packages that are actually installed.

apk
Alpine
dpkg
Debian, Ubuntu and distroless images
rpm
RHEL, Fedora, CentOS and SUSE

Connect builds and clusters

Docker and CI

Log in and pull through the firewall

Log in once with the firewall in the username. Image names keep their repository and tag, and only the host changes.

shell
docker login <firewall-host> -u <namespace-id>/<firewall-id> -p <token>docker pull <firewall-host>/alpine:3.20

Best for: developer machines, CI pipelines and Dockerfiles.

Kubernetes

Point your clusters at the firewall

Change the registry host in your manifests and add one pull secret for it. Repositories and tags stay as they are.

deployment.yaml

imagePullSecrets:  - name: bytesafe-firewallcontainers:  - image: <firewall-host>/nginx:1.27

Best for: every workload in a cluster, with one secret per namespace.

Findings grouped by the build step that introduced them

Container image incidents and the rule that covers each

  • docker123321

    Seventeen images published under one Docker Hub account carried cryptocurrency miners. They were pulled around five million times before Docker Hub removed them.

    Container firewalling
  • xz backdoor

    xz 5.6.0 and 5.6.1 shipped a backdoor in liblzma (CVE-2024-3094, CVSS 10.0). It reached Debian unstable and Fedora development releases, and images built on them carried it.

    Vulnerability blocking
  • Secrets in public images

    A 2023 study of public Docker Hub images found private keys and API secrets in about 8.5% of them.

    Container firewalling

Clients, registries and deployment

  • Clients

    Docker, crane, oras and other clients that follow the OCI Distribution spec.

  • Container registries

    Docker Hub, GitHub Container Registry, Amazon ECR, Google Artifact Registry, Artifactory, Harbor and self-hosted registries.

  • Deployment

    Cloud as EU-hosted SaaS. Enterprise as Managed Cloud, BYO Cloud or On-Premise.

Explore supported ecosystems

See the setup, rules and incidents for each package ecosystem.

Do I have to change my Dockerfiles?
Yes, the host only. The FROM line names the firewall host instead of the upstream registry, for example FROM <firewall-host>/alpine:3.20. Repository and tag stay the same.
Does it work with Kubernetes?
Yes. Change the registry host in your manifests and add one imagePullSecret for the firewall host. Repositories and tags stay the same.
What happens on the first pull of an image nobody has pulled before?
The pull waits while the layers are scanned. Every later pull that shares those layers reads the stored findings instead, including pulls of other images and from other teams.
A CVE is published three months after an image was scanned. Is it caught?
Yes. What gets stored is the contents of each layer, never the verdict. Every pull is matched against the advisory data as it stands at that moment, so an image that passed in January is blocked the next time it is requested after an advisory crosses your threshold. Nothing is rescanned. The firewall decides on requests and does not reach images that were already pulled.
How are multi-arch images handled?
The index is served as-is, and each platform is evaluated on its own manifest when the client resolves it. You see the platform list on the image page and can switch between them.
Which OS package formats are supported?
apk for Alpine, dpkg for Debian and Ubuntu including distroless images that keep packages in status.d, and rpm for RHEL, Fedora, CentOS and SUSE.
Which registries can it proxy?
Any registry that speaks the OCI Distribution spec: Docker Hub, GitHub Container Registry, Amazon ECR, Google Artifact Registry, Artifactory, Harbor, or a registry you run yourself. Each is configured as an upstream with its own credentials, and one firewall can front several at once. Docker Hub is preconfigured so a new firewall works straight away, and adding credentials to it raises its pull rate limit.
Can someone pull a blocked layer directly?
No. A layer is served only after a manifest that references it passed the rules, so requesting a blob by digest does not get around a block.
Does it replace my container registry?
No. It sits in front of your registries. Images keep living where they live, and the firewall decides which ones reach your builds and clusters.
Can different container projects have different policies?
Yes. You can create separate firewalls per project. They are lightweight and easy to clone. You can also differentiate by the user or token used for the session. Firewall configurations are small JSON files that can be managed in Git.
Can firewall rules be automated?
Yes. All configuration is available via API. Configurations can be version-controlled in Git and deployed through your own automation. All changes are tracked with full rollback support.
How is licensing structured?
Cloud is the SaaS plan. Enterprise is for custom deployment, Managed Cloud or On-Premise. Cloud is priced on whichever you use most: active users, packages scanned or downloads served. Plan details and add-ons

Put Container installs behind the firewall

Point one pipeline at Dependency Firewall and read the decisions in the log. The trial runs for 14 days.