Virkning
Unnlatelse av å sikre AI-genererte applikasjoner kan føre til eksponering av sensitiv infrastrukturlegitimasjon og private brukerdata. Hvis hemmeligheter lekkes, kan angripere få full tilgang til tredjepartstjenester eller interne systemer [S1]. Uten riktige databasetilgangskontroller, for eksempel Row Level Security (RLS), kan enhver bruker være i stand til å spørre etter, endre eller slette data som tilhører andre [S5].
Grunnårsak
AI-kodingsassistenter genererer kode basert på mønstre som kanskje ikke alltid inkluderer miljøspesifikke sikkerhetskonfigurasjoner [S3]. Dette resulterer ofte i to hovedproblemer:
- Hardkodede hemmeligheter: AI kan foreslå plassholderstrenger for API-nøkler eller database-URL-er som utviklere utilsiktet forplikter til versjonskontroll [S1].
- Manglende tilgangskontroller: I plattformer som Supabase opprettes tabeller ofte uten Row Level Security (RLS) aktivert som standard, noe som krever eksplisitt utviklerhandling for å sikre datalaget [S5].
Betongrettinger
Aktiver hemmelig skanning
Bruk automatiserte verktøy for å oppdage og forhindre push av sensitiv informasjon som tokens og private nøkler til lagrene dine [S1]. Dette inkluderer å sette opp push-beskyttelse for å blokkere forpliktelser som inneholder kjente hemmelige mønstre [S1].
Implementer radnivåsikkerhet (RLS)
Når du bruker Supabase eller PostgreSQL, sørg for at RLS er aktivert for hver tabell som inneholder sensitive data [S5]. Dette sikrer at selv om en nøkkel på klientsiden er kompromittert, håndhever databasen tilgangspolicyer basert på brukerens identitet [S5].
Integrer kodeskanning
Inkluder automatisert kodeskanning i CI/CD-pipeline for å identifisere vanlige sårbarheter og sikkerhetsfeilkonfigurasjoner i kildekoden [S2]. Verktøy som Copilot Autofix kan hjelpe til med å rette opp disse problemene ved å foreslå sikre kodealternativer [S2].
Hvordan FixVibe tester for det
FixVibe dekker nå dette gjennom flere live-sjekker:
- Repository-skanning:
repo.supabase.missing-rlsanalyserer Supabase SQL-migreringsfiler og flagger offentlige tabeller som er opprettet uten en samsvarendeENABLE ROW LEVEL SECURITY-migrering [S5]. - Passiv hemmelighet og BaaS-sjekker: FixVibe skanner JavaScript-bunter med samme opprinnelse for lekke hemmeligheter og Supabase-konfigurasjonseksponering [S1].
- Skrivebeskyttet Supabase RLS-validering:
baas.supabase-rlssjekker distribuert Supabase REST-eksponering uten å mutere kundedata. Aktive gatede prober forblir en separat, samtykkekontrollert arbeidsflyt.
