Signing what you haven’t read
Watch it happen
Alice ships an AI-built orders page after only clicking through it herself. Mallory asks for it with no badge, and the page hands over everything.
Alice, the bank’s builder, asks her fast new assistant for a page where customers can see their orders. It is ready in minutes.
Alice says: Build an orders page. AI assistant says: Done! It works great.In bank terms and app terms
| In the bank | In your app |
|---|---|
Are you exposed?
You accept AI changes because the app runs and looks right, without reading them. You only test by logging in as yourself, never as another user or a logged-out visitor. Nothing runs automatically on each change to catch leaked keys, risky queries, or known-bad libraries.
Ask for the security rules in your request: who may see what, queries built with placeholders, and no secret keys in browser code. Read every change before it ships, and test as a second user and as a logged-out visitor. Run automatic checks on every change: secret scanning, a dependency audit such as npm audit, and a security scanner or linter.
Ask your AI tool to fix it
Paste this into Cursor, Claude, Lovable, Bolt or whatever you build with.
Review the code in this project that you or another AI tool wrote. For every route and database table, check that it requires login, filters data to the current user (and, if we use Supabase, has row-level security enabled with policies), builds queries with placeholders instead of string joins, and keeps secret keys out of browser code. List what is missing and show me a plan before changing anything. Then fix it and write a test that calls each route as a logged-out visitor and as a different user.Where this comes from
The facts, figures and fixes on this page were checked against these sources on 25 Oct 2026. They are linked so you can check for yourself.
- 2025 GenAI Code Security ReportVeracode45% of code samples from over 100 LLMs failed security tests (OWASP Top 10 flaws).
- Do Users Write More Insecure Code with AI Assistants?arXiv (Perry et al.)Assistant users wrote significantly less secure code and were more likely to believe it secure.
- A01:2021 Broken Access ControlOWASPDeny by default; developers and QA should include access control unit and integration tests.
- SQL Injection Prevention Cheat SheetOWASPUse parameterized queries; concatenating untrusted values defeats the protection.
- Row Level SecuritySupabaseEnable RLS on tables in exposed schemas; without it they are open to roles with a grant.
- About secret scanningGitHub DocsSecret scanning detects hardcoded API keys, passwords and tokens in repositories.
- npm auditnpm Docsnpm audit checks project dependencies against known security problems.
Spot a mistake or something out of date? Report a correction · How these guides are made and checked
The free, open-source scanner checks for most of the problems in these guides.