Will It Vibe?
SEC-009Critical severity-25 points

SQL built via string concatenation

Part of Security, which counts for 30% of the overall score. When this check fires it deducts 25 points from that category, once per scan, no matter how many places it turns up.

What it detects

Building SQL with string concatenation/interpolation instead of parameterized queries risks SQL injection.

Why it matters

Concatenating or interpolating values into SQL means a crafted input can rewrite the query, reading other users' rows or deleting tables. This is still one of the most exploited bug classes in production apps. Parameterized queries close it completely for values.

How to fix it

Pass values as parameters, never into the SQL string: use ? or $1 placeholders with your driver (pg, mysql2, better-sqlite3, sqlite3, psycopg), prepared statements, or your ORM bound parameters. Table and column names cannot be parameterized, so if those are dynamic, check them against a hardcoded allowlist. Rewrite each flagged query rather than escaping inputs by hand.

The paid report includes a ready-to-paste prompt for your AI coding agent for every check it finds, pointed at the exact findings from your scan. See pricing

Does your repo trip this check?

Paste a GitHub URL or drop a project folder. Scans run in your browser and take seconds.

Scan your repo

Related Security checks