Supabase Security Review and Tenant Isolation Testing
Supabase puts your database behind a public API and asks row level security to hold the line. When a policy is missing or written with the wrong USING clause, every row is readable with the anon key that ships in your front end. CREST-certified testers, fixed price from £2,610, scoped in 24 hours.
- Unlimited retesting
- No rescheduling or cancellation fees
- Fixed quote within 24 hours
“I would highly recommend EJN Labs to any organisation seeking reliable, detailed, and well-managed penetration testing services, particularly for government or enterprise-level projects.”
“There wasn’t another company we could find that could deliver what we needed in the timeframe we needed. The client loved it, and we got instant ROI from the engagement.”
Supabase exposes PostgREST over your database, which means any table without row level security enabled is readable and often writable by anyone holding the anon key. That key is public by design and sits in your client bundle, so the policies are not one layer of defence among several. They are the layer.
Why row level security is the whole game
The failure modes are specific and repeatable. RLS enabled on a table but no policy written, which fails closed and gets “fixed” with a permissive policy. A USING clause that checks a user ID column the client can set. Policies on the parent table but not the view. Service role keys used in an edge function that accepts user input.
We test tenant isolation by attacking it: authenticate as one tenant and attempt to read, modify and delete another tenant’s rows through every exposed path. Supabase is one of several hosting and backend platforms we publish pages for.
ISO 27001, SOC 2, PCI DSS and Cyber Essentials Plus audits accept manual penetration test evidence. Scan-only evidence is generally insufficient.
RLS, KEYS + STORAGE
What we actually pen test on a Supabase project
Manual pen testing across row level security policies, anon and service key exposure, storage bucket rules, edge functions and the auth configuration behind them.
Row level security policies
Every exposed table and view checked for RLS enablement and policy coverage, USING and WITH CHECK clauses tested against values the client controls, and policies verified on views and functions as well as base tables.
Tenant isolation
Authenticated as one tenant, we attempt to read, update and delete another tenant’s data through PostgREST, RPC, realtime subscriptions and storage, which is the test that matters for any multi-tenant product.
Anon and service key handling
Where the anon key appears and what it can reach, whether a service role key has leaked into client code, edge functions or version control, and what an exposed service key permits.
Storage buckets and policies
Bucket public and private settings, storage RLS policies, signed URL generation and expiry, path traversal in object keys, and whether one user’s uploads are reachable by another.
Edge functions and RPC
Database functions exposed through RPC, SECURITY DEFINER functions that bypass RLS, edge function authorisation, and secrets available to the function runtime.
Auth configuration
Signup settings, email confirmation enforcement, JWT claims and custom claims used for authorisation, session and refresh token handling, and whether user metadata the client can write influences access.
METHODOLOGY
Supabase Security Review: From Scope to Attestation
CREST-aligned methodology built on OWASP Web Security Testing Guide, OWASP ASVS, NIST SP 800-115, and PTES. Each finding maps to all four standards plus your specific compliance regime.
Reconnaissance
Application mapping, technology fingerprinting, content discovery, parameter enumeration, authentication-flow analysis, role-matrix construction.
Vulnerability Assessment
Authenticated and unauthenticated automated scanning across every user role, plus targeted manual checks for known weakness patterns.
Manual Exploitation
Hands-on testing by a CREST-certified pentester. Business-logic exploitation, chained vulnerabilities, privilege escalation, impact validation.
Reporting + Retest
Executive summary, technical report with CVSS scores and reproduction steps, walkthrough call, free retest after remediation, attestation letter.
CREDENTIALS
Verified Accreditations Auditors Accept
Every credential below is independently verifiable. UK procurement teams, FCA supervisors, ISO 27001 / SOC 2 auditors, and cyber insurance underwriters all recognise these standards.
GET YOUR QUOTE
Get a CREST Supabase pen test quote in 24 hours
A fixed-price quote back in one business day, from a named CREST assessor. No sales pipeline, no chasing.
- CREST and IASME accredited. Testing your auditors and clients already recognise.
- Fast-track testing within 24 hours where required. Free retest of every fix included.
- Live findings via your client portal, not a four-week PDF.
- Fixed price from £3,500 for a single-role, single-app scope, agreed up front. Most engagements run £5,000 and up. No day-rate surprises.
Under NDA Further named references available on a scoping call.
- We reply within one business day with a fixed-price quote from a named CREST assessor.
- You approve the scope and we book a start date, usually within 24 hours.
- Live findings land in your client portal as we test, with a free retest of every fix.
Get your fixed pen test quote in 24 hours
Quote request received
We will reply within one business day with your fixed-price quote from a named CREST assessor.
Your data stays with us. No newsletter signup.
or book a 20-min scoping call first
We reply within one business day. Your data stays with us. No newsletter signup.
COMPLIANCE READY
Reports Mapped to Every Framework
Findings are explicitly tagged to the relevant control reference. Your audit team submits the report directly without translation work.
ISO 27001:2022
Annex A.8.8 management of technical vulnerabilities plus A.5.15-5.18 and A.8.2-8.5 access control validation.
SOC 2 Type I & II
CC6 logical access, CC7 system operations, CC8 change management evidence.
PCI DSS
Requirement 11.4 application penetration testing across cardholder data environments, including ecommerce penetration testing for online retail platforms.
FCA SYSC
SYSC 4.1.1R, 6.1.1R, 13 mapped to each finding for FCA-regulated firms.
UK GDPR
Article 32 effectiveness testing, customer-data security controls, ICO-acceptable evidence.
Cyber Essentials Plus
Direct certification through our IASME body status, single-vendor delivery.
PRICING
Transparent Supabase Security Review Pricing
Pricing depends on app complexity, user-role count, business-logic depth, and integration surface. The day count flexes; the included deliverables stay the same across all engagements.
2 to 3 testing days
Single user role, basic CRUD application, marketing website with auth. Around 5 working days from kickoff to report.
Get a fixed quote3 to 5 testing days
Multi-role SaaS, business application with payment integration. Around 8 to 12 working days from kickoff to report.
Get a fixed quote5 to 7 testing days
Multi-tenant platform, complex authorisation matrix, integration-heavy applications. Around 15 to 20 working days from kickoff to report.
Get a fixed quotePart of Technologies We Pen Test. These are examples of the stacks we publish pages for, not a complete list. If yours is not here we still test it. Related pages:
BY SECTOR
Supabase Security Review for Your Sector
Sector-specialist scoping for UK businesses with sector-specific compliance regimes and threat models.
Fintech & FCA-Regulated
FCA SYSC, Open Banking FAPI 1.0, PSD2 SCA, payment-flow scrutiny, KYC/AML testing.
Fintech sector pageSaaS Companies
SOC 2 Type I & II evidence, multi-tenant boundaries, role escalation, customer-tenant isolation.
SaaS sector pageLaw Firms
SRA Cyber Standard, privileged data, conveyancing fraud defence, partner-tier procurement.
Law firm sector pageHealthcare
NHS DTAC, DSP Toolkit v6, UK GDPR Article 32, EHR systems, telehealth platforms.
Healthcare sector pageInsurance
FCA / PRA Operational Resilience, cyber underwriting, claims data, broker portals.
Insurance sector pagePublic Sector
CCS / G-Cloud framework, NCSC-aligned, citizen-facing services, PSN-compliance scrutiny.
Public sector pageWHY EJN LABS
What You Get From Supabase Security Review
Six concrete differentiators competitors don’t all match.
CREST-Certified Testers, Verifiable
Every test by a CREST-certified pen tester (CRT, CCT APP, CCT INF where applicable). Verify our company status at crest-approved.org.
24-Hour Startup, Where Required
From signed scope to active testing in a single business day for incident response, audit deadlines, or regulator-driven timelines.
Live Findings, Not 4-Week PDFs
Critical issues reported during testing through your client portal. Your team remediates while testing continues.
Audit-Ready Reports
Executive summary plus full technical report with CVSS scores and explicit framework mappings (ISO 27001, SOC 2, PCI DSS, FCA SYSC).
Free Retests, Standard
Verify remediation of every finding before close-out. Letter of attestation for audit submission included. Most competitors charge £1,500-£3,000 per retest.
UK-Based CREST Testers
Every engagement performed by vetted, UK-based CREST-certified testers, matched to your needs, security clearance, and compliance scope.
FAQ
Frequently Asked
Why does this need a separate page from a general web app test?
Because the database is directly exposed. On a conventional stack the API sits between the client and the data and you test the API. With Supabase the client talks to PostgREST, so testing means enumerating policies and attacking isolation rather than probing endpoints.
Do you need database access?
Read access to the schema and policies makes this far more thorough, because we can reason about every table rather than only the ones we discover. We also want two accounts in different tenants to test isolation properly.
We use SECURITY DEFINER functions. Is that a problem?
Not inherently, but they bypass row level security by design, so each one becomes a trusted boundary. We read them and test whether user input can steer them into returning or modifying data outside the caller’s tenant.
Is the Supabase platform itself in scope?
No. We test your project: policies, keys, functions, storage and auth configuration. Attacking Supabase’s own infrastructure is neither useful nor permitted.
Can you test our front end at the same time?
Yes, and it usually makes sense. If your front end is Next.js, React or Vue we can scope both as one engagement, because the key handling and the policy enforcement are two halves of the same question.
20+ CREST-accredited testing services in one place
Web, mobile, API, cloud, AI, infrastructure, red team. Pick the test that fits your environment.
Get a fixed price for your Supabase project
Tell us roughly how many tables are exposed, whether the product is multi-tenant and whether edge functions are in play. Fixed-price quote from a named CREST assessor within one business day.



