Safeguard
Supply Chain•

Does your SCA tool catch malicious packages, or only known CVEs?

Known-vulnerability scanning and malicious package detection are different jobs. What to ask an SCA vendor about malware, typosquats and timing.

Safeguard Security Team
3 min read

Traditional SCA finds known vulnerabilities in legitimate packages. Malicious packages, such as typosquats or hijacked releases, are a different problem, because they usually have no vulnerability identifier. If this matters to you, ask a vendor specifically how it detects malicious packages, how fast, and what it does about them.

Two different problems

A vulnerability is a flaw in code that someone wrote in good faith. It gets an advisory, a score and a fixed version. A malicious package is built to cause harm: stealing credentials, running code at install time or opening a backdoor. It may carry a legitimate name by impersonation, or an account takeover may push a bad release of a legitimate package.

A scanner that matches versions against vulnerability advisories will not flag either unless it has a separate source of malware intelligence.

Questions to ask

  • Do you detect malicious packages at all, or only vulnerabilities?
  • What is the source: your own research, community reports, public malware databases, behavior analysis?
  • How long between a malicious release being published and your tool reporting it?
  • Do you check at install time, in pull requests, in scheduled scans or all three?
  • What do you do when a package is reported after we installed it: alert, open a ticket, block?
  • Can we block newly published versions for a cooling period?

Timing is the central question. Detection after your build has run is useful for response, not prevention.

What to test

You cannot test with live malware, and you should not. Instead check process. Ask the vendor to show how a recently reported malicious package appeared in their system and when. Ask for examples of retrospective alerts. Run a pull request that adds a dependency with an unusual name close to a popular one, and see whether anything warns.

Also look at adjacent signals that do not need malware intelligence: a package that is only days old, a sudden maintainer change, an install script that appeared in a new version, a package with no repository link. Some tools surface these as risk indicators.

Policy matters as much as detection

Even without malware feeds, you can reduce exposure. Pin versions, review lockfile changes in pull requests, use a delay before adopting new releases, and limit install scripts where your package manager allows. A tool that supports policies around these gives you control beyond detection.

Be honest about the limits

No tool catches every malicious package. Treat detection as one layer, alongside least privilege in your build systems and short-lived credentials, so a bad install has less to steal.

Where Safeguard fits: Safeguard provides SBOM and dependency scanning with policies and gates. You can run the free scan at gold.safeguard.sh/scan to see what it reports on your dependency tree.

Quick check

Is a malicious package the same as a vulnerable one?

No. A vulnerable package has an unintended flaw. A malicious package was written to do harm, and usually has no advisory.

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.