Safeguard
Security Guides•

How do you know a vulnerability is actually exploitable?

Four kinds of evidence tell you whether a flaw can be exploited: reachability, exploit activity, probability scores and a hands on attempt. How each works.

Safeguard Security Team
3 min read

You know a vulnerability is exploitable when you have evidence at one of four levels: the vulnerable code is reachable in your app, the flaw is being exploited in the wild, a probability score says it is likely, or a tester has exploited it. Each level is stronger and costs more effort than the last.

Definitions

  • Present: the vulnerable component is in your software. A scanner can tell you this.
  • Reachable: your code actually calls the vulnerable function or path. Reachability analysis estimates this.
  • Exploited in the wild: attackers have used it against real targets. CISA's Known Exploited Vulnerabilities catalog lists such flaws and says organizations should use it as one input when setting priorities.
  • Likely: a model estimates the probability. EPSS estimates the probability that a published CVE will be exploited in the wild in the next 30 days.
  • Proven: someone exploited it against your system. NIST notes the attack phase of a pen test exploits a vulnerability to confirm it.

The evidence ladder

LevelQuestion answeredEffortStrength
PresentDo we ship the affected version?AutomatedWeak
ReachableCan our code reach it?Automated, deeperMedium
Exploited in the wildAre attackers using it?LookupMedium to strong
LikelyHow probable is exploitation?LookupMedium
ProvenDid a tester break in?ManualStrong

Note that "not reachable" is not the same as "safe forever." Code paths change, and an unreachable flaw can become reachable after a refactor.

How to use the ladder

  1. Start with every present finding. Do not stop here, because presence alone drives most alert noise.
  2. Check reachability. Set aside unreachable ones, with a note and a recheck date.
  3. Check for exploitation in the wild. Anything on the KEV list moves to the front of the line.
  4. Check the probability score for the rest.
  5. Reserve manual exploitation for the few items where the call is hard or the stakes are high.
  6. Record the evidence level in the ticket so reviewers can see why you chose that priority.

Where people go wrong

  • Treating a base severity score as a verdict. FIRST's guide says base scores are severity, not risk.
  • Dismissing everything unreachable without recording it.
  • Asking a tester to prove every dependency finding, which is slow and expensive.

Try it yourself

Open the demo and watch how reachability analysis reduces a long list to the findings your code can reach. Compare the list before and after.

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

Quick check

Is an unreachable vulnerability safe to ignore?

It can be deprioritized, with a note and a recheck. Code changes can make it reachable later.

Is a high EPSS score proof of exploitation?

No. It is a probability estimate for the next 30 days, not proof that the flaw works against your system.

Safeguard provides reachability analysis with SBOM and dependency scanning, so you can filter by whether your code reaches the flaw. Try the free scan.

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.