TL;DR: SAST catches code-level issues early and DAST validates runtime behaviour, but both miss business logic vulnerabilities and authorization flaws, which remain widespread across tested applications, according to Gecko Security. The shift is toward contextual analysis that understands application intent, not just patterns or deployed responses.
At a glance
What this is: This is an analysis of why SAST and DAST leave a blind spot for business logic vulnerabilities, and why contextual semantic analysis is positioned as the next layer of application security testing.
Why it matters: It matters because IAM and application security teams cannot rely on pattern-based testing alone to validate authorization, access control, and identity-bound workflows that determine whether users or services can do what they should.
By the numbers:
- AI-generated code introduces security flaws in 45% of cases, overwhelming traditional scanning.
- Business logic vulnerabilities affect 100% of tested applications.
👉 Read Gecko Security's analysis of SAST, DAST, and business logic vulnerabilities
Context
Application security testing often fails at the point where correctness matters most: whether the software actually enforces the security properties it is supposed to enforce. SAST and DAST are effective at different parts of the lifecycle, but neither is designed to prove that authorization logic, session boundaries, or object-level access checks align with intended behaviour.
That gap matters to IAM practitioners because broken access control is usually an identity and authorisation problem, not just a code-quality problem. When code, runtime behaviour, and access policy drift apart, pattern matching finds the obvious flaws while the most damaging logic errors remain in production paths and business workflows.
Key questions
Q: What breaks when SAST and DAST are used without context-aware testing?
A: Teams end up validating syntax and runtime behaviour while still missing whether the application actually enforces the right access decision. That means broken access control, privilege mistakes, and workflow-specific logic flaws can survive both scans. The gap is not coverage of known patterns, but proof of intended security behaviour.
Q: Why do business logic vulnerabilities create problems for IAM and AppSec teams?
A: Because they sit at the boundary between code and authorisation policy. A system can be technically consistent and still grant access incorrectly if the business rule, role mapping, or object check is wrong. That makes these flaws governance issues as much as technical bugs, especially in identity-driven workflows.
Q: How can security teams know if contextual AppSec is working?
A: They should measure the share of findings that are reachable in production, the time from detection to owner assignment, and the percentage of backlog items that are closed without repeated re-triage. If those numbers improve, the programme is reducing noise rather than simply producing different noise.
Q: Should organisations replace DAST with semantic static analysis?
A: No. DAST still has value for confirming deployed behaviour, misconfigurations, and reachable runtime issues. The practical model is layered: SAST for syntax, DAST for exploitability, and contextual analysis for intent and authorisation correctness. Each answers a different question, and removing one leaves a blind spot.
Technical breakdown
Why pattern matching misses authorization flaws
SAST identifies syntactic weakness by comparing code against known insecure patterns, while DAST verifies whether a deployed application responds in a way that indicates exploitability. Business logic vulnerabilities sit outside that model because the flaw is often not a bad function call or malformed input, but a missing decision, an incorrect branch, or an access rule that is wrong for this application. A tool can see the code and still not know the intended security property. That is why broken access control is so persistent: the correct behaviour is contextual, and context is what pattern matching lacks.
Practical implication: teams need a way to evaluate intended authorisation behaviour, not just known vulnerability signatures.
How contextual AI SAST differs from runtime testing
Contextual AI SAST extends static analysis by incorporating architecture diagrams, runtime behaviour descriptions, API contracts, and design documents. Instead of asking only whether the code matches a dangerous pattern, it asks whether the code enforces the security property the system design requires. That lets it reason about call chains, service interactions, and missing checks before deployment, even when no live environment exists. It is not a replacement for runtime validation, but it changes the timing of discovery and reduces the dependency on staging to surface business logic issues.
Practical implication: use context-rich static analysis to catch access-control failures before code reaches staging.
Why AI-generated code widens the testing gap
AI coding assistants accelerate delivery, but they also reproduce insecure patterns learned from public code. When nearly half of generated code contains security flaws, the issue is not just more vulnerabilities, but more opportunities for authorization mistakes to be introduced faster than traditional review and scan cycles can absorb. SAST and DAST were built for a slower development model where humans wrote most code and security reviewed it later. That assumption is weakening as code volume and feature velocity increase.
Practical implication: security controls must scale to machine-generated code volume, not just human review capacity.
Threat narrative
Attacker objective: The attacker seeks to bypass authorization boundaries and abuse application logic to access actions or data outside their intended privileges.
- Entry occurs when insecure code or flawed authorization logic is introduced into the development pipeline and later reaches a deployed application.
- Escalation happens when SAST and DAST fail to recognise that the application is violating intended access rules rather than merely containing a known syntactic flaw.
- Impact follows when attackers exploit broken access control or business logic to reach functions, records, or workflows they should never have been able to access.
NHI Mgmt Group analysis
Business logic vulnerability management is becoming an identity governance problem. When an application incorrectly authorises a user, token, or service call, the failure is not only in code analysis but in the governance of access decisions. That makes application testing relevant to IAM, PAM, and access policy teams, not just AppSec teams. The practical conclusion is that identity-aware validation must become part of security testing strategy.
Contextual analysis is the first credible answer to authorization correctness at scale. SAST and DAST each prove part of the security story, but neither proves that the system behaves according to its own access model. Semantic analysis, by contrast, can trace intent across architecture, API contracts, and execution paths. For practitioners, this shifts testing from pattern detection to policy validation.
AI-generated code creates an access-control debt problem. Faster code production increases the number of places where missing checks, incorrect conditions, and unsafe defaults can enter the system. That does not mean AI code is inherently insecure, but it does mean security teams need controls that can keep pace with volume and novelty. The practical conclusion is to treat code velocity as a governance variable.
Authorisation failures now require cross-functional ownership. Broken access control is rarely solved by one team alone because the flaw spans design intent, implementation, and runtime behaviour. Security, identity, and engineering teams all need a shared way to validate whether a workflow enforces the right privilege boundary. The practical conclusion is that access correctness must be governed as a lifecycle control, not a point-in-time scan result.
What this signals
Business logic testing will increasingly be treated as part of identity governance, not only application security. When access decisions are embedded in workflows, the control problem is who or what can do what, under which conditions, and whether that decision matches policy. Teams that already manage privileged access and lifecycle controls should expect pressure to extend governance into application behaviour.
Context-aware testing will become more relevant as AI-assisted development increases code volume. The operational challenge is not just finding more defects, but validating more identity-sensitive decisions at machine speed. For practitioners, that means linking architecture, access policy, and code review so that authorisation drift is detected before release.
Broken access control is a signal of control fragmentation. When teams separate design, implementation, and runtime verification too cleanly, the result is a blind spot that pattern scanners cannot close. The practical direction is to align application testing with [NIST SP 800-53 Rev 5 Security and Privacy Controls](https://csrc.nist.gov/pubs/sp/800/53/r5/upd1/final) and [NIST Cybersecurity Framework 2.0](https://www.nist.gov/cyberframework) around access validation, not just vulnerability detection.
For practitioners
- Map authorization checks to business-critical workflows Identify where the application grants access to records, actions, or administrative functions, then trace those decisions back to the expected identity and privilege model. Focus on object-level access, role transitions, and workflow exceptions that pattern-based scanners tend to miss.
- Use SAST for syntax, then add context-aware validation for intent Keep SAST in development for injection flaws and obvious coding errors, but add analysis that can reason over architecture diagrams, API contracts, and design documents for authorization review. That is how teams catch missing checks before deployment.
- Prioritise DAST on exposed runtime paths with identity significance Reserve runtime testing for the flows where authentication, session state, or privilege transitions materially change access outcomes. That includes login flows, delegated access, admin functions, and APIs that consume bearer tokens or service credentials.
- Treat AI-generated code as higher-volume review demand Add tighter pull-request gating, targeted authorization tests, and review coverage for code produced by assistants, especially where access decisions are embedded in application logic. The issue is not the tool alone but the speed at which weak access control can accumulate.
Key takeaways
- SAST and DAST each reduce risk, but neither can prove that an application enforces the security property its business logic requires.
- Business logic flaws are especially dangerous because they can survive both source-level scanning and runtime testing while still breaking access control.
- The next control layer is contextual analysis that validates intent, which makes authorization correctness a governance issue as much as a testing one.
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 and risk surface, while NIST CSF 2.0, NIST SP 800-53 Rev 5 and CIS Controls v8 set the governance and control requirements practitioners need to meet.
| Framework | Control / Reference | Relevance |
|---|---|---|
| NIST CSF 2.0 | PR.AC-4 | Authorization correctness is central to this article's access-control gap. |
| NIST SP 800-53 Rev 5 | AC-6 | Least privilege controls map directly to broken access control and privilege misuse. |
| CIS Controls v8 | CIS-5 , Account Management | Account and privilege governance underpins the identity side of application authorization. |
| MITRE ATT&CK | TA0004 , Privilege Escalation; TA0006 , Credential Access; TA0008 , Lateral Movement | Broken authorization can enable escalation and movement once access is misused. |
Validate application access decisions against PR.AC-4 and review workflows where privilege changes affect outcomes.
Key terms
- Business logic vulnerability: A business logic vulnerability is a flaw in how an application’s workflow or rules are enforced, allowing an attacker to misuse a process rather than break code directly. These issues often evade signature-based tools because the weakness lies in authorisation, sequence, or state handling.
- Contextual Static Analysis: Static analysis that uses surrounding design information, architecture context, and intended behaviour to interpret code more accurately. It goes beyond matching insecure patterns by evaluating whether the code actually enforces the security property the system requires.
- Broken Access Control: Broken access control occurs when a system fails to restrict what an authenticated user, service, or workload can do. The issue often appears as missing checks, inconsistent enforcement, or excessive permissions. It is a structural weakness because attacks exploit the gap between verified identity and permitted action.
- Semantic Code Analysis: A method of examining code based on meaning and intent rather than only syntax or known patterns. It tries to understand how an application behaves across files, services, and call chains so it can detect logic failures that signature-based tools miss.
What's in the full article
Gecko Security's full article covers the implementation detail this post intentionally leaves for the source:
- A deeper walkthrough of SAST and DAST workflows across development, staging, and production
- The comparison table that breaks down false positives, speed, and deployment dependencies
- Examples of IAST, RASP, and SCA in the application security testing stack
- Gecko Security's explanation of semantic code analysis and context ingestion for authorization review
Deepen your knowledge
NHI Mgmt Group covers identity security, NHI governance, and agentic AI through independent research, practitioner guides, and the NHI Foundation Level course, the industry's only accredited NHI security programme. Explore it if your programme needs a stronger link between access governance and operational control.
Published by the NHIMG editorial team on August 1, 2026.
NHI Mgmt Group — the independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org