Je vais auditer votre supabase rls et détecter la fuite de données que votre linter ne peut pas voir

C
cengo3509
C
cengo3509
Cenk Kurtoglu
Certaines informations ont été traduites automatiquement.

À propos de ce service

Traduction automatique

Votre linter Supabase indique que tout va bien. Cela ne signifie pas que votre configuration est sécurisée.


Le linter vérifie si des politiques existent. Il ne vérifie pas si elles sont correctes. Je lis les politiques elles-mêmes et identifie les fuites qui passent tous les contrôles automatisés.


CE QUE JE RECHERCHE


- Utilisation de (true) sans restriction de rôle, ce qui permet à anon d’hériter d’un accès destiné aux utilisateurs connectés

- Tables de jointure et d’adhésion qui ne sont pas isolées, permettant à un locataire d’accéder aux lignes d’un autre

- Clés de service-role accessibles depuis le code client, ce qui contourne complètement RLS

- Politiques permissives qui annulent discrètement les politiques restrictives

- RLS activé sans aucune politique, ou des buckets de stockage ouverts


CE QUE VOUS OBTENEZ


Un rapport détaillant chaque véritable problème, classé par gravité, avec le SQL exact qui le reproduit sur votre base de données. Si vos politiques sont solides, je le dis clairement au lieu d’inventer des problèmes.


Les options standard incluent des politiques corrigées sous forme de migrations prêt-à-l’emploi. Les options premium ajoutent une suite pgTAP qui échoue sur la politique vulnérable et passe sur la correction.


L’accès en lecture seule ou un dump de schéma suffit.


Je publie une démo reproductible de fuite RLS et sa correction sur GitHub, et la sécurité de Supabase a confirmé mon analyse d’un problème réel. Contactez-moi d’abord.

Découvrez Cenk Kurtoglu

Cenk Kurtoglu

Supabase RLS security audits

  • DeTurquie
  • Membre depuisjuin 2024
  • Langues

    Turc, Anglais
I audit Supabase authorization boundaries for teams shipping on Lovable, Bolt, Cursor and Replit. The generated SQL is usually valid. What it misses is whether a policy that exists is actually correct: a permissive policy quietly cancelling a restrictive one, a membership join that is not isolated, or a service-role key reachable from a client path. All three pass Supabase's free linter, and all three pass tests written from a single account. I work from read-only access or a sanitized schema dump. I never need your service-role key.

Traduction automatique