El ganxo
Garantir un projecte Supabase requereix un enfocament de diverses capes centrat en la gestió de claus API, la seguretat de la base de dades i els permisos d'emmagatzematge. [S1] La seguretat a nivell de fila configurada incorrectament (RLS) o les claus sensibles exposades poden provocar incidents importants d'exposició de dades. [S2] [S3]
Què va canviar
Aquesta investigació consolida els controls de seguretat bàsics per als entorns Supabase basats en directrius oficials d'arquitectura. [S1] Se centra en la transició de les configuracions de desenvolupament predeterminades a postures endurides per la producció, concretament pel que fa als mecanismes de control d'accés. [S2] [S3]
Qui està afectat
Les aplicacions que utilitzen Supabase com a Backend-as-a-Service (BaaS) es veuen afectades, especialment aquelles que gestionen dades específiques d'usuari o actius privats. [S2] Els desenvolupadors que inclouen la clau service_role als paquets del costat del client o no poden activar RLS tenen un alt risc. [S1]
Com funciona el problema
Supabase aprofita la seguretat de nivell de fila de PostgreSQL per restringir l'accés a les dades. [S2] Per defecte, si RLS no està habilitat en una taula, qualsevol usuari amb la clau anon, que sovint és pública, pot accedir a tots els registres. [S1] De la mateixa manera, l'emmagatzematge Supabase requereix polítiques explícites per definir quins usuaris o rols poden realitzar operacions en dipòsits de fitxers. [S3]
Què rep un atacant
Un atacant que posseeix una clau pública API pot explotar les taules que falten RLS per llegir, modificar o suprimir dades que pertanyen a altres usuaris. [S1] [S2] L'accés no autoritzat als cubs d'emmagatzematge pot provocar l'exposició de fitxers d'usuari privats o la supressió d'actius crítics de l'aplicació. [S3]
Com ho prova FixVibe
FixVibe ara cobreix això com a part de les seves comprovacions Supabase. baas.supabase-security-checklist-backfill revisa Supabase les metadades del cub d'emmagatzematge públics, l'exposició a la llista d'objectes anònims, la denominació del cub sensible i els senyals d'emmagatzematge anònims des del límit públic. Les comprovacions en directe relacionades inspeccionen l'exposició de claus del rol de servei, la postura Supabase REST/RLS i les migracions SQL del repositori per trobar RLS.
Què arreglar
Habiliteu sempre la seguretat a nivell de fila a les taules de bases de dades i implementeu polítiques granulars per als usuaris autenticats. [S2] Assegureu-vos que només s'utilitza la clau "anon" al codi del client, mentre que la clau "service_role" roman al servidor. [S1] Configureu el control d'accés a l'emmagatzematge per garantir que els contenidors de fitxers siguin privats de manera predeterminada i que l'accés només s'atorgui mitjançant polítiques de seguretat definides. [S3]
