FixVibe

// docs / security guides / bolt.new checklist

Bolt.new security checklist: 23 items before ship

Bolt.new (StackBlitz WebContainer) runs your dev environment in the browser, generates full-stack JS in minutes, and publishes to Bolt hosting by default or to Netlify (Bolt docs). This checklist targets Bolt-specific risks: secrets that were safe in the dev container leak once the project is exported, Express CORS defaults are permissive, session cookies need explicit HttpOnly flags, and credentials pasted into the terminal or chat are hard to take back. 23 items across secrets, database, auth, headers, deployment, and Bolt-specific gotchas.

PRE = pre-deploy (audit your source). DEPLOY = at deploy time. POST = post-deploy verification.

Secrets et clés API (5 éléments)

Le WebContainer de Bolt s'exécute dans le navigateur ; l'exportation vers GitHub ou Netlify déplace les secrets du conteneur isolé vers le référentiel public.

  1. PRE — Never paste service-role keys into the Bolt terminal or chat. Anything you paste there is hard to take back. Keep keys in .env or your host's environment settings instead.
  2. PRE — Create a .env file, never hardcode secrets in code. Le conteneur de dĂ©veloppement de Bolt isole bien .env, mais lorsque vous exportez vers GitHub, .env doit ĂȘtre dans .gitignore.
  3. PRE — Confirm .gitignore excludes .env, .env.local, .env.*.local. Bolt Ă©chafaude gĂ©nĂ©ralement cela correctement, mais vĂ©rifiez avant l'exportation.
  4. DEPLOY — Set secrets in Netlify Environment Variables, not in code. Netlify → ParamĂštres du site → CrĂ©er et dĂ©ployer → Environnement. Ajoutez-y vos clĂ©s, limitĂ©es Ă  Production.
  5. POST — Run Secrets in JavaScript Bundles on the deployed URL. Si une clĂ© atteint le dĂ©ploiement Netlify, l'analyse la trouvera.

ContrÎle d'accÚs à la base de données (3 éléments)

Bolt échafaude généralement avec Supabase ou Convex. Les deux ont des modes d'ouverture par défaut qui nécessitent des politiques explicites.

  1. PRE — If using Supabase, enable RLS on every public table. Bolt's scaffold might not include ENABLE ROW LEVEL SECURITY or policies. Add both in the migration.
  2. PRE — Write policies that validate user ownership. Chaque politique doit cocher auth.uid() = user_id ou Ă©quivalent. Les stratĂ©gies gĂ©nĂ©rĂ©es par Bolt manquent parfois cela.
  3. POST — Run a FixVibe scan on the deployed app. Check the Supabase Row-Level Security result: it shows any table an anonymous visitor can read with your public key.

Authentification et sessions (4 éléments)

Bolt génÚre une authentification Express ou Next.js. Le risque réside dans la configuration des cookies et la validation des jetons.

  1. PRE — Ensure session cookies are HttpOnly; Secure; SameSite=Lax. Bolt gĂ©nĂšre parfois des cookies sans ces indicateurs. VĂ©rifiez-les ou ajoutez-les manuellement.
  2. PRE — Check Bolt's generated auth handlers for server-side token verification. Si getSession() est utilisĂ©, remplacez-le par une recherche backend vĂ©rifiĂ©e.
  3. PRE — Verify the sign-in redirect guard. Le paramĂštre next doit commencer par /, jamais //. Bolt saute parfois cela ; ajoutez-le manuellement si nĂ©cessaire.
  4. POST — Test logout clears the session cookie. Connectez-vous, dĂ©connectez-vous, inspectez les cookies. Le cookie de session doit ĂȘtre supprimĂ© lors de la dĂ©connexion.

HTTP en-tĂȘtes et CSP (3 Ă©lĂ©ments)

Les échafaudages Express/Next.js de Bolt incluent rarement CSP. Les hÎtes statiques nécessitent une configuration explicite.

  1. PRE — Add middleware for security headers if using Express. L'Ă©chafaudage Express de Bolt nĂ©cessite un middleware manuel pour CSP, HSTS, X-Frame-Options.
  2. PRE — If using Next.js, ensure src/middleware.ts exists with CSP. Bolt pourrait l'Ă©chafauder, mais vĂ©rifiez que la logique occasionnelle CSP est correcte.
  3. POST — Run HTTP Security Headers on the deployed Netlify URL. L'analyse signale des en-tĂȘtes manquants.

HygiÚne de déploiement (5 éléments)

Bolt exporte vers GitHub et Netlify. Les deux nécessitent une configuration minutieuse.

  1. DEPLOY — Ensure Bolt exports include .gitignore with .env listed. VĂ©rifiez que le rĂ©fĂ©rentiel GitHub ne contient pas de fichiers .env aprĂšs l'exportation.
  2. DEPLOY — Set Netlify env vars via Site settings, not GitHub secrets. Les variables d'environnement de Netlify sont chiffrĂ©es au repos ; GitHub les secrets sont conçus pour CI, pas pour le dĂ©ploiement.
  3. DEPLOY — Audit the Netlify deploy log for secret echo. Si le journal de construction imprime une variable d'environnement, elle est compromise.
  4. DEPLOY — Configure Netlify build command to not run echo $SECRET. VĂ©rifiez votre package.json et crĂ©ez des scripts pour toute sortie secrĂšte.
  5. POST — Verify Netlify redirect for HTTP → HTTPS exists. Bolt les applications devraient forcer HTTPS. Netlify peut appliquer cela via les paramùtres.

Bolt piÚges spécifiques (3 éléments)

ModÚles uniques au flux WebContainer-to-export de Bolt :

  1. L'environnement de dĂ©veloppement de WebContainer isolation is lost on export. Bolt isole les secrets en toute sĂ©curitĂ©, mais une fois que vous exportez vers GitHub, vous ĂȘtes responsable de .gitignore et de la discipline env-var.
  2. Treat the terminal and chat like a shared log. Don't paste credentials into either; put them in .env or your host's environment settings.
  3. Express cors({ origin: '*' }) is the default. L'échafaudage Express de Bolt inclut souvent le permissif CORS. Remplacez par cors({ origin: 'https://yourdomain.com', credentials: true }).

Prochaines étapes

Examinez le general vibe coding security checklist pour 51 éléments multi-outils. Voir step-by-step hardening pour CSP, RLS et les modÚles d'authentification.

// scanner votre app

ArrĂȘtez de lire. Trouvez les failles dans la vĂŽtre.

Drop in a URL — FixVibe runs every passive check from this guide plus the rest of its 230+ passive checks, usually in under a minute. Free, no install, no card.

  • Plan gratuit — 3 scans / mois, sans carte.
  • Scans passifs contre n'importe quelle URL — pas de vĂ©rification de domaine.
  • OptimisĂ© pour Cursor, Claude Code, Lovable, Bolt, v0, Replit.
  • Coding-agent prompts for code/config findings, plus operator steps for DNS/provider fixes.
Bolt.new security checklist: 23 items before ship · FixVibe