Now scanning vibe-coded apps

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.

Free scan · No account needed · Results in ~30 seconds

500+ apps scanned
19 security engines
Plain-English fixes
VibeAudit — Live Scan
Scanning mystore.vercel.app_
API Key Scanner
Done
Stripe key found in bundle
Source Map Exposure
Done
main.js.map publicly readable
Tech CVE Detector
Done
CVE-2025-29927 confirmed
Email Security
Done
No SPF or DMARC record
Active Inject Probe
Done
XSS reflected in ?q= param
GraphQL Introspection
Done
Schema exposed — 24 types
SSL / TLS Audit
Done
Cert expires in 8 days
Security Headers
Running
CORS Validation
Queued
Rate Limit Check
Queued
Config File Probe
Queued
Route Security
Queued
Security Score
34/100
High Risk
Findings
2 Critical 4 High 3 Low
The problem

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.

RLS is off by default

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.

1 in 3 vibe apps have exposed keys

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.

Unprotected routes = open back doors

"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

How it works

URL in. Report out. Three steps.

01

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

02

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

03

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

What we check

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.

5 Critical8 High5 Medium1 Lowengines running in parallel
01

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.

Detection engine:API Key Scanner
02

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.

Detection engine:Active Inject Probe
03

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.

Detection engine:Route Security Scanner
04

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.

Detection engine:CORS Probe
05

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.

Detection engine:Tech CVE Detector
06

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.

Detection engine:GraphQL Introspection Probe
07

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.

Detection engine:Security Headers Scanner
08

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.

Detection engine:Cookie Security Probe
09

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.

Detection engine:Config File Prober
10

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.

Detection engine:Wayback Machine Probe
11

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.

Detection engine:Source Map Scanner
12

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.

Detection engine:API Docs Probe
13

__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.

Detection engine:__NEXT_DATA__ Inspector
14

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.

Detection engine:Email Security Scanner
15

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.

Detection engine:TLS Audit Engine
16

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.

Detection engine:Open Redirect Probe
17

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.

Detection engine:Rate Limit Detector
18

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.

Detection engine:HTTP Methods Probe
19

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.

Detection engine:Error Disclosure Scanner
Sample report

What your report looks like

Free tier shows your score and the first two findings. Paid unlocks every finding with fixes.

VA
Security Report
mystore.vercel.app
Scanned
Aug 11, 2026 · 14:32
Security Score
34/100

High Risk

Findings
Critical2
High2
Medium1
Immediate Actions

1.Rotate your Supabase API key now

2.Sanitise all user-controlled inputs

3.Add auth middleware to /api routes

Critical

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)
Critical

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);
Unlock full report to see this finding + fix
High

CORS wildcard on /api/user/update endpoint

Impact:Malicious websites can modify user account data on behalf of any logged-in user.

Unlock full report to see this finding + fix
High

/api/admin/export-users has no authentication

Impact:The full user list (name, email, signup date) is downloadable by anyone with the URL.

Unlock full report to see this finding + fix
Medium

.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,999
Pricing

Start 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.

Free Scan
₹0/ always free

Get a real security score and see if your app has problems — before committing a rupee.

Run Free Scan
10-engine vulnerability scan
Security score (0–100)
Severity breakdown (Critical / High / Medium / Low)
Passed security checks shown
First 2 findings with full fixes
Results in ~30 seconds
All remaining findings + fixes
Business impact per finding
Bonus: SEO · AEO · GEO audit
Most Popular
Single Report
₹1,999/ one report

Unlock every finding for this scan. Share it with your developer or show it to investors.

Unlock This Report
Everything in Free Scan
All findings fully unlocked
Plain-English business impact per finding
Copy-paste code fix for each issue
Bonus: full SEO · AEO · GEO report
Valid for this scan only
Best Value
Annual Plan
₹4,999/ per year

Unlimited scans + automatic monthly monitoring. Know the moment your security score drops.

Start Annual Plan
Everything in Single Report
Unlimited scans all year
Auto-scan every 30 days
Email alert if score drops
Month-over-month comparison
Up to 3 apps per account

Payments 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