This already happened

Real incidents, not hypotheticals.

Every claim on this page is sourced and linked, NVD, CISA, or the vendor's own security writeup. No invented statistics.

The anchor case

CVE-2025-48757, 170+ real apps, exactly this pattern.

In May 2025, security researcher Matt Palmer disclosed that 303 endpoints across 170 real apps built with Lovable, 10.3% of the projects he analyzed, could be read or written by anyone, unauthenticated, because Row Level Security was left off. NVD rated it CVSS 9.3, critical, CWE-863 (incorrect authorization). NVD's own description: “An insufficient database Row-Level Security policy in Lovable… allows remote unauthenticated attackers to read or write to arbitrary database tables of generated sites.”

One detail worth sitting with: the vendor's own response disputed that this was a Lovable bug at all, their position was that customers are responsible for protecting their own application data. Whether or not you think that's fair, it's the reality every builder on every AI coding tool ships into. RLS is off by default on new Supabase tables, and nobody except you is going to turn it on.

ShipLock coverage

This is the pattern ShipLock is built around. From your repository: routes that reach a table without identifying the caller or narrowing the query to them. With a Supabase project URL and anon key connected: tables without row-level security and tables readable without signing in, checked every hour. With read-only database access: the policies themselves.

NVD: CVE-2025-48757 · Supabase's own 2025 security retro

Supply chain

Shai-Hulud, a self-replicating npm worm.

Starting September 2025, a worm nicknamed Shai-Hulud spread through the npm registry: attackers compromised a maintainer's account via phishing, published malicious versions of their packages, then used the stolen credentials to infect every other package that maintainer owned, self-replicating without further human involvement. CISA issued an alert. A second, more aggressive wave (“Shai-Hulud 2.0”) hit in November 2025, compromising hundreds more packages and, in some cases, attempting to destroy the infected machine's home directory.

ShipLock coverage

Partial. Your dependencies are matched by package and version against public vulnerability advisories, so a version known to be compromised is reported once an advisory names it. A package that turns malicious before any advisory exists is not caught, and neither is what it did after installation.

CISA alert · Palo Alto Unit 42 writeup

Framework

CVE-2025-29927, Next.js middleware bypass.

A CVSS 9.1 vulnerability disclosed in March 2025: a crafted request header (x-middleware-subrequest) could trick vulnerable Next.js versions into skipping middleware entirely, including whatever auth checks your middleware was supposed to enforce.

Vercel confirmed apps hosted on Vercel were never affected by this one, the platform's own request handling doesn't expose the vulnerable path.

ShipLock coverage

Partial. If your repository pins an affected Next.js version, the same check against public vulnerability advisories reports it. Whether your host exposed the vulnerable path is not determined, and we never send the header to your site to find out.

NVD: CVE-2025-29927 · Datadog Security Labs writeup

Find out if your app has the same gap.

Connect GitHub and ShipLock reads your repository, then your live site and database if you add them. Every limit is stated on the scope page.