Policy engine
Rules by package name, version range, age, source, license and custom criteria. Block or log-only, with time-limited exceptions. Re-evaluated on every request.
A gem can execute third-party code when installed. Bytesafe blocks malware, vulnerable packages and policy violations before they reach your build. New releases can also be delayed, reducing exposure before malicious packages or vulnerabilities are identified.
Bytesafe Dependency Firewall sits in front of your existing repository, protecting developers, CI/CD pipelines and AI agents.
EU-based company · Software supply chain security since 2018.
Offer now
50% off your base fee for 3 months + €100 usage credit.
A selection of documented supply chain attacks on RubyGems.org. Malicious releases, account takeovers and dependency confusion have all been used against packages there.
An attacker used a maintainer's password, leaked in an earlier breach, to publish four malicious versions of rest-client. Version 1.6.13 ran a hidden payload from Pastebin.com, but only in installations where Rails.env started with p, as in production. The gem was downloaded about 1,000 times before RubyGems pulled it and locked the account.
Account takeoverTwo dormant RubyGems maintainer accounts were hijacked within hours of each other in July 2026. One published four malicious versions of git_credential_manager, a new package whose dropper fetched a payload from a fake Forgejo repository, disabled SSL verification, and ran it via PowerShell or shell, first checking around 30 CI-platform environment variables so it would only fire on developer machines. The other compromised account belonged to a Fastlane plugin already at 574,661 downloads.
Dormant account hijackOver 2,000 packages hit RubyGems.org in two days in May 2026, most of them junk from a registration flood, but some carrying a working exploit: a crafted .yardopts file that RubyDoc.info evaluates when it builds a gem's documentation, letting code run on RubyDoc's own servers. RubyGems suspended new signups for several days to add rate limiting. Researchers suspect automated agents drove the flood; OpenAI says it cannot confirm whether the packages came from AI agents or people.
Build pipeline RCERubyGems.org has no namespaces or scopes, so any internal gem name can also be published publicly. A Gemfile source block that is missing or misconfigured resolves against the public gem instead of your private one.
Namespace attackDependency Firewall does not prevent all attacks, but blocks packages that match known malware signatures or violate your policies.
Every package install is a potential entry point. Traditional SCA tools find problems after packages are already in your environment. Dependency Firewall intercepts every RubyGems request before it reaches your developers, CI/CD pipelines or AI agents.
You define the rules: block packages with known CVEs, block known malicious packages, or delay newly published versions for a configurable period to give the ecosystem community time to surface zero-day threats.
Works in front of enterprise repository platforms and any RubyGems registry. No agent installs. No workflow changes.
Public RubyGems.org registry
Vulnerable and malicious versions included
Dependency Firewall
Policy engineDevelopers and CI/CD
Internal environment
Policy controls, malware blocking, package delay, dependency confusion protection, and full audit visibility across every RubyGems request.
Rules by package name, version range, age, source, license and custom criteria. Block or log-only, with time-limited exceptions. Re-evaluated on every request.
Block packages with known CVEs before install. Filter by CVSS and EPSS severity per registry or team. New advisories take effect immediately.
Detect malicious payloads, suspicious install hooks and obfuscated code before execution. Quarantined packages are logged and never silently dropped.
Block namespace attacks where public packages impersonate your internal ones. Configurable upstream priority rules ensure private packages always win.
Hold newly published versions for a configurable window (7 or 14 days) before they reach developers or pipelines. Gives the ecosystem time to surface threats.
Every package is fingerprinted: first-seen date, download frequency, requester, version age. Know exactly what passed through and when.
Every block, allow and exception is recorded and exportable to your SIEM. Built to make security teams and auditors happy out of the box.
Packages are scanned for malware, secrets, and sensitive data before they are published to an upstream registry.
Unblock a package with a reason and an expiry date. The exception lapses on its own, so a temporary allowance does not quietly become permanent policy.
Route RubyGems package traffic through Dependency Firewall, define policies for what's allowed and let the firewall block the rest. Developers and pipelines keep their existing package manager commands.
01
Point your RubyGems configuration at Dependency Firewall. Every install request passes through the firewall before reaching the registry or your environment.
02
Set vulnerability thresholds, enable malware scanning, configure safety delays for new versions and write allowlist or blocklist rules. Create multiple firewalls with individual rules for different teams or projects.
03
Every request is evaluated in real time. Blocked packages are logged with the policy that triggered them. Approved packages are served transparently.
Set Bundler's mirror config to route rubygems.org through the firewall. Every Gemfile keeps naming rubygems.org, so there are no Gemfile or Gemfile.lock changes and the project stays portable.
Works with the repositories you already use
Each rule targets an ecosystem and applies a condition: vulnerability severity, package age, license type or name pattern. Rules either block or log. Stack multiple rules per firewall. Changes take effect immediately.
Security teams can start with broad guardrails, then narrow policies by upstream, package, version range, internal status, maximum age, CVSS score and EPSS score.

Every blocked package is logged: package name, version, status, ecosystem, which firewall evaluated it, which rule triggered and who requested it. Filter by firewall or user.
The log view gives developers a fast answer when an install fails and gives AppSec a complete audit trail for policy enforcement.

Open a package to review advisories, licenses, project metadata, OpenSSF Scorecard checks, dependency counts and source links before deciding whether to block, allow or investigate further.
The package page brings runtime firewall context together with upstream project health. Security teams can compare CVEs, maintainer signals, and repository hygiene from the same screen.

Other enterprise dependency firewalls are often bundled into repository platforms. Dependency Firewall is an independent firewall that works with any registry and is built in the EU.
| Criterion | Dependency Firewall | Other enterprise firewalls |
|---|---|---|
| Works with your existing repository | Yes, as a proxy in front of it | Bundled into their platform most often |
| Deploys in minutes | Yes | Usually weeks of platform work most often |
| Predictable pricing | One meter sets the price, no overage | Several axes with overage most often |
| EU data residency | Yes | No, US-based most often |
Common questions from security and engineering teams.
Book a 30-minute session and we'll show you how Dependency Firewall fits into your existing setup. Your registries stay unchanged.