Controllerò la sicurezza della tua app Lovable o bolt supabase prima del lancio


Informazioni su questo servizio
Traduzione automatica.
Realizzata con Lovck clean, te lo dirò. Lovable, Bolt o Cursor. Funziona. Non è mai stato questo il problema.
La domanda è cosa può leggere uno sconosciuto che tiene la tua anon key.
Questi strumenti generano policy velocemente, e di solito sembrano corretti. Ma RLS è uno strato. Sotto c'è il sistema di grant di Postgres, sopra c'è PostgREST, e le perdite si trovano nelle cuciture.
Gestisco un POS multi-tenant su Supabase - 90 migrazioni, soldi veri ogni giorno. Tre revisioni di sicurezza hanno trovato sei vulnerabilità reali, tutte oltre le policy che erano, come scritto, corrette.
COSA CONTROLLO
- Tabella con RLS spento, o acceso senza policy
- - Funzioni che anon può eseguire (revocare solo da anon NON chiude questa vulnerabilità)
- - View che bypassano RLS, e quelle rese scrivibili da PostgREST in modo silenzioso
- - Grant a livello di tabella, e l'asimmetria che nessuno si aspetta:
- una nuova colonna è NEGATA per le letture finché non la concedi
- una nuova colonna è CONSENTITA per le scritture finché non la revoci
COME LO DIMOSTRO
Accedo come un utente con privilegi bassi dal tuo progetto, eseguo la query e ti mostro la risposta. Ogni scoperta include la sua query e il suo output. Dopo la correzione, la stessa query viene eseguita di nuovo e restituisce qualcosa di diverso.
Lo script di sola lettura che uso è pubblico - provalo tu stesso
Scopri di più su Basel Draz
Supabase RLS and privilege audits
- DaEgitto
- Membro dafeb 2024
- Tempo di risposta medio11 ore
Lingue
Arabo, Inglese
Traduzione automatica.
Il mio portfolio
FAQ
Traduzione automatica.
Hai bisogno del mio database di produzione?
No. Un ruolo di sola lettura, o una copia di staging con lo stesso schema, sono sufficienti. I controlli leggono i cataloghi, non le tue righe. Non voglio la tua chiave di ruolo di servizio e ti chiederò di non inviarla. Solo il package Audit e Fix necessita di accesso in scrittura, e solo per le migrazioni elencate nel rapporto.
Non ho scritto io il codice, l'ha fatto l'AI. È un problema?
Assolutamente no, e non hai bisogno di capire l'SQL per usare il rapporto. La parte superiore è scritta in linguaggio semplice per chi firma, e le query e le migrazioni sono sotto per chi le applica. Se anche tu sei uno di loro, ti guiderò passo passo.
E se non trovo nulla?
Allora il rapporto dice così, e hai una baseline documentata più l'elenco di tutto ciò che è stato testato. Provalo tu stesso con lo script pubblico prima di ordinare. Se risulta pulito, scrivimi e ti dirò onestamente che non ne hai bisogno.
È solo per Supabase?
I controlli sono semplici Postgres e funzionano su qualsiasi database Postgres 15+ che utilizza row level security. Supabase è il luogo dove sono più necessari, perché il ruolo anon e PostgREST espongono cose che le persone non si aspettano. Firma anche tu un NDA su richiesta, e i tuoi risultati non appariranno mai nei miei scritti pubblici.

