Safeguard
Security Guides•

How do you keep vulnerable open source out of production? Gate answers

Describe checks at the pull request, the build and the deploy, with a named exception path. Includes a layered table and reply wording for customers.

Safeguard Security Team
3 min read

Describe layers: checks when a dependency is added, a gate in the build, and a review step before deploy, each with a defined exception path. Say what blocks and what merely warns, because customers care about enforcement more than tooling.

Why "we scan" is not an answer

Scanning finds. A gate decides. A customer asking how vulnerable open source is kept out of production wants to know which findings stop a release and who can override. NIST SP 800-218 includes the example of building automatic detection of known vulnerabilities into the toolchain (PW.4.4) and of reviewing provenance and composition data automatically for new vulnerabilities (RV.1.1).

The layers

StageCheckTypical action
Pull requestNew or changed dependencies matched to advisories and license rulesBlock or comment
BuildInventory generated and checked against policyFail on defined rules
Pre deployImage and package scan, exploitation signalHold for review
RuntimeOngoing matching of the shipped inventory to new advisoriesCreate a ticket

State which of these you have today. Do not describe the runtime layer if you scan at build alone.

Decide what blocks

Write a short rule, for example: block when a component has a known exploited vulnerability that is reachable, or a license on the deny list. Warn on everything else and track it. A gate that blocks too often gets disabled, which is worse than a modest gate that holds.

Exceptions

Every gate needs an override. Record who approved, why, the compensating control and an expiry date. Customers who ask for evidence will often ask for an exception list, so keep it clean.

Reply template

Dependency changes are checked on each pull request and again in the build against vulnerability and license rules. Defined conditions block the change. Exceptions require a named approver and an expiry date. After release, the shipped inventory is rechecked against new advisories.

Making the answer believable

Customers who press on this topic often ask for an example of a blocked release. Keep one on file, with names removed: the change, the rule that stopped it, who looked at it and how it was resolved. A block that was then fixed properly shows the gate and the people both work.

Also be ready for the opposite question: what happened when a gate was overridden? If the exception log is empty, the customer may suspect nobody checks. A small number of recorded, expiring exceptions is a healthy sign.

Try it yourself

Click through it at your own pace, or open it full screen.

Trigger the gate in the demo and read why it stopped the change. A clear reason is what turns a block into something developers accept.

Safeguard provides policies, gates and guardrails for pull requests, plus reachability analysis to help separate exploitable findings from noise.

Quick check

Should every medium severity finding block a build?

Usually not. Block on exploitable and exploited issues, track the rest with owners and dates.

What do we show a customer as proof?

The written rule, a screenshot or export of a blocked change, and the exception log with sensitive details removed.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.