Impatt
In-nuqqas li timplimenta s-Sigurtà fil-Livell tar-Ringiela (RLS) tippermetti lil attakkanti mhux awtentikati li jitolbu dejta minn database Supabase meta tabelli pubbliċi jkunu esposti permezz tal-konfini anon [S1]. Minħabba li l-applikazzjonijiet Next.js tipikament jesponu ċ-ċavetta Supabase anon fil-kodiċi tan-naħa tal-klijent, attakkant jista 'juża din iċ-ċavetta biex jagħmel REST dirett API sejħiet għad-database ta' informazzjoni sensittiva tal-utent u jevita sejħiet għall-informazzjoni sensittiva tal-utent u jaċċessa d-database intenzjonata. [S2].
Kawża Għerq
B'mod awtomatiku, it-tabelli Postgres f'Supabase jeħtieġu attivazzjoni espliċita ta' Row Level Security biex jipprevjenu l-aċċess pubbliku [S1]. Meta żviluppatur joħloq tabella iżda jinsa li jippermetti RLS jew jonqos milli jiddefinixxi politiki restrittivi, id-database tista' tesponi d-dejta lil kull min ikollu ċ-ċavetta anon tal-proġett [S1]. Fl-applikazzjonijiet Next.js, ir-rendiment min-naħa tas-server u l-ġbir min-naħa tal-klijent jeħtieġu wkoll setup tal-klijent Supabase bir-reqqa sabiex il-kuntest tal-utent awtentikat jilħaq is-saff tad-database [S2].
Fixs tal-Konkrit
- Ippermetti RLS: Esegwixxi
ALTER TABLE "your_table_name" ENABLE ROW LEVEL SECURITY;għal kull tabella pubblika li taħżen id-dejta tal-app [S1]. - Iddefinixxi Politika: Oħloq politiki speċifiċi li jirrestrinġu l-aċċess ibbażati fuq l-istatus ta 'awtentikazzjoni tal-utent, bħal
CREATE POLICY "Users can see their own data" ON your_table_name FOR SELECT USING (auth.uid() = user_id);[S1]. - Klijenti Sikura fuq in-naħa tas-Server: Meta tuża Next.js, żomm il-klijenti tar-rwol tas-servizz server-server biss u xorta applika filtri ta' sjieda qabel ma tirritorna d-dejta lill-utenti [S2].
Kif FixVibe jittestja għaliha
FixVibe diġà jħaddem kontroll Supabase RLS li jinqara biss permezz ta' baas.supabase-rls. L-iskaner jiskopri l-URL tal-proġett Supabase u ċ-ċavetta pubblika anonima minn bundles JavaScript tal-istess oriġini, jitlob lil PostgREST għal metadejta ta 'tabella pubblika, u jipprova jagħżel jaqra biss limitat biex jikkonferma jekk id-dejta hijiex esposta mingħajr sessjoni tal-utent. Ma ddaħħalx, taġġorna, tħassar, jew tuża kredenzjali ta' rwol ta' servizz. Repo scans jistgħu wkoll jaqbdu dan aktar kmieni permezz ta 'repo.supabase.missing-rls, li jimmarka migrazzjonijiet SQL li joħolqu tabelli pubbliċi mingħajr ENABLE ROW LEVEL SECURITY.
