FixVibe
Covered by FixVibehigh

Varnostni kontrolni seznam Supabase: ključi RLS, API in shranjevanje

Ta raziskovalni članek opisuje kritične varnostne konfiguracije za projekte Supabase. Osredotoča se na pravilno implementacijo varnosti na ravni vrstice (RLS) za zaščito vrstic baze podatkov, varno ravnanje s ključi anon in service_role API ter uveljavljanje nadzora dostopa za vedra za shranjevanje za zmanjšanje tveganj izpostavljenosti podatkov in nepooblaščenega dostopa.

CWE-284CWE-668

Kavelj

Zaščita projekta Supabase zahteva večplastni pristop, ki se osredotoča na upravljanje ključev API, varnost baze podatkov in dovoljenja za shranjevanje. [S1] Nepravilno konfigurirana varnost na ravni vrstice (RLS) ali izpostavljeni občutljivi ključi lahko povzročijo znatne incidente z izpostavljenostjo podatkov. [S2] [S3]

Kaj se je spremenilo

Ta raziskava utrjuje osnovne varnostne kontrole za okolja Supabase na podlagi uradnih smernic za arhitekturo. [S1] Osredotoča se na prehod od privzetih razvojnih konfiguracij do produkcijsko utrjenih drž, zlasti glede mehanizmov za nadzor dostopa. [S2] [S3]

Kdo je prizadet

Prizadete so aplikacije, ki uporabljajo Supabase kot zaledje kot storitev (BaaS), zlasti tiste, ki obravnavajo uporabniško specifične podatke ali zasebna sredstva. [S2] Razvijalci, ki vključijo ključ service_role v pakete na strani odjemalca ali ne omogočijo RLS, so izpostavljeni velikemu tveganju. [S1]

Kako zadeva deluje

Supabase izkorišča PostgreSQL Row Level Security za omejitev dostopa do podatkov. [S2] Privzeto, če RLS ni omogočen v tabeli, lahko vsak uporabnik s ključem anon – ki je pogosto javen – dostopa do vseh zapisov. [S1] Podobno Supabase Storage zahteva izrecne pravilnike za določanje, kateri uporabniki ali vloge lahko izvajajo operacije na vedrih datotek. [S3]

Kaj napadalec dobi

Napadalec, ki ima javni ključ API, lahko izkoristi tabele, v katerih manjka RLS, za branje, spreminjanje ali brisanje podatkov, ki pripadajo drugim uporabnikom. [S1] [S2] Nepooblaščen dostop do veder za shranjevanje lahko povzroči razkritje zasebnih uporabniških datotek ali izbris kritičnih sredstev aplikacije. [S3]

Kako ga FixVibe testira

FixVibe to zdaj pokriva kot del svojih pregledov Supabase. baas.supabase-security-checklist-backfill pregleduje javne Supabase metapodatke vedra za shranjevanje, izpostavljenost seznama anonimnih objektov, občutljivo poimenovanje vedra in signale nevezane shrambe iz javne meje anon. Povezana preverjanja v živo pregledujejo izpostavljenost ključa storitvene vloge, položaj Supabase REST/RLS in selitve SQL repozitorija za manjkajoči RLS.

Kaj popraviti

Vedno omogočite varnost na ravni vrstice v tabelah zbirke podatkov in implementirajte podrobne pravilnike za overjene uporabnike. [S2] Zagotovite, da se v kodi na strani odjemalca uporablja samo ključ 'anon', medtem ko ključ 'service_role' ostane na strežniku. [S1] Konfigurirajte nadzor dostopa do shrambe, da zagotovite, da so datotečni vedri privzeto zasebni in da je dostop odobren samo prek definiranih varnostnih pravilnikov. [S3]