The dashboard uses Runtime Validation for the issue-specific DAST
workflow: routes, tabs, run pages, and issue evidence sections still use that
name. Runtime Validation is one mode of ZeroPath Dynamic Testing.
What It Does
Dynamic Testing exercises a configured running target with finding context, application profile inputs, encrypted runtime credentials, and, when needed, a compiled local application artifact. The goal is to produce evidence from the live application rather than relying only on static analysis.
Runtime validation results use these verdicts:
Disconfirmed findings can be moved into the false-positive workflow with runtime evidence explaining why the issue did not reproduce.
Vulnerability Classes
Dynamic tests can target runtime behaviors that are difficult to prove from source alone:- Prompt injection - tests whether AI-powered features execute injected instructions by manipulating inputs across user-facing and backend prompts. Findings show the injection path and model response.
- IDOR - exercises object identifiers across authenticated roles to prove when users can access resources they do not own.
- Vulnerability chaining - combines multiple runtime behaviors to show how smaller weaknesses become a practical attack path.
- Out-of-band (OOB) vulnerabilities - detects blind SSRF, blind XXE, blind SQL injection, DNS exfiltration, and other vulnerabilities where the exploited behavior is not visible in the HTTP response. The validation agent generates unique callback URLs on
oob.0path.aiand monitors for outbound requests from the target application, proving that the injected payload triggered a real server-side request.
Out-of-Band Testing and Network Requirements
OOB testing usesoob.0path.ai as the default callback server. The validation agent injects unique URLs under this domain into the target application and monitors for DNS lookups, HTTP requests, and other protocol interactions that prove the vulnerability is exploitable.
If your target application runs behind a firewall or egress filter, you may need to whitelist *.oob.0path.ai (DNS and HTTPS) so the target can reach the callback server. Without this, OOB tests will return no interactions even if the vulnerability is real.
Prerequisites
Dynamic Testing requires:- A deployed application reachable by the validation worker, or a compiled local application artifact uploaded in the Runtime Validation setup panel.
- A Runtime Validation application profile for the detected application.
- All required profile inputs saved, such as target URL and generated authentication fields.
- For issue-specific validation, a completed full scan with eligible SAST findings.
.zip, .tar, .tar.gz, or .tgz. The artifact runs inside ZeroPath’s Debian-based Runtime Validation gVisor container; other operating systems and CPU architectures are not supported.
Running Runtime Validation
- Auto-provision All Applications
- Auto-provision Single Application
- Full Application
- Selected Issue
Use this option to validate every detected application in a repository at once, without configuring individual application profiles first. ZeroPath builds and runs each application directly from source in an isolated container.This is the fastest way to get runtime validation results without any upfront profile setup. You can also enable the Auto-Provision Runtime Validation toggle in scanner settings to trigger this automatically after every full scan.
1
Open the repository
Go to the repository in ZeroPath and select the Runtime Validation tab.
2
Auto-provision & Validate all applications
Click the Auto-provision & Validate all applications button in the toolbar at the top of the tab. This button appears when ZeroPath has detected applications in the repository and a completed full scan is available.
3
Monitor results
ZeroPath provisions a source-build profile for each detected application and queues a full validation run. Applications that are already running are skipped automatically. A confirmation message shows how many applications were provisioned and how many were skipped.
Reviewing Results
The repository Runtime Validation tab shows recent validation runs. Selecting a run opens a dedicated run page with two top-level sections, selectable from the tab bar:Issues
The Issues section shows validation results grouped by verdict:- Queued - issues still waiting for runtime validation.
- Confirmed - issues proven exploitable at runtime.
- Disconfirmed - issues that did not reproduce in the configured runtime environment.
- Unable - issues where validation could not produce a reliable verdict.
Exploit Chains
The Exploit Chains section shows multi-step attack paths discovered during the validation run — combinations of individual findings that, when chained together, form a practical exploit sequence. Use this view to understand how separately confirmed vulnerabilities can be combined by an attacker and to prioritize remediation of findings that contribute to high-impact chains. The table lists each chain with the following columns:
Clicking a row expands it to show the full chain detail:
- Impact — a narrative description of the real-world consequence if the chain is exploited.
- Reasoning — the analysis behind why these vulnerabilities form a viable chain.
- Attack steps — an ordered walkthrough of how an attacker would execute the full chain end to end.
- Attack path — each individual step in the chain, linked to its originating issue, with its vulnerability class, severity, setup requirement, the role it plays in enabling the next step, and any configuration requirements.
- Proof of concept — when available, a generated Python script that reproduces the exploit chain. You can copy the PoC to your clipboard using the copy button.
?section=exploit-chains), so you can bookmark or share a direct link to either the Issues or Exploit Chains view for a specific run.
Issue-Level Evidence
When a finding has Runtime Validation output, the issue modal and full issue view include a collapsed Runtime Validation section below the exploit walkthrough. It summarizes:- The latest verdict and run status.
- What ZeroPath attempted during runtime testing.
- Evidence observed during the attempt.
- Why the finding was confirmed, disconfirmed, or marked unable.
- A link to the dedicated run page for broader run context.
Structured Validation Data in the API
The issue detail and runtime validation API responses include two structured fields that give you machine-readable insight into what the validation agent did:validationSteps— an ordered list of objects, one per action the agent performed. Each object contains:target— the endpoint, workflow, object, or code path exercised (nullable).action— the concrete action taken.expectedResult— the expected safe behavior or exploit signal for this step (nullable).observedResult— what the agent actually observed at runtime.conclusion— why this observation matters for the verdict.
attackReproductionSteps— for confirmed findings only, an ordered list of natural-language steps that reproduce the confirmed attack. Suitable for inclusion in a bug report or remediation ticket.
agentGroupKey field has been removed from the API response.
Operational Notes
- Full-application runs are blocked while another active run exists for the same scan and application profile.
- Selected-issue runs are blocked only when a full-application run is active or when another active selected-issue run already targets the same finding.
- Dynamic Testing depends on the configured deployed target, so a failure to reach the application should be treated as an environment or profile problem before treating the finding as disconfirmed.
- For repositories with many scans, use the run list and result tabs instead of scanning issue-by-issue from the main issues table.