secscan.info · reference hub

You shipped it in a weekend.
Who else can read it?

SecScan runs 213 security checks against a live web application and grades what it finds A–F. This site is the other half: what each finding means, why it carries the severity it does, and the exact change that clears it. Free to read, no account.

213
checks, every scan
47
engine modules
0
check tiers, every scan runs all of them

Built for apps shipped faster than they were audited

AI builders are good at features and consistently silent about security. These are the findings that come back Critical most often.

There are no check tiers

Every scan runs every check. A paid plan changes how many scans and monitored sites you get, never which checks run. What changes how deep a scan reaches is access, not price.

Detail →

Domain verification

All active probing

Credentials

The surface behind the login

A second account

Broken access control (OWASP A01)

An out-of-band collector

SSRF detection (OWASP A10)

Start here

High

Missing Content-Security-Policy

What a Content-Security-Policy header does, why SecScan reports its absence as High, and how to ship one without breaking your app.

High

Cookie flags: Secure, HttpOnly, SameSite

Why a session cookie missing Secure is High while the same gap on an analytics cookie is Low, and how to set all three flags correctly.

Critical

Supabase tables readable with the anon key

CVE-2025-48757: how a Supabase project ships with Row Level Security off, why the anon key is not the problem, and how to confirm and fix it.

High

SPF, DKIM and DMARC

Three DNS records decide whether anyone can send email as your domain. What SecScan checks, and the exact records to publish.

Critical

Exposed .env files and source maps

Two ways a deploy publishes things it never meant to: config files served as static assets, and source maps shipped next to production bundles.

High

Is my Lovable, Bolt or Cursor app secure? What to check

The problems that most often reach production in apps built with AI tools (open databases, keys in front-end code, public config files) and how to check each one from the outside.

Critical

API keys exposed in JavaScript (OpenAI, Anthropic, Stripe, AWS)

How a secret key ends up in front-end code, how to tell a secret key from a public one, and what to do the moment you find one.

Critical

Firebase security rules left open (Firestore, Realtime Database, Storage)

How to tell whether your Firebase project is readable by anyone, and the rules that fix Firestore, Realtime Database and Cloud Storage.

Medium

Missing HSTS header (Strict-Transport-Security)

What HSTS does, why an HTTPS site without it can still be downgraded, and the exact header to set on Nginx, Apache, Vercel, Netlify and Cloudflare.

Critical

IDOR and broken access control: how to test it

Broken object-level authorisation is the most exploited flaw on the web. What it is, why it needs two accounts to find, and how to fix it.

Common questions

What is SecScan?

SecScan is an automated black-box security scanner for web applications. You give it a URL for a site you own or are authorised to test, and it runs 213 security checks against the live application — security headers, TLS, cookie flags, exposed configuration files, leaked credentials, injection, and access control — then returns a plain-English report with a letter grade from A to F and a numeric risk score. Scans run at secscan.us; the reference documentation is at secscan.info.

Is SecScan a penetration test?

No. SecScan is an automated scanner and does not replace a manual penetration test. It finds the classes of problem that are reliably detectable from outside an application — misconfiguration, exposure, missing controls and known-vulnerable components — but it cannot reason about business logic the way a human tester can.

Does SecScan send real attack traffic?

Its passive checks do not — they observe only what an ordinary visitor sees. Its active checks do send real probe traffic, including injection payloads and path-traversal attempts, so they run only against domains whose ownership you have proven with a DNS TXT record or a well-known file. There is no denial-of-service testing, no credential brute-forcing and no destructive requests.

What does SecScan check for?

It runs 213 checks across 47 modules: security headers including CSP and HSTS, TLS versions, cipher suites and certificate validity (checked by SecScan itself, with no outside grading service), cookie Secure/HttpOnly/SameSite flags, CORS misconfiguration, 81 sensitive paths such as .env files and .git directories, 35 credential patterns in JavaScript bundles, Supabase and Firebase access rules, Next.js __NEXT_DATA__ leakage, JWT weaknesses, exposed source maps and API documentation, known-CVE component versions, DNS and email authentication records, and, when you name a GitHub repository, its source files (committed secrets, Supabase migrations, CI configuration, risky code patterns and vulnerable dependencies), and — on verified domains — reflected XSS, SQL injection, path traversal, IDOR and broken function-level authorisation.

How does SecScan avoid false positives?

Every actionable finding is confirmed behaviourally rather than inferred from the presence of a response. Header gaps are re-fetched before they are reported, candidate paths are checked against the site’s own catch-all handler so a single-page app’s fallback route cannot look like an exposed file, and public-by-design keys are excluded from credential matching. The scanner is regularly run against well-secured sites where the correct answer is known in advance, and every actionable finding is checked by hand.

What is the difference between secscan.us and secscan.info?

secscan.us is the scanner itself — where you sign in, run scans and read reports. secscan.info is the reference documentation: what each check looks for, what each finding means, and how to fix it. They are one product under one publisher.

Scanning happens on secscan.us

This domain is documentation only — it holds no accounts and runs no scans. Point SecScan at a site you own, verify the domain, and it returns a graded report, usually in under a minute. Every account gets 3 free scans every month.

Start a scan →