Public, versioned, no black-box magic.
This page documents how the VerifiedApp scanner works. We publish it because we believe a trust signal is only as trustworthy as the methodology behind it.
.env, .git/, wp-config.php.bak, source maps and similar (~32 paths).sk_l••••••••wxyz).Every detection rule has a stable key (e.g. SECRET-STRIPE-LIVE) and a version (e.g. 1.0). Both are recorded with every finding so reports are reproducible. The full rule catalogue with version history will be published in the public Trust Center.
Findings are graded by severity. Critical and High findings cause the badge to flip to red within 24 hours of the next scan. Medium and Low findings are reported but do not affect badge status. Info-level findings are observational only.
We are transparent about every request we send. You can identify our traffic by:
VerifiedApp-Scanner/x.y.z (+https://verifiedapp.io/scanner-info) — every request we make carries this UA so it is easy to spot in your logs.Origin: https://probe.verifiedapp.io — see below.For paying customers we send one additional request per scan against the root URL of your domain to detect CORS misconfigurations:
GET / HTTP/1.1
Host: yourdomain.com
Origin: https://probe.verifiedapp.io
User-Agent: VerifiedApp-Scanner/x.y.z (+https://verifiedapp.io/scanner-info)
If your server reflects this Origin back into the Access-Control-Allow-Origin response header together with Access-Control-Allow-Credentials: true, that is a critical CORS misconfiguration that allows any website to make authenticated cross-site requests to your application. We need to send the request to discover this — looking at HTML alone cannot reveal it.
Active probes are only performed for registered customer domains (Trust or Code tier) where you have signed our Terms of Service. Badge-tier subscriptions, free preview scans, and producer-discovered URLs receive passive scanning only.
We never probe third-party infrastructure (S3 buckets, Azure Blob containers, etc.) referenced in your HTML. Even if a bucket URL is found in your code, we will never attempt to access it on your behalf — we only flag the reference itself.
The scanner respects robots.txt for non-target hosts and applies per-host rate limits to avoid impact on small infrastructure. Scans are throttled and parallelised across our scanner pool.
If you believe a scan result is wrong, or our methodology should be improved, please write to info@verifiedapp.net. We take false positives and false negatives seriously — they are the worst-case for a trust product.