Autonomous remediation
A patch is complete only when
the attack no longer works.
Why executable PoC verification provides the stop condition required to finish vulnerability remediation—and lets detection, patching, and retesting run as a closed loop without continuous human intervention.
Detection predicts. Execution decides.
The missing verification layer
Patch generation alone cannot close the loop.
SAST can find vulnerable code patterns, and AI can generate fixes quickly. But a changed diff does not prove the risk is gone. You still need to distinguish between a warning that disappeared because the vulnerability was fixed and one that disappeared because the analyzer no longer recognizes the modified pattern.
An automated system needs an explicit stop condition before it can choose its next action. “The code looks safer” or “the fix is probably correct” is not enough. It needs execution evidence showing that the attack succeeded before the patch and no longer succeeds afterward.
A PoC is not merely an attack demo. It is an executable test oracle connecting detection, patching, and verification.
How a PoC makes the verdict deterministic
Deterministic does not mean mathematically proving every vulnerability in every possible environment. It means using reproducible execution results as the verdict under fixed code, dependencies, configuration, input, environment, and success criteria. Observable success or failure—not a natural-language probability—determines the next action.
Four conditions an automated verdict must fix
- 1
Code
The target code and vulnerable path
- 2
Environment
Dependencies, versions, configuration, and permissions
- 3
Input
The minimal PoC reproducing the exploit conditions
- 4
Oracle
The observable criterion separating success from failure
Fixing these conditions and repeating the same PoC makes it possible to compare success before the patch with failure after it.
A PoC connects detection and patching into one control loop
When execution results become feedback for the next action, a linear pipeline becomes a loop that can close itself.
- 1
Reproduce the vulnerability through execution
Extract the exploit conditions from the finding and build a minimal, safe PoC. If it succeeds in an isolated environment, the finding becomes a reproducible vulnerability rather than a hypothesis.
- 2
Record an observable success condition
Capture which input traveled through which code path and what effect it produced. That result becomes the baseline for every subsequent patch attempt.
- 3
Generate a patch and protect normal behavior
Apply a fix that removes the vulnerable path, then run the existing regression suite. The patch must block the attack without breaking the product.
- 4
Run the same PoC again
Retry the attack that succeeded before the patch under identical conditions. If the PoC still succeeds, generate another fix. If it fails, you have evidence that the original attack path is blocked.
- 5
Complete the loop or escalate a precise exception
Close the loop when both attack prevention and normal behavior are verified. Escalate only when the environment cannot be reproduced or the verdict remains ambiguous—and include the evidence.
An executable stop condition lets the system choose whether to retry, discard, complete, or escalate to a human.
Executable stop condition
An autonomous loop must know when to stop.
PoC results and regression tests give the system a machine-readable basis for retrying, discarding, or completing a patch.
Why we built AutoProof this way
That is why we designed AutoProof this way.
The goal is not to summarize SAST findings more elegantly. It is to produce executable evidence for each finding and use that evidence to close the patch loop.
- 01
Translate findings into exploit conditions
Do not trust a severity label on its own. Extract the vulnerable sink, input path, configuration, dependencies, and every condition that must hold for the attack to work.
- 02
Generate a minimal, safe PoC
Create only the input and code needed to observe the vulnerable behavior—never more than verification requires.
- 03
Execute inside an isolated sandbox
Fix the code, dependencies, configuration, and inputs in a controlled environment with constrained permissions, never production.
- 04
Return execution evidence, not probability
Capture the PoC result, affected code path, observed behavior, and verdict in a Proof Report that can be repeated and audited.
- 05
Retest the patch under identical conditions
Run the same PoC after the fix. Mark the work complete only when the attack is blocked and normal behavior still passes.
Bounded autonomy
The goal is not to remove people. It is to make human judgment precise.
Not every vulnerability or environment can be fully automated. Some cases depend on external services, production-only state, or business-logic success conditions that cannot be expressed unambiguously. Those cases still require human judgment.
AutoProof is not designed for unconditional, unattended execution. It automates what can be completed within explicit policy, constrained permissions, isolated environments, and reproducible verdict criteria—then escalates only the unresolved exceptions with precise evidence attached.
The final step in security automation is not generating a fix. It is proving completion.
SAST tells you where to look. AI suggests how to change the code. Only execution evidence shows whether the attack was actually possible—and whether it is no longer possible now.
A patch is not complete when the diff is created. It is complete when the same attack no longer succeeds.
Ready to prove your SAST findings?
Start free, review a sample proof report, or book a short demo with the AutoProof team.
