Vibe coding means building software fast with AI tools, often with no security team in the room. Those tools optimize for a working app, not a hardened one, so the same handful of gaps show up again and again. Here is what actually goes wrong, and how to see it on your own app.
Across thousands of passive audits of AI-built apps, the most common findings are rarely dramatic exploits. They are hardening that was never switched on.
The most common finding by far. Headers like Content-Security-Policy, X-Frame-Options, and HSTS are off by default, so most AI-built apps ship without them.
No DKIM selector, DMARC not enforced, DNSSEC disabled. It lets your domain be spoofed and hurts deliverability, and almost nobody sets it up by hand.
A stray .env, a source map, a public storage bucket, or a debug endpoint left reachable. Small oversights that hand an outsider a real foothold.
API keys and tokens shipped in client-side JavaScript, where anyone can read them. Easy to do by accident when moving fast.
We say this plainly. A clean passive scan is a good result, not a full bill of health. See exactly where the limits are →