AppScan
For people shipping solo

You built it in a week. Now find out what you built.

A model wrote most of it, it works, and people are using it. The part nobody covered is whether the thing you deployed is safe to have on the internet - and you would rather not learn application security to find out.

01The situation

Sound familiar?

You cannot review what you did not write

The code works, you understand the shape of it, and you have no idea whether that database query can be twisted by a stranger.

The scanner output is worse than nothing

Open-source tools return four hundred results with CWE numbers and no indication which of them can actually hurt you.

Keys end up in the wrong place

A key pasted into a file to “test something” at 2am is the single most common way a small product gets drained.

Nobody is watching after launch

The check you ran once before launch says nothing about the eleven deploys you shipped since.

02What changes

One page that says fix this first.

AppScan reads your live app and your repository, then writes each finding in five plain answers: what is wrong, why it matters, how someone would abuse it, how to fix it and how the fix gets verified. No CVSS vector, no vocabulary test.

  • Start with nothing installed

    A URL and an email gets you the whole runtime half: TLS, headers, cookies, exposed files, keys in your JavaScript and every request your pages make.

  • It knows your stack

    Next.js on Vercel with Supabase is read differently from Rails on a VPS. The advice matches what you actually deployed.

  • The fix arrives as a pull request

    When you connect GitHub, Fix with AI writes the change against your file and opens it as a draft for you to read and merge.

  • It keeps watching

    Every push after that is classified and scanned, so the eleventh deploy gets the same attention as the first.

appscan.sh/sites/checkout-app
Fix first
  • Criticalsource.secrets.credential-committed
    A Stripe secret key is committed to the repository
  • Criticalsource.injection.sql-built-from-input
    SQL is built from request input in findOrders
  • Highbrowser.network.data-readable-unauthenticated
    Orders API answers without a session
  • Mediumruntime.headers.csp-missing-or-unsafe
    Content-Security-Policy allows inline scripts
Scanrunning
  • ✓Reaching the site
  • ✓Checking HTTPS
  • ✓Detecting the stack
  • ✓Inspecting security headers
  • ✓Checking cookies
  • ✓Reading DNS and mail records
  • ·Reading the page head and structure
  • ·Reading robots.txt, sitemaps and security.txt
Pull request
2 new

9 unchanged findings inherited from main, not raised again.

Invariants
14 / 15

One broke in this change: tenant scope removed from a lookup.

03A week with it

What the first week actually looks like

  1. 01
    Sunday: run the free scan

    Paste the URL of the thing you launched. The report arrives by email in a few minutes and tells you whether anything is urgent.

  2. 02
    Monday: connect the repository

    Install the GitHub App on one repository. The first inventory scan reads your lockfiles, your history and your deploy files.

  3. 03
    Tuesday: fix the two that matter

    Work the fix-first list from the top. Ask for a fix on the ones you are unsure about and merge the drafts.

  4. 04
    The rest of the week: ship

    Keep deploying. Each push is scanned, and you hear from AppScan only when a change actually made things worse.

Where to start
Pro$29 / month

One app, watched continuously, with the repository connected and a thousand credits a window for explanations and fixes.

  • One site with its repository connected
  • All 249 rules, including the 52 source rules
  • Fix with AI as a draft pull request
  • Instant alerts and a weekly digest
Create a free account

Start on Free, which does not expire. Upgrade when it pays for itself.

It takes one URL to find out.

The free scan is the full runtime half of the product. If your app is fine, the report says so and you have lost four minutes.