Sauvetage de code Vibe et renforcement de la production
Votre IA l'a construit rapidement.
Je le rends sûr à lancer.
Les outils d'IA permettent à quiconque de lancer une application en un week-end. Les problèmes commencent dès que le prototype cesse d'être un prototype — de vrais utilisateurs, de vraies données et un vrai trafic frappent un code qui n'a été testé que sur le chemin heureux. Cet écart entre « ça fonctionne » et « c'est sûr à exécuter » est exactement ce que je corrige.
Le problème, en cinq étapes
Faites défiler pour le voir se casser — puis être sauvé
1 · L'IA la construit en un week-end
Lovable, Bolt, Cursor, v0, Replit, FlutterFlow — les couches s'empilent rapidement et la démo semble terminée.
2 · De vrais utilisateurs arrivent
De vraies données et un vrai trafic frappent un code qui n'a été testé que sur le chemin heureux.
3 · Les fissures apparaissent
Failles d'authentification. Secrets dans le bundle. Paiements non idempotents. Tables lisibles par tous. Chaque correctif d'IA casse autre chose — le cycle de la vibe.
4 · Je la renforce
Je ré-architecture le cœur fragile, scelle les failles et ajoute l'authentification, les paiements, la sécurité et l'observabilité que l'IA a ignorés — sans réécriture.
5 · Qualité production
Un code qui survit la semaine où il prend de l'ampleur. Vous gardez votre code et votre pile.
Laboratoire de sécurité interactif
Une démo fonctionnelle peut cacher une limite de confiance brisée.
Choisissez un risque, déclenchez un événement synthétique, puis appliquez des mesures de protection et rejouez-le. Voyez pourquoi les paiements, les données et les permissions nécessitent des vérifications indépendantes.
Choisir un scénario
Altération du prix de la commande
Une commande soignée fait toujours confiance à un prix envoyé par le navigateur.
Navigateur → service de tarification
Notes d'implémentation
Autoriser une commande par rapport à un catalogue de confiance. Les valeurs client peuvent exprimer une intention, mais ne peuvent pas fixer l'argent dû. Revérifier les remises et la devise sur le serveur. Cette configuration combine l'altération du prix avec une sélection de produit non prise en charge.
Une page de succès n'est pas une preuve de paiement
L'interface indique « payé » avant qu'un événement de paiement fiable n'existe.
URL de retour → magasin de droits
Notes d'implémentation
Une redirection est une navigation, pas une preuve. Résolvez la commande côté serveur et confirmez son propriétaire, son montant, sa devise et son état de paiement. Les méthodes de paiement différé nécessitent des états en attente. Les remboursements et les litiges nécessitent des politiques de droits explicites.
Webhooks forgés et répétés
Un point de terminaison d'événement fait confiance à une charge utile et accorde l'accès deux fois.
Fournisseur de paiement → webhook → enregistrements
Notes d'implémentation
Les événements du fournisseur peuvent être dupliqués ou arriver dans le désordre. Authentifiez la requête brute avant d'analyser la signification commerciale. Un registre d'événements doit survivre à la livraison parallèle ; un drapeau de lecture-puis-écriture est insuffisant. Vérifiez la commande ainsi que l'événement.
Administrateur auto-attribué
Un champ de profil modifiable devient une permission.
Profil → identité de confiance → API protégée
Notes d'implémentation
L'authentification identifie un appelant ; l'autorisation détermine ce qu'il peut faire. Les contrôles cachés ne protègent pas les API. Rejetez les champs de profil privilégiés et évaluez les permissions à la limite de l'action, y compris les tâches en arrière-plan.
Facture d'un autre client
Un identifiant d'enregistrement modifié franchit une limite d'organisation.
Session → locataire → enregistrement
Notes d'implémentation
Utilisez deux comptes ordinaires dans des organisations distinctes. Testez les enregistrements directs, les listes, les exportations et les écritures. N'acceptez jamais un identifiant de locataire comme preuve d'appartenance. Les clients de base de données administratifs contournent les règles et nécessitent des vérifications explicites du serveur.
Registres publics et fichiers privés
Les règles de base de données et les permissions de téléchargement sont des limites distinctes.
Visiteur anonyme → base de données et stockage
Notes d'implémentation
La sécurisation des tables ne sécurise pas le stockage d'objets. Examinez séparément la liste, le téléchargement, le téléversement et l'expiration des URL signées. Un identifiant client public n'est pas un secret d'administrateur ; les politiques larges sont la vulnérabilité dans cette configuration.
Une clé exposée reste dangereuse
Supprimer un secret du navigateur ne révoque pas une copie antérieure.
Bundle public → service privilégié
Notes d'implémentation
Inspectez les actifs construits et l'historique du référentiel. Gardez les clés privilégiées sur le serveur avec le moindre privilège. Supprimer un fichier n'est pas une révocation. Les cartes sources ne sont pas intrinsèquement secrètes : examinez leur contenu plutôt que de prétendre que chaque carte source est une vulnérabilité.
Téléchargements non fiables et contenu rendu
Une étiquette de fichier et un texte formaté sont acceptés sans validation.
Téléchargement → validation serveur → rendu
Notes d'implémentation
La validation du navigateur est une commodité. Validez sur le serveur et traitez les noms de fichiers, les déclarations MIME et le contenu généré comme non fiables. Une fonctionnalité de récupération d'URL nécessite également des restrictions réseau distinctes. Cette configuration n'exécute aucun contenu téléchargé.
Requêtes illimitées et coûts d'IA
Un point de terminaison public n'a ni limites de requêtes ni limites de dépenses.
API publique → budget de charge de travail
Notes d'implémentation
Les limites de taux et les quotas répondent à des questions différentes : à quelle vitesse et combien. Appliquez les contrôles avant les appels de modèle ou les tâches coûteuses. Les déploiements distribués nécessitent des compteurs partagés et une politique de défaillance définie. Ne faites pas confiance à un temps de recharge du navigateur.
Deux achats, un crédit
Deux requêtes parallèles passent toutes deux une vérification de solde non atomique.
API → registre de crédit → exécution
Notes d'implémentation
Une clé d'idempotence ne remplace pas la correction du solde, et une transaction n'identifie pas un achat logique réessayé. Testez les requêtes parallèles à la limite avec un crédit restant. Validez le registre et l'état commercial de manière cohérente.
Un document demande une exportation client
Des instructions non fiables dirigent un outil vers des données sensibles.
Document externe → agent → outil autorisé
Notes d'implémentation
Un filtre d'invite ne peut pas garantir l'autorisation de l'outil. Séparez les instructions fiables du contenu récupéré, limitez les arguments de l'outil et les destinations sortantes, et liez les approbations à l'action exacte. Cette simulation illustre une exportation dans un flux de travail délimité qui nécessite toujours une approbation.
Une version risquée sans signal
Une version contourne les vérifications de dépendance et les échecs d'administrateur passent inaperçus.
Pipeline de publication → exécution → surveillance
Notes d'implémentation
Une découverte de scanner nécessite un contexte et une propriété de remédiation. Une alerte n'est utile que lorsque quelqu'un peut agir dessus. Protégez les journaux des secrets et des données personnelles excessives. La surveillance détecte et soutient la réponse ; elle ne supprime pas automatiquement toutes les vulnérabilités.
Les chiffres derrière le pitch
Ce n'est pas une intuition. C'est mesuré.
Les fondateurs n'échouent pas parce que l'idée était mauvaise — ils échouent parce que la construction s'effondre la semaine où elle prend de l'ampleur. Des études indépendantes en 2025 ont chiffré exactement où le code construit par l'IA se brise.
~45%
du code généré par l'IA a introduit une vulnérabilité OWASP Top 10
Veracode, 2025 (plus de 100 modèles testés)
86%
des échantillons pertinents n'ont pas réussi à se défendre contre le cross-site scripting
Veracode, 2025
Inchangé
la sécurité est restée stable sur plus de 100 modèles — les modèles plus grands et plus récents n'ont pas écrit de code plus sûr
Veracode, 2025
À quelle fréquence le code IA se brise-t-il davantage
Problèmes dans le code écrit par l'IA vs le code écrit par l'homme, par catégorie. Tout ce qui dépasse la ligne pointillée est pire que ce qu'un humain livrerait.
Source : CodeRabbit, « State of AI vs Human Code Generation » (déc. 2025, 470 PR réels)
Part du code IA qui a échoué aux tests de sécurité
Pourcentage d'échantillons qui ont introduit une faille OWASP Top 10, par langage. La ligne pointillée est la moyenne de tout le code.
Source : Veracode, Rapport de sécurité du code GenAI 2025 (plus de 100 modèles testés)
Et ça ne se corrige pas tout seul. Sur plus de 100 modèles de toutes tailles et de toutes générations, Veracode a constaté que les performances de sécurité restaient stables — les modèles plus récents et plus grands écrivent un code plus fonctionnel, pas un code plus sûr. Le jugement qui empêche une application de fuir des données dès le premier jour doit toujours venir d'un ingénieur.
Le diagnostic signature
L'audit de préparation à la production en 10 points
Chaque domaine a ce que je vérifie — et ce qui se casse généralement dans les applications codées par l'IA. Vous obtenez un rapport classé par gravité avec un score de préparation à la production, des preuves par constatation et un plan de correction priorisé.
- 01
Authentification et contrôle d'accès
Se casse : Vérifications manquantes sur les routes protégées ; utilisateurs capables d'agir comme d'autres utilisateurs.
- 02
Sécurité au niveau des lignes et accès aux données
Se casse : Tables laissées lisibles/écrivables par tous ; RLS jamais activé — la fuite de données n°1 du code vibe.
- 03
Secrets et configuration
Se casse : Clés API exposées dans le bundle client ou extractibles de l'application compilée.
- 04
Paiements et webhooks
Se casse : Signatures de webhook non vérifiées, pas d'idempotence, conditions de concurrence — faux événements « payés » et doubles débits.
- 05
Validation des entrées et gestion des erreurs
Se casse : Entrées mal formées, états vides et échecs qui font planter l'application ou corrompent les données.
- 06
Concurrence et échelle
Se casse : Requêtes N+1, index manquants, pas de limitation de débit — ralentit jusqu'à l'arrêt ou tombe en panne.
- 07
Sécurité (OWASP Top 10)
Se casse : Injection, XSS, contrôle d'accès défectueux, dépendances non sécurisées.
- 08
Surface d'IA (OWASP LLM Top 10)
Se casse : Injection d'invite, exfiltration de données, coût de modèle illimité — jailbreaks et factures incontrôlables.
- 09
Observabilité
Se casse : Pas de journalisation, de suivi des erreurs ou d'alertes — vous apprenez que c'est en panne par un utilisateur, pas par un tableau de bord.
- 10
Architecture et santé de la construction
Se casse : L'enchevêtrement du cycle de la vibe — personne ne peut rien changer sans casser autre chose.
De l'audit à la qualité production
Commencez par une évaluation et un plan de correction pratique. Les frais d'audit sont crédités pour votre sauvetage si vous poursuivez.
01
Audit de préparation à la production
Diagnostic complet en 10 points + rapport écrit avec des constatations classées par gravité et un plan de correction.
500 $ – 900 $
2–3 jours
Crédité pour un sauvetage.
02
Sprint de sauvetage
Corriger les éléments critiques — authentification, paiements, sécurité, les bloqueurs.
2 500 $ – 5 000 $
1–2 semaines
03
Renforcement complet
Ré-architecture le cœur fragile ; ajoute la mise à l'échelle, les tests et l'observabilité. Qualité production.
À partir de 6 000 $
3–5 semaines
04
Plan de maintenance
Surveillance continue, corrections et travail sur les fonctionnalités sécurisées pour qu'il reste sain.
1 500 $ – 3 000 $/mois
Continu
Questions fréquentes
Ne puis-je pas simplement demander à l'IA de le corriger ?
C'est le cycle de la vibe — chaque correctif introduit un nouveau bug car rien ne révise l'ensemble du système. La production nécessite un jugement que le modèle n'a pas.
N'est-il pas moins cher de reconstruire ?
Généralement non. L'audit montre exactement ce qui est récupérable, vous corrigez donc ce qui est fragile et gardez ce qui fonctionne — bien moins cher qu'une réécriture.
Allez-vous me lier à votre pile ?
Non. Vous conservez la pleine propriété de votre code et de vos outils. Je rends votre pile prête pour la production.
Comment savoir si c'est réellement cassé ?
L'évaluation teste les flux convenus et enregistre les preuves. L'appel initial définit la portée de ce travail ; ce n'est pas un test d'intrusion en direct.
Faites-le auditer avant de le mettre à l'échelle
Si vous avez codé quelque chose par l'IA et que vous êtes sur le point de le lancer, commencez par un audit de préparation à la production à prix fixe. Il est crédité pour votre sauvetage. Le premier appel nous aide à convenir de la portée et de l'accès nécessaires pour un examen basé sur des preuves.