Your app is live. Is it secure?
VibeAudit runs 19 security engines against apps built with Cursor, Bolt, Lovable, and v0 — finds the real vulnerabilities and explains every fix in plain English. No technical knowledge required.
AI tools optimise for speed. Not security.
You built your app in days. That's remarkable. The problem is that every AI code generator — Cursor, Bolt, Lovable, v0 — makes the same predictable security mistakes. And hackers know exactly where to look.
Built with Cursor or Lovable?
AI code generators don't add security checks by default. They write working code — not safe code. Your Supabase tables are likely wide open and any user can read any other user's data.
Deployed to Vercel in a day?
When you're moving fast, API keys end up in the wrong place. Your OpenAI, Supabase, or Stripe keys may be sitting in your public JavaScript bundle — visible to anyone who opens DevTools.
Using Supabase, Firebase, or Bolt?
Your app's backend routes — the endpoints that fetch data, delete records, or send emails — may have no authentication checks. Any person on the internet can call them directly.
"The average time between an API key being exposed in a public repository and a bot finding it is under 4 hours. Vibe-coded apps face the same risk — on every deployment."
— GitGuardian 2024 State of Secrets Sprawl Report
URL in. Report out. Three steps.
Enter your app URL
Paste your app's public URL. We'll ask you to prove you own it — just like Google Search Console. Takes 60 seconds. This is your legal protection and ours.
Domain verification · No signup required for free scan
We run 19 security engines
Our backend fires up 19 security engines simultaneously — scanning for exposed keys, source maps, injection flaws, CORS issues, missing headers, CVEs, email spoofing, SSL issues, GraphQL exposure, cookie flaws, config leaks, and more. All done in under 60 seconds.
Runs in parallel · Zero manual work from you
Get your plain-English report
An AI reads the raw technical findings and rewrites them in founder-friendly language. You get a 0–100 security score, a business-impact statement for each issue, and copy-paste fixes.
Free score + summary · Full report unlocks on paid tier
19 security engines. Every vibe-coded app.
These aren't edge cases. They appear in the majority of apps built with Cursor, Bolt, Lovable, and v0 — because AI optimises for speed, not security.
Exposed API Keys
Critical"Leaving your master password on a sticky note in your shop window"
We scan your app's public JavaScript bundle for accidentally exposed credentials — OpenAI, Stripe, Supabase, Anthropic, Resend, and more. Any visitor to your site can extract these directly from DevTools.
Active Injection Probe
Critical"A fraudster who walks into your shop, finds an unlocked back room, and starts editing your stock records"
We actively test your app's inputs for XSS (injecting rogue scripts), SQL injection, open redirects, and rate-limit bypasses. These are the same techniques real attackers use — we do it safely and report what we find.
Unprotected API Routes
High"A staff-only back door that's always unlocked because someone forgot to install the lock"
Next.js and Express API routes that perform sensitive operations — deleting users, reading all orders, sending emails — with no authentication check. Cursor and Lovable generate these patterns constantly without adding auth guards.
CORS Misconfiguration
High"Your bank accepting instructions from a random stranger's website as if they were you"
A wildcard CORS policy on your authenticated endpoints allows malicious websites to make API requests on behalf of your logged-in users without them knowing. AI generators default to open CORS to make development easier — but ship it that way.
Tech CVE Detector
High"Running a store with broken locks that the manufacturer publicly warned about — but you never read the memo"
We fingerprint your app's tech stack — Next.js version, libraries, frameworks — and cross-reference against the National Vulnerability Database (NVD) for known CVEs. Vibe-coded apps often ship with outdated npm packages that have documented exploits.
GraphQL Introspection Enabled
High"Handing a burglar the full blueprints of your building before they pick the lock"
When GraphQL introspection is left on in production, any visitor can query your API to retrieve a complete map of your schema — every type, field, query, and mutation. This gives attackers a detailed roadmap of your data model.
Missing Security Headers
Medium"A shop with no alarm system, no CCTV, and no locks on the display cases — everything relies on people being honest"
We check for the five critical HTTP security headers: Content-Security-Policy, Strict-Transport-Security (HSTS), X-Frame-Options, X-Content-Type-Options, and Permissions-Policy. Vercel doesn't set these by default; Next.js doesn't either. Most vibe-coded apps ship with zero headers.
Cookie Security Flaws
Medium"Handing out access badges that don't expire and can be read by anyone nearby"
We inspect your auth and session cookies for three critical flags: HttpOnly (prevents JavaScript from stealing the cookie), Secure (only sent over HTTPS), and SameSite (blocks cross-site submission). AI-generated auth code almost never sets these correctly.
Exposed Config Files
Medium"Publishing your safe combination in the company employee handbook"
Misconfigured deployments sometimes leave .env files, firebase.json, next.config.js, or even .git/config accessible at a public URL. We probe 20+ known paths. This happens more often with Bolt and v0 projects where the deployment step is automated.
Wayback Machine File Exposure
Low"Deleting a document, but forgetting the photocopier's memory still has a copy"
The Wayback Machine and other web archives capture historical snapshots of your app — including past versions that may have contained exposed config files, old API endpoints, or debug pages you've since removed. We query the archive API to surface what was captured.
JavaScript Source Map Exposure
Critical"Publishing the full architect's drawings of your building — including where all the locks and alarms are"
Next.js apps can accidentally ship source map files (*.js.map) to production, making your original TypeScript source code fully readable by anyone who opens DevTools. All your business logic, API route names, and internal variable names become visible.
Exposed API Documentation
Critical"Leaving a complete menu of everything in your safe — with instructions on how to open it — taped to the front window"
Swagger, OpenAPI, and similar auto-generated API docs describe every endpoint, parameter, and data model in your backend. When left publicly accessible in production (/swagger.json, /api-docs, /openapi.json), attackers get a complete map of your entire API surface.
__NEXT_DATA__ Sensitive Data Leak
Critical"Writing your server's secrets on the back of every receipt you hand to customers"
Next.js embeds all server-side props inside a public JSON block in every HTML page. When getServerSideProps returns raw database records or config objects, sensitive fields — passwords, API keys, internal IDs — become visible to any user who views the page source.
Email Spoofing (SPF / DMARC Missing)
High"Anyone in the world can send letters using your company letterhead — and your recipients have no way to tell the difference"
Without SPF and DMARC DNS records, attackers can send emails that appear to come from your exact domain. Your users receive password-reset requests, payment notifications, or security alerts — all faked — with no technical indicator that they are fraudulent.
SSL / TLS Certificate Issues
High"Your shop's 'Open' sign is broken — customers can't tell if you're legitimate or not"
We check your SSL certificate expiry date (warning at 30 days, critical if expired or under 14 days) and verify that plain HTTP traffic is properly redirected to HTTPS. An expired certificate triggers a full-page browser warning that drives nearly all visitors away immediately.
Open Redirect Vulnerability
High"Your receptionist forwards every caller to whatever number they're told — even strangers claiming to be from HR"
We probe 13 common redirect parameters (?redirect=, ?url=, ?next=, ?goto=, etc.) with an attacker-controlled destination. If your site follows the redirect, attackers craft phishing links that start with your trusted domain but land on a malicious page.
No Rate Limiting on Auth Endpoints
High"A bank that lets someone try your PIN an unlimited number of times with no lockout"
We fire 15 concurrent requests at your authentication endpoints (/api/auth/signin, /api/login, etc.) and check whether any are rejected with a 429 Too Many Requests response. Without rate limiting, attackers can test thousands of passwords per minute using breach-database credential lists.
HTTP Method Risks (TRACE / Unsafe Methods)
Medium"An intercom that repeats everything you say back out loud — including your access code"
We test for TRACE method support (enables Cross-Site Tracing — stealing HttpOnly cookies via JavaScript) and check whether PUT/DELETE requests on API paths are accepted without authentication. AI-generated backends often skip method-level restrictions entirely.
Error Page Information Disclosure
Medium"Your 'Sorry, we're closed' sign accidentally lists your alarm code and the names of all your staff"
We trigger 404 and error responses, then scan them for JavaScript stack traces, Node.js error codes, database schema details, and framework version strings. Next.js development error pages are detailed by design — but vibe-coded apps frequently ship them to production unchanged.
What your report looks like
Free tier shows your score and the first two findings. Paid unlocks every finding with fixes.
High Risk
1.Rotate your Supabase API key now
2.Sanitise all user-controlled inputs
3.Add auth middleware to /api routes
Supabase API key exposed in client bundle
Impact:Any visitor can use your Supabase service-role key to read, modify, or delete your entire database — including all user accounts and transaction records.
Fix — copy & paste
// Move to server-side only
const supabase = createClient(url, process.env.SUPABASE_SERVICE_ROLE_KEY)XSS injection point found in /api/search parameter
Impact:Attackers can inject arbitrary JavaScript that runs in any user's browser — stealing session cookies, redirecting to phishing pages, or silently exfiltrating data.
Fix — copy & paste
// Sanitise before rendering — never trust user input
import DOMPurify from "dompurify";
const safe = DOMPurify.sanitize(userInput);CORS wildcard on /api/user/update endpoint
Impact:Malicious websites can modify user account data on behalf of any logged-in user.
/api/admin/export-users has no authentication
Impact:The full user list (name, email, signup date) is downloadable by anyone with the URL.
.env.local accessible at /public/.env.local
Impact:All environment variables are publicly readable.
3 findings are locked. Unlock the full report to see every vulnerability, its business impact, and a copy-paste fix.
Unlock Full Report — ₹1,999Start free. Pay only when you see the value.
The free scan gives you a real security score, passed checks, and two full findings. If you're not alarmed, you don't pay. All prices in USD.
Get a real security score and see if your app has problems — before committing a rupee.
Run Free ScanUnlock every finding for this scan. Share it with your developer or show it to investors.
Unlock This ReportUnlimited scans + automatic monthly monitoring. Know the moment your security score drops.
Start Annual PlanPayments processed securely by Cashfree · Annual plan auto-renews — cancel anytime · No hidden fees
Your app is one click away from knowing
Free. No signup. 3 minutes. If your score is below 80, you need to know — before a hacker tells you.
We verify you own the URL before scanning · No data stored without consent