FixVibe

// docs / baas security / umbrella scanner

Scanner di sbagli di cunfigurazione BaaS: trova percorsi di dati publichi prima di l'utenti

I fornitori Backend-as-a-Service — Supabase, Firebase, Clerk, Auth0, Appwrite, Convex — tutti fallenu a sicurezza in listessa forma: a piattaforma manda difetti sensati, u sviluppatore (o l'attrezzu di codifica IA) piglia una scurciatoia, è un percorsu publicu s'apre trà un attaccante micca autenticatu è dati di clienti. Un scanner di sbagli di cunfigurazione BaaS hè l'unicu attrezzu chì sonda quellu percorsu da fora cum'è u faria un attaccante. St'articulu mappa e cinque classe ricorrenti di sbaglii di cunfigurazione, spiega cumu funziona u scan BaaS d'imbrelli FixVibe, paraguneghja i quattru fornitori maiò, è cuntrasta u scanner BaaS-cunsciu contru à l'attrezzi DAST generali.

Perchè i sbaglii di cunfigurazione BaaS anu una forma ricorrente

Ogni piattaforma BaaS seguita listessa architettura: un backend gestitu cù un SDK cliente sutile chì parla cù ellu da u navigatore. U cliente rivoltu à u navigatore hà bisognu di qualche credenziale — una chjave anon, una chjave publishable, un ID di prughjettu Firebase — per identificassi à u backend. Quella credenziale hè intenzionalmente publica; a sicurezza di l'architettura riposa nantu à i cuntrolli d'accessu à livellu di piattaforma (RLS, regule, liste d'auturizazione) chì fannu u so travagliu.

L'attrezzi di codifica IA custruiscenu nantu à sta architettura senza interiorizà u stratu di cuntrolli di piattaforma. Cullegheghjanu u SDK cliente currettamente, accettanu e regule permissive predefinite di a piattaforma (chì esistenu per esse amichevule cù i tutorial), è mandanu. A forma ricorrente hè: credenziale publica + regula difettu permissiva + override mancante = esposizione di dati. E cinque classe di sbaglii di cunfigurazione sottu sò tutte varianti di sta forma.

E cinque classe ricorrenti di sbaglii di cunfigurazione

Quessi appariscenu trà ogni fornitore BaaS. Un scan cumpletu copre tutti i cinque contru à ogni fornitore in usu:

Classa 1: Chjave sbagliata in u bundle di u navigatore

U navigatore manda a chjave secreta/amministratore (Supabase service_role, chjave privata SDK d'amministrazione Firebase, Clerk sk_*, secretu di cliente Auth0) invece di l'equivalente publicu/anon. U navigatore diventa un cliente amministratore senza limiti. Cupertu da u check bundle-secrets di FixVibe.

Classa 2: Stratu di cuntrollu d'accessu disattivatu o permissivu

RLS hè spentu, e regule Firebase sò if true, a lista di callback Auth0 hè wildcardata. A credenziale in u navigatore hè quella curretta — ma a fruntiera à livellu di piattaforma chì duvia limitalla ùn stà facendu u so travagliu.

Classa 3: Letture anonime di risorse sensibili

Cullezzioni Firestore leghjibili anonimu, bucket di storage Supabase listabili anonimu, API di gestione Auth0 accessibile anonimu. U scan dumanda: "senza credenziali, ciò chì possu leghje?"

Classa 4: Artefatti di test-mode in produzzione

Chjavi di test (pk_test_*, sb_test_*) in un spiegamentu di produzzione; appiendice Firebase in dev-mode ghjuntibile da u duminiu vivu; appiendice Auth0 di test-tenant cù paràmetri più debuli chè a produzzione. U scan paraguneghja e chjavi runtime contru à i prefissi di produzzione attesi.

Classa 5: Verifica di firma di webhook mancante

I webhook Clerk, i webhook Stripe, i webhook Supabase tutti firmanu i so payload. Un handler chì ùn verifica a firma hè una primitiva di scrittura di basa di dati per qualunque attaccante chì indovina l'URL. Rilevatu via forma di risposta — una richiesta micca firmata chì riceve un 200 significheghja chì a verifica hè saltata.

Cumu funziona u scan BaaS d'imbrelli FixVibe

A fase BaaS di FixVibe gira in trè tappe, ognuna chì pruduce risultati distinti:

  1. <strong>Stage 1 — provider fingerprinting.</strong> The scanner crawls the deployed app, parses every JavaScript chunk, and identifies which BaaS providers the app uses. Each provider has a distinctive runtime signature: Supabase uses <code>*.supabase.co</code>; Firebase uses <code>firebase.initializeApp({ projectId: ... })</code>; Clerk uses <code>pk_*</code> keys with a known prefix; Auth0 uses <code>clientId</code> and <code>domain</code>. The scanner records which providers are present and extracts the project identifiers.
  2. Tappa 2 — sondaghji specifichi à u fornitore. Per ogni fornitore rilevatu, u scanner gira u check specificu à u fornitore: baas.supabase-rls sonda PostgREST; baas.firebase-rules sonda Firestore + RTDB + Storage; baas.clerk-auth0 valideghja u prefissu di e chjavi impacchittate; u check bundle-secrets valideghja chì nesuna credenziale di livellu serviziu hè partuta. Ogni sondaghju gira indipendentemente — un risultatu Supabase ùn blocca u scan Firebase.
  3. Tappa 3 — currelazione cross-fornitore. U scanner cruceghja i risultati. Una chjave di service-role Supabase persa accantu à RLS mancante hè più severa chè ognunu di i risultati sulu — u raportu mette questu in vista. Multipli fornitori d'identità (Clerk + Auth0 + auth persunalizatu) in listessa app hè un risultatu strutturale sgnalatu per rivista.

Ogni sondaghju hè passivu: al massimu una lettura anonima per risorsa, cù forma di risposta registrata ma cuntenutu di righe mai paginatu o stuccatu. I sondaghji di scrittura è mudificazione sò gattati daretu à verifica di pruprietà di duminiu — ùn parteranu mai contru à miri micca verificati.

Ciò chì u scanner trova per fornitore

Ogni fornitore BaaS hà una superficia sfarente è una strategia di scan sfarente. Eccu ciò chì hè cupertu:

  • Supabase: RLS mancante nantu à tabelle, bucket di storage listabili anonimu, JWT service_role persu o chjave sb_secret_* in u bundle, schema esposti via listing OpenAPI anonimu. Vedi Scanner RLS Supabase è Lista di cuntrollu di storage.
  • Firebase: regule if true nantu à Firestore, Realtime Database, è Cloud Storage; bucket di Storage listabili anonimu; impusizione App Check mancante. Vedi Scanner di regule Firebase è Spiegatore di regula if-true.
  • Clerk: chjavi secrete sk_* impacchittate, pk_test_* in produzzione, verifica di firma di webhook mancante, urigini permesse wildcard. Vedi Lista di cuntrollu Clerk.
  • Auth0: secreti di cliente impacchittati, cuncessione Implicit attivata, URL callback / logout wildcard, PKCE mancante nantu à SPA. Vedi Lista di cuntrollu Auth0.

Cumu un scanner BaaS si paragona à l'attrezzi DAST è SAST generali

Un scanner BaaS-cunsciu face travagliu specificu chì l'altri attrezzi ùn fannu. U paragone:

AspettuFixVibe (DAST BaaS-cunsciu)DAST generale (Burp / ZAP)SAST / SCA (Snyk / Semgrep)
Cupertura BaaSCheck nativi per Supabase, Firebase, Clerk, Auth0, AppwriteCrawl web genericu; nisun sondaghju specificu à u fornitoreAnalisi statica di solu repo; nisuna validazione di produzzione
Tempu di cunfigurazioneURL → lampa → risultati in 60 secondiOre: cunfigura spider, auth, ambituGhjornu: integra in u CI di u repo
Ciò ch'ellu provaEsposizione runtime di produzzione cù evidenza à livellu HTTPVulnerabilità web-app (XSS, SQLi); BaaS via cunfigurazione manualePattern di codice chì ponu o ùn ponu spiegassi
Inspezione di bundle JavaScriptDecuddifica JWT, matcheghja prefissi di secreti, cammina i chunkLimitatu — solu grep basatu nantu à stringheIè, ma solu latu repo, micca spiegatu
Scansione cuntinuaMensile / à u spiegamentu via API + MCPManuale; cunfigura tù u calendariuPer commit (bonu per u codice, cecu à u runtime)
Prezzu per solo / pìccula squadraPianu gratisi; pagatu da $19/meseBurp Pro $499/annu; ZAP gratisi ma alti falsi pusitiviSnyk gratisi / Semgrep gratisi; piani pagati da $25/sviluppatore

Ambitu onestu: ciò chì stu scanner ùn rimpiazza

Un scanner DAST BaaS-cunsciu hè un attrezzu focalizatu, micca un prugramma di sicurezza cumpletu. Ùn:

  • Rimpiazza SAST o SCA. L'analisi statica trova CVE di dipendenze (Snyk, Semgrep) è vulnerabilità à livellu di codice (SonarQube) chì un scanner DAST ùn pò micca. Faci tutti i dui.
  • Rimpiazza i test di penetrazione manuali. Un pentester umanu trova falle di logica di affari, casi limite d'auturizazione, è vulnerabilità incatenate chì nisun scanner pò. Affitta un pentester prima di un grande lanciu o audit di cunfurmità.
  • Auditeghja u to codice o repo per secreti in a storia git. U check bundle-secrets copre ciò chì hè attualmente spiegatu, micca ciò chì hè statu storicamente committatu. Adopra git-secrets o gitleaks per l'igiena di u repo.
  • Copre i servizii backend micca BaaS. S'è a to app usa un backend persunalizatu (Express, Rails, Django, FastAPI), FixVibe scansiuneghja a so superficia HTTP ma ùn sonda micca a basa di dati o l'infrastruttura daretu. Quessa hè territoriu DAST generale + SAST.

Dumande frequenti

U scan d'imbrelli funziuneghja s'è a mio app usa dui fornitori BaaS (per esempiu, Supabase + Clerk)?

Iè — u fingerprinting di fornitore è i sondaghji per fornitore sò indipendenti. U scanner detetta tramendue, gira tramendue suite di check, è riporta currelazioni cross-fornitore (per esempiu, un mudellu JWT Supabase da Clerk chì manda email cum'è claim accantu à RLS mancante).

Cumu hè questu sfarente da girà Burp Suite Pro contru à a mio app?

Burp hè un banc di travagliu DAST generale. Fora da a scatula, Burp ùn cunnosce ciò chì sò PostgREST, Firestore, o u percorsu callback Auth0 — devi cunfigurà manualmente l'ambitu, scrive estensioni, è interpretà e risposte. FixVibe vene cù sondaghji BaaS integrati è furmattazione d'evidenza in forma BaaS. Burp vince nantu à a cupertura web-app generale (XSS, SQLi, logica di affari); FixVibe vince nantu à i risultati specifichi à BaaS.

Chì face App Check (Firebase) o attestazione (Apple / Google)?

App Check face chì e scansioni esterne uppurtunistiche tornanu 403 in ogni sondaghju — u risultatu currettu per un bot maliziosu. Una scansione FixVibe da un cliente micca attestatu si cumporta listessu modu. S'è hai App Check attivatu è FixVibe sempre riporta risultati, significheghja chì e to regule sò aperte ancu à i clienti attestati, chì hè u risicu reale. App Check + regule currette hè u pattern di difesa in prufondità.

U scanner pò verificà a mio currezzione?

Iè — rilampa dopu avè applicatu a currezzione. L'ID di check (per esempiu, baas.supabase-rls) sò stabili trà esecuzioni, cusì pudè diffà i risultati: un risultatu chì era open in l'esecuzione 1 è assente in l'esecuzione 2 hè a prova chì a currezzione hè atterrata.

Prussimi passi

Lampa una scansione FixVibe gratisa contru à u to URL di produzzione — i check di fase BaaS sò in ogni pianu, cumpresu u pianu gratisi. Per appronfondimenti specifichi à u fornitore, l'articuli individuali in sta sezzione coprenu ogni fornitore in dettagliu: RLS Supabase, Esposizione di chjave di serviziu Supabase, Storage Supabase, Regule Firebase, Firebase if-true, Clerk, è Auth0.

// scansiona a to superficia baas

Trova a tabella aperta prima chì qualcunu altru a faci.

Inserisci un URL di produzzione. FixVibe enumera i fornitori BaaS cù chì parla a to app, identifica i so endpoint pubblichi è riporta ciò chì un cliente micca autenticatu pò leghje o scrive. Gratisi, senza installazione, senza carta.

  • Pianu gratisi — 3 scansioni / mese, senza carta d'iscrizzione.
  • Fingerprinting BaaS passivu — nessuna verifica di duminiu richiesta.
  • Supabase, Firebase, Clerk, Auth0, Appwrite, è altri.
  • Suggerimenti di currezzione IA nantu à ogni risultatu — incollali in Cursor / Claude Code.
Lampa una scansione BaaS gratisa

nisuna iscrizzione richiesta

Scanner di sbagli di cunfigurazione BaaS: trova percorsi di dati publichi prima di l'utenti — Docs · FixVibe