Safeguard
Security Guides•

Which scan type covers which part of an LLM app?

Map SAST, dependency scanning, secrets, container, API and web tests to the parts of an LLM app, and see what no scanner covers: model behavior.

Safeguard Security Team
3 min read

Dependency scanning covers the packages, SAST covers your own code, secrets detection covers keys in repos, container scanning covers the image, and API and web testing cover the running service. None of them test model behavior such as prompt injection, which needs separate evaluation and red teaming.

The map

Part of the LLM appScan typeWhat it can findWhat it cannot find
Python and JS packagesDependency scanning (SCA)Known vulnerable versions, license issuesZero days with no advisory yet
Your handlers, auth, tenant codeSASTInjection, unsafe deserialization, hardcoded secretsRuntime configuration flaws
Repos and CI logsSecrets detectionProvider and cloud keysKeys shared outside repos
Container imageImage scanningOS and runtime package flawsLogic bugs in your app
Public APIAPI testingMissing auth, broken object accessFlaws behind unreachable routes
Web front endDASTXSS, misconfigured headersModel misbehavior
Prompts and agent toolsEvaluation and red teamingInjection, excessive agencyPackage vulnerabilities

Why the last row matters

OWASP lists prompt injection as LLM01:2025 and excessive agency as LLM06:2025. A scanner reads code and packages. It does not send crafted inputs through your model and judge the result. Plan a separate test pass, and turn each finding into a regression test. See turning red team findings into regression tests.

Where scanners help with AI specific risks

  • Supply chain (LLM03): dependency scanning and an inventory of components.
  • Improper output handling (LLM05): SAST can flag model output passed into a shell, a query, or HTML without checks.
  • Sensitive information disclosure (LLM02): secrets detection and log review catch part of this.
  • Unbounded consumption (LLM10): API testing can confirm limits exist.

How to choose what to run first

Start with dependency scanning and secrets detection, add SAST when you own meaningful logic, and add API and web tests once there is a public surface. Run each at the point where it is cheapest to act on: pull requests for code and packages, build time for images, scheduled for deployed services.

Try it yourself

Open the SAST demo and look at how a finding points to a file and line, then compare that with what a dependency finding looks like.

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

A short note on Safeguard

Safeguard offers dependency scanning, SBOMs, and policy gates, with scan results ranked by reachability. Try a free scan at gold.safeguard.sh/scan.

Quick check

Can SAST find prompt injection?

Not in the model itself. It can flag risky handling of model output in your code, which is a related but different problem.

Do I need all of these at once?

No. Add them in order of the surface you actually expose.

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.