TL;DR: SAST and SCA still miss the runtime, ownership, and business context needed to distinguish exploitable issues from noise, even though they catch real flaws and dependency vulnerabilities, according to Apiiro. The practical shift is from coverage-based scanning to contextual risk analysis that correlates signals across tools and prioritizes what attackers can actually reach.
At a glance
What this is: This analysis argues that SAST and SCA provide useful coverage but cannot determine which findings represent real risk without runtime, reachability, and business context.
Why it matters: For IAM and security teams, the lesson is that risk decisions depend on governance signals beyond code scans, including ownership, exposure, and the identity controls surrounding deployed services.
By the numbers:
- 96% of commercial applications contain open-source components, and the average codebase includes over 500 dependencies.
- Applying reachability analysis can filter out up to 89% of flagged packages, leaving only dependencies that actually execute.
👉 Read Apiiro's analysis of why SAST and SCA still miss production risk
Context
SAST and SCA are useful controls, but they answer different questions and neither can tell a security team whether a finding is truly exploitable in production. That gap matters because application security programs are still being forced to triage at scale while code, dependencies, and deployment environments change faster than manual review cycles.
The primary problem is not lack of scanning volume. It is the absence of context, including runtime exposure, reachability, ownership, and business impact. Where deployed services interact with identity layers such as authentication, authorization, and access control, static findings can understate or overstate real risk unless they are correlated with how the application actually runs.
This is typical of modern AppSec programmes that optimise for scan coverage first and risk interpretation second.
Key questions
Q: How should security teams decide between SAST and SCA?
A: Use SAST for code your organisation wrote and SCA for software it imported. If the application has both custom logic and third-party packages, you need both controls because they answer different questions. The correct decision model is coverage, not replacement, especially when runtime exposure and privilege change the impact of each finding.
Q: Why do static application security tools create so much false confidence?
A: Because they often report code-level risk without knowing whether the code runs, what protects it, or who owns it. A clean scan can still miss misconfigured runtime policies, internal packages, and post-build changes. False confidence happens when teams mistake coverage for actual exposure and treat scan dashboards as proof of security.
Q: What do teams get wrong about reachability analysis?
A: They treat it as a filtering trick instead of a governance control. Reachability is valuable because it distinguishes theoretical vulnerabilities from functions the application actually calls. If teams ignore business context after reachability, they can still prioritise the wrong reachable issue. The best programmes combine execution paths, exposure, and service criticality.
Q: What should teams do when scan findings have no clear business owner?
A: Create ownership mapping before escalation, not after. Findings should route to the team responsible for the service or shared library, not the last developer who edited the file. When ownership is missing, remediation stalls and risk persists. Clear accountability shortens fix times and prevents repeated handoffs across engineering groups.
Technical breakdown
Why static analysis cannot see runtime exposure
SAST inspects source code structure, usually through abstract syntax trees and data-flow models, while SCA inventories dependencies against vulnerability databases. Neither sees whether a service is internet-facing, protected by a gateway, or constrained by identity controls in production. That means a critical-looking finding may be unreachable, while a moderate issue may become exploitable once deployed behind permissive runtime policies. The core limitation is that static tools analyse potential, not actual execution paths.
Practical implication: map static findings to live deployment state before assigning remediation priority.
How reachability changes dependency risk
SCA tools often flag every vulnerable package in a manifest, but most packages are not executed on every path. Reachability analysis adds call-graph and execution-path inspection to determine whether the vulnerable function is actually invoked. This is why package counts alone create noise. A dependency can be present, yet irrelevant to the running application. Context turns a raw vulnerability list into a bounded exposure set.
Practical implication: filter dependency findings through reachability before escalating them to engineering teams.
Why ownership and business impact determine remediation speed
A scanner can identify a flaw, but it cannot identify the engineer accountable for the affected logic or the service’s business criticality. In large codebases, ownership is often spread across shared libraries and multiple repositories, while business impact depends on whether the service processes sensitive data, supports revenue, or sits inside a regulated workflow. Without those signals, triage becomes a queue of technically valid but strategically misranked issues.
Practical implication: connect findings to code owners and service criticality so remediation aligns with business risk.
Threat narrative
Attacker objective: The attacker wants to turn a technically known weakness into a live exploitation path that reaches production services and sensitive business processes.
- Entry occurs when a vulnerable dependency or insecure code path is present in an application that static tools have already flagged but not contextualised.
- Escalation happens when the vulnerable path is actually reachable in production, especially if compensating controls and identity restrictions are weak or absent.
- Impact follows when the exploitable code path reaches sensitive data, authentication flows, or business-critical services that were assumed to be protected.
NHI Mgmt Group analysis
Coverage-based AppSec is not risk management. SAST and SCA improve visibility, but visibility is not the same as governance. When teams treat scan output as the risk model, they overvalue theoretical findings and undervalue exposed, reachable, business-critical paths. The result is a backlog that looks comprehensive but does not reflect attack reality. Practitioners should shift from finding volume to risk correlation.
Contextual risk analysis is the named control gap this article exposes. The missing layer is not another scanner, but a mechanism that links code, runtime, ownership, and business impact into one decision system. That is the difference between raw vulnerability detection and actionable prioritisation. Security leaders should treat contextual correlation as a core control, not a reporting enhancement.
Identity and access context must be part of application risk scoring. Many exploitable paths only matter once a service is deployed with weak authentication, permissive service-to-service access, or overly broad runtime privilege. That is where IAM, PAM, and workload identity intersect with AppSec. If the application can reach sensitive systems without strong identity controls, static tooling will systematically understate exposure.
Reachability is the practical filter that separates signal from noise. A dependency with a public CVE is not automatically a production risk if the vulnerable function is never called. But a low-severity issue on a reachable, exposed path may be more urgent than a high-severity issue in dead code. Security teams should operationalise reachability as a triage gate, not an after-the-fact justification.
Ownership mapping is a governance problem, not a developer convenience. Tickets that bounce between teams delay remediation even when the technical fix is obvious. Shared libraries and cross-repo dependencies make this worse because responsibility is diffuse. Organisations should use ownership routing to reduce remediation latency and make vulnerability accountability explicit.
What this signals
Contextual application risk is becoming the baseline expectation, not a premium capability. Teams that continue to prioritise raw scan counts will keep over-funding low-value remediation while missing reachable weaknesses in deployed services. The practical shift is toward decisioning systems that combine runtime, ownership, and exposure so security work maps to actual risk.
Ownership and reachability will shape how AppSec programmes scale. As codebases and dependency trees grow, manual triage cannot keep pace without better routing and filtering. This is why the next maturity jump is less about adding scanners and more about using control data to decide what deserves human attention first.
For practitioners
- Correlate scanner output with runtime exposure Map SAST and SCA findings to deployed environments, internet exposure, and compensating controls before assigning severity or SLA targets.
- Add reachability analysis to dependency triage Use execution-path inspection to suppress packages that are present but never called, especially in large dependency trees.
- Route findings to code owners, not last editors Build ownership rules from repository and service metadata so remediation tickets land with the team that can actually change the affected logic.
- Score business impact alongside technical severity Weight findings by data sensitivity, revenue dependence, and regulatory scope so remediation effort follows organisational risk.
Key takeaways
- SAST and SCA remain necessary controls, but they do not tell teams which findings are exploitable in production.
- Contextual risk analysis reduces noise by combining reachability, runtime exposure, ownership, and business impact.
- Security programmes that keep optimising for coverage alone will continue to miss the vulnerabilities that matter most.
Standards & Framework Alignment
This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.
MITRE ATT&CK address the attack surface, NIST CSF 2.0, NIST SP 800-53 Rev 5 and CIS Controls v8 set the technical controls, and ISO/IEC 27001:2022 define the regulatory obligations.
| Framework | Control / Reference | Relevance |
|---|---|---|
| NIST CSF 2.0 | ID.RA-1 | Risk assessment is central to turning scanner output into actionable security priorities. |
| MITRE ATT&CK | TA0006 , Credential Access; TA0004 , Privilege Escalation | Exploit chains often turn reachable code flaws into access and escalation paths. |
| NIST SP 800-53 Rev 5 | SI-2 | Flaw remediation governs how teams track and fix vulnerabilities after discovery. |
| CIS Controls v8 | CIS-16 , Application Software Security | The article is about improving software security signal quality and prioritisation. |
| ISO/IEC 27001:2022 | A.8.29 | Security testing must account for how systems behave in operational environments. |
Map findings to exposure and exploitability so risk decisions reflect actual production conditions.
Key terms
- Reachability analysis: Reachability analysis checks whether a vulnerability can actually be exploited in the application’s real code paths and dependency graph. It helps teams distinguish theoretical findings from issues that an attacker can reach, which makes prioritisation far more accurate for both AppSec and identity risk management.
- Contextual Risk Scoring: A decision model that combines multiple signals, such as device integrity, app tamper evidence, location, and transaction value, to estimate the risk of a specific action. For mobile banking, it is more defensible than binary blocking because it evaluates the situation rather than only the device state.
- Identity Security Posture Management: Identity security posture management is the continuous assessment of identity configuration, privilege, and exposure across an environment. It focuses on drift, overprivilege, and control gaps so teams can see where IAM, PAM, and NHI governance are failing before those gaps become incidents.
What's in the full article
Apiiro's full article covers the operational detail this post intentionally leaves for the source:
- Concrete guidance on correlating SAST and SCA with runtime and deployment data
- Examples of how reachability analysis removes low-value dependency findings
- Practical comparison of application context signals that improve remediation prioritisation
- The article's specific explanation of why scan volume can still produce false confidence
Deepen your knowledge
NHI Foundation Level course, the industry's only accredited NHI security programme, covers NHI governance, machine identity security, and secrets management. It is a practical fit for practitioners building stronger identity and access governance across modern security programmes.
Published by the NHIMG editorial team on August 18, 2026.
NHI Mgmt Group — the independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org