Every claim we make is backed by reproducible benchmarks. Our methodology is transparent, and our test suites are continuously expanded as we discover new patterns.
We test TraceMint against real CVE-affected repositories, not synthetic test cases. This benchmark measures our ability to find known vulnerabilities in production code.
Our testing methodology is designed to reflect real-world performance, not cherry-picked results.
We clone real CVE-affected repositories and run full scans. A "hit" means we find the correct vulnerability type in the correct file β verified against advisory data.
Our benchmark spans Python, JavaScript, Go, Java, PHP, Ruby, and more. Each language has dedicated taint engines and framework adapters.
When a repo includes docker-compose or Dockerfile, we automatically spin up a lab and execute the PoC to confirm exploitability.
Instead of arbitrary FP percentages, we use VERIFIED / PROOF-BACKED / NEEDS_REVIEW verdicts based on proof obligation completion.
High recall means nothing if every finding is a false positive. Our proof-obligation pipeline ensures that reported findings carry verifiable evidence.
Before reporting a finding, the engine checks whether authorization guards, sanitizers, or input validators are present on the data flow path β and suppresses if protected.
No pattern-match-only reports. Every finding must have a verified taint chain from user-controlled source to a dangerous sink, with all intermediate steps traced.
Findings are classified as VERIFIED, PROOF-BACKED, or NEEDS_REVIEW based on how many proof obligations are satisfied β so you know exactly what to triage first.
We track multiple metrics to ensure a balanced view of scanner performance.
Start scanning with TraceMint today. See the difference semantic analysis makes.