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
Rules that run before docker pull
Block images with vulnerable OS packages
- library/centos:767 critical advisoriesBlocked
- library/alpine:3.20Served
Scan every layer for malware and secrets
acme/billing-api:3.8.0- Layer 1 · base imageclean
- Layer 2 · RUN apk addclean
- Layer 3 · COPY . /appPrivate keyBlocked
Hold new tags until they have cooled off
FROM node:24-alpine- library/node:24-alpinebuilt 1 day agoHeld
- library/node:22-alpinebuilt 26 days agoPulled
Set the rules once for every cluster and pipeline
oci-baselineBaseline rulesoci-ciinheritsoci-team-ainherits
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.
docker login <firewall-host> -u <namespace-id>/<firewall-id> -p <token>docker pull <firewall-host>/ alpine:3. 20Best 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. 27Best 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 firewallingxz 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 blockingSecrets 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.
Questions
Do I have to change my Dockerfiles?
Does it work with Kubernetes?
What happens on the first pull of an image nobody has pulled before?
A CVE is published three months after an image was scanned. Is it caught?
How are multi-arch images handled?
Which OS package formats are supported?
Which registries can it proxy?
Can someone pull a blocked layer directly?
Does it replace my container registry?
Can different container projects have different policies?
Can firewall rules be automated?
How is licensing structured?
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.