Security audits for Cursor · Claude Code · Lovable · Bolt · v0 · Supabase apps
A human-verified security audit for vibe-coded apps. We find leaked keys, open Supabase tables and unprotected endpoints, then hand you fix prompts to paste into your AI coding tool.
✓ Passive checks only · ✓ No card needed · ✓ Run by security practitioners: every paid finding human-verified
The problem
Service-role keys, OpenAI and Stripe secrets bundled into your public JavaScript where anyone can copy them.
Missing Row Level Security or "allow all" rules that let anyone read or edit every user's data.
API routes that never check who's calling. Add open CORS, missing security headers and vulnerable dependencies.
What you get
Example
profiles readable without loginWhat it means: anyone with your public anon key (it's in your website's code) can download every user's name and email.
Evidence: an unauthenticated request returned 1,284 rows. Only the row count is recorded; no data is kept.
Fix prompt:
Enable Row Level Security on the "profiles" table in Supabase. Add a policy so authenticated users can only SELECT and UPDATE rows where id = auth.uid(). Do not use the service_role key anywhere in client-side code.
Pricing
$0
$49
$199
Prices in USD. Full Audit guarantee: if we find nothing rated Medium or higher, you get 50% back.
Findings are mapped to OWASP ASVS (Level 1, plus key Level 2 controls for the Full Audit), the OWASP Top 10 and API Security Top 10 (2023), the OWASP Top 10 for LLM apps, and CWE. Severity is scored with CVSS 4.0.
After purchase you sign a short authorization and rules of engagement (scope, testing window, exclusions), then prove ownership with a DNS TXT record or a /.well-known/sentinel.txt file. No active testing happens before both are done. For the Full Audit you provide two test user accounts (and an admin if you have roles). Staging is preferred.
Launch Check covers your code, dependencies, secrets and the public surface of your app, with human triage. The Full Audit also logs in as different users and tries to reach data or actions they shouldn't. That's where the serious bugs in vibe-coded apps usually are (open RLS, IDOR, payment bypass).
We follow a minimal-proof rule: we prove access with row counts or column names, never bulk data. Testing is non-destructive. Write tests run only against test accounts or staging, and we stop and tell you immediately if we find something critical.
Full refund any time before testing starts. For the Full Audit, if we find nothing rated Medium or higher, you get 50% back.
No. An audit is a point-in-time, best-effort review of the agreed scope. It reduces risk but can't prove the absence of vulnerabilities.
The free scan is instant. Launch Check is delivered in 48h. The Full Audit is delivered within 5 business days of authorization, and the retest within 30 days.
/.well-known/sentinel.txt).