Security for vibe coders

Vibe code with confidence.

Ship your Cursor / Lovable / Bolt app knowing it is secure. Strix checks it and fixes what it finds.

Start free

Sign in with GitHub. Takes a minute.

Trusted by security teams at

AWSPayPalUberCiscoCheggFortinetByteDanceDuckDuckGoFordConvexPhilipsPfizer

Security at the speed you build.

Strix checks your app, explains what it found in plain English, and opens the fix as a PR. You merge. Done.

  • Only real issues. No noise.
  • Fix PR you can merge in one click.
  • Rechecked after you merge, free.
FixedFix PR #14 · merged

Your users table was open to anyone

Emails and reset tokens of 40k users could be read without logging in. Strix turned on the right Supabase rules and rechecked.

  • Found on the first check
  • Fix PR opened, 12 lines
  • Rechecked after merge. Safe.
Example finding.

What we catch

The things that slip through when you ship fast.

Open database tables

User data anyone can read without logging in.

Login you can skip

Pages and APIs that work without signing in.

Other people's data

Change an ID in the URL, see someone else's order.

Keys in the frontend

Stripe or OpenAI keys anyone can copy.

Unprotected AI features

Your AI endpoint running up your bill for strangers.

Payments you can fake

Orders marked paid without a real payment.

How it works

No security team needed. No sales call.

01

Connect GitHub

Repo, live URL, or both.

02

Strix checks it

Every page, API, and flow, the way a real user would.

03

Merge the fix

Fix PR opens. We recheck for free.

Fix included

Every issue comes with a PR. Merge it like any other.

Issues/STR-00847

SSRF via URL Parameter in /api/proxy

OpenHigh · 8.6CWE-918

TL;DR

The /api/proxy endpoint accepts a user-supplied URL without validation. An attacker can access internal services, read cloud metadata, and exfiltrate credentials.

Impact

Access to cloud metadata at 169.254.169.254, potential credential theft, and internal network scanning.

Location

acme/api · proxy-handler.ts:23
GET/api/proxy?url=

Severity

High

CVSS

8.6

Fix Effort

Low

Discovered

2h ago

Discover & Validate

Checks your whole app, every time you ship. Only tells you about issues that are real, ranked by what matters.

FixReproduction

How do I fix it?

Validate and restrict the target URL using an allowlist of permitted hostnames. Reject private/internal IP ranges and enforce HTTPS-only.

proxy-handler.ts:23-29Copy
2323 const targetUrl = req.query.url;
24 const resp = await fetch(targetUrl);
24 const parsed = new URL(targetUrl);
25 if (!ALLOWED_HOSTS.has(parsed.hostname)) {
26 throw new ForbiddenError("blocked");
27 }
28 const resp = await fetch(parsed.href);
2529 return res.json(await resp.json());
Fix verified — vulnerability no longer exploitable
PR #247 fix/ssrf-proxy-handler ready to merge

Auto-Fix

Writes the fix, checks that it works, and opens the PR. Review, merge, done.

Vibe coded in

  • Cursor
  • Lovable
  • Bolt
  • v0
  • Replit
  • Claude Code
  • Windsurf
  • Codex

Running on

  • Next.js
  • Supabase
  • Firebase
  • Vercel
  • Stripe
  • Clerk

FAQ

Mostly, usually. Most apps ship with a few things open: a table anyone can read, a page that works without logging in, a key in the frontend. Strix finds them and fixes them.

Ship fast. Stay secure.

Free. Sign in with GitHub.