Your AI-built app, attacked on purpose, with the proof and the fix.

Built with Lovable, Bolt, Cursor, Claude or similar? With two test accounts, we try what a stranger would try on your app. Every hole comes with the request that got in and a fix prompt you paste into your AI tool, then we run the attack again.

Not open yet. Join the waitlist to hear when the first spots open.

What gets tried

  • 01

    One user reads another user's data

    Test user B asks for test user A's records by ID, then tries to change them.

  • 02

    Tables open to anyone

    The public key from your page code, used straight against your database.

  • 03

    Admin routes for normal users

    A normal login calling the routes only an admin should reach.

  • 04

    Keys in the page code

    Your app's own keys tried against your app to show what they open. Payment, email and AI keys are reported, never used.

  • 05

    Users making themselves admin

    A normal user editing their own role or plan.

What a finding looks like

From my own test app, with fake data. Logged in as Alice, I changed Bob's invoice.

The request, sent with Alice's login

PATCH /rest/v1/invoices?id=eq.3
{"status": "paid"}

What came back

[{"id": 3, "owner_id": "2222…2222", "customer": "Bob Client Fake",
  "amount_cents": 99000, "status": "paid", "memo": "BOB PRIVATE invoice"}]

The fix prompt

In Supabase, the invoices table lets any logged-in user read and edit
every row (policy using (true)). Drop every policy on invoices that allows
all rows, since policies combine with OR. Then make the select and update
policies owner_id = auth.uid(), add the same with check to update, and show
me a test where user B cannot read or edit user A's invoice.

How it works

  1. Show it's yours

    A DNS record or a file on the site proves the app is yours. You sign a testing permission before anything runs.

  2. We attack it

    On the URL you name, with two test accounts you create. Read-only first, writes only into the test accounts.

  3. You fix it

    Each hole comes with its proof and a fix prompt for Claude, Cursor or Lovable.

  4. We try again

    The same attack runs after your fix, so you can see it no longer gets in.

Only apps you own, or apps whose owner has given written permission.

Join the waitlist

You hear once, when the first spots open.

One email when it opens. No newsletter. Leave out passwords and keys.

Want to try it yourself first?

The free IDOR guide shows how to test your own app with two accounts in about 5 minutes.