← All guides
High Reported as: Common weaknesses in AI-built apps

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.

An app built with Lovable, Bolt.new, Cursor, Claude Code, Replit or v0 can look finished and still be open. The tools write code that works; they rarely say what they left unprotected. The same handful of problems account for most of what a scan finds.

The five things to check

CheckWhat goes wrongHow you would see it
Database rulesSupabase tables without Row Level Security, or Firebase rules that allow reads without signing inAnyone with your public key can read the data
Keys in the front endAn OpenAI, Anthropic, Stripe or AWS secret key pasted into code that ships to the browserThe key is in your JavaScript bundle
Public files.env, .git, backups or source maps left on the serverA request for the file returns it
Access controlOne signed-in user can open another user’s records by changing an IDSwapping /orders/41 for /orders/42 shows someone else’s order
Security headersNo Content-Security-Policy, HSTS or frame protectionMissing from the response headers

Check them from the outside

A black-box scan tests exactly what an attacker can see, with no access to your code. Paste your URL into SecScan for a graded report. It tests the five areas above, says which tests ran and which it skipped, and writes a fix prompt you can paste back into the tool you built the app with.

Two of these need your account to test properly. Active tests (injection, access control) run only on a domain you have verified you own, and the access-control test needs two ordinary accounts so it can compare what each one can read.

Last reviewed 2026-09-26