[{"data":1,"prerenderedAt":1202},["ShallowReactive",2],{"blog-fr-vibe-coding-security-scanners-compared":3,"blog-index-fr":959},{"id":4,"title":5,"body":6,"category":912,"cover":913,"coverAlt":914,"description":915,"draft":916,"extension":917,"faq":918,"image":937,"keywords":938,"meta":947,"navigation":948,"ogTitle":949,"path":950,"published":951,"seo":952,"stem":953,"tldr":954,"updated":951,"__hash__":958},"blog_fr\u002Fblog\u002Fvibe-coding-security-scanners-compared.md","Scanners de sécurité vibe coding comparés, le nôtre compris",{"type":7,"value":8,"toc":896},"minimark",[9,13,16,24,37,42,45,51,63,69,77,83,87,90,276,279,282,286,289,420,423,427,430,433,444,451,466,471,474,477,480,483,491,495,498,501,509,515,519,522,706,714,717,720,731,735,738,759,762,766,769,784,787,807,810,814,817,854,858,881],[10,11,12],"p",{},"Vous avez tapé « meilleur scanner de sécurité vibe coding » dans un moteur, et le\npremier comparatif revenu avait été écrit par l'un des scanners. La mention était\nlà, sur une ligne sous le tableau.",[10,14,15],{},"Reeve est l'un des dix outils ci-dessous, donc cette page a le même problème.\nReeve est un scanner de sécurité gratuit qui lit une URL en direct en une\nvingtaine de secondes sans compte, et un abonnement payant qui continue à\nsurveiller l'application ensuite et garde une copie vérifiée de sa base de\ndonnées. Ce que nous pouvons faire de ce conflit, c'est montrer le travail.\nChaque ligne a été lue sur le site du vendeur le 7 septembre 2026, chaque prix\nest imprimé y compris le nôtre, rien ici n'est un placement payé, et une section\nvers la fin nomme les trois tâches de cette page que Reeve ne fait pas du tout.",[10,17,18,19,23],{},"Voici ce que les comparatifs de fabricants laissent de côté. ",[20,21,22],"strong",{},"La plupart de ces\noutils lisent la même surface."," Ils chargent votre application en direct,\nrécupèrent le JavaScript qu'elle envoie au navigateur, lisent les en-têtes venus\navec, posent à votre base de données une question que n'importe quel inconnu\npourrait poser, et notent ce qui a répondu. Le scan est la partie qu'ils ont en\ncommun. Trois questions les séparent :",[25,26,27,31,34],"ol",{},[28,29,30],"li",{},"Distingue-t-il une clé qui a sa place dans votre application d'une qui ne l'a pas ?",[28,32,33],{},"Le dit-il quand une vérification n'a obtenu aucune réponse ?",[28,35,36],{},"Se passe-t-il quelque chose le jour où vos données ont vraiment disparu ?",[38,39,41],"h2",{"id":40},"quel-est-le-meilleur-scanner-de-sécurité-vibe-coding","Quel est le meilleur scanner de sécurité vibe coding ?",[10,43,44],{},"Celui qui sait lire la surface où se trouve votre problème. Cette question trie\nla liste plus vite que n'importe quelle liste de fonctions, et elle partage dix\noutils en trois groupes.",[10,46,47,50],{},[20,48,49],{},"Les outils à qui vous donnez une URL."," SafeToShip, LaunchGuard, Vibe App\nScanner, VibeEval, SupaExplorer et Reeve. Vous collez une adresse, ils chargent\nvotre application comme le ferait un visiteur, et un rapport revient en une\nminute ou deux. Rien à installer, aucun compte à connecter, aucun accès à quoi\nque ce soit qui vous appartient.",[10,52,53,56,57,62],{},[20,54,55],{},"Les outils à qui vous donnez votre code."," CheckVibe lit une URL en direct et\nse connecte aussi à un dépôt GitHub si vous le laissez faire. Lire la source\nrépond à des questions qu'un scan d'URL ne peut pas poser, et cela vient avec son\npropre angle mort, d'où l'intérêt de\n",[58,59,61],"a",{"href":60},"\u002Fblog\u002Fvibe-coding-security-scanner","ce qu'un scan d'URL manque"," avant de payer\npour l'un ou pour l'autre.",[10,64,65,68],{},[20,66,67],{},"Les outils à qui vous donnez votre compte Supabase."," Le Security Advisor de\nSupabase lui-même vit dans votre tableau de bord et lit la configuration du\nprojet. Defencecore demande un accès en lecture seule aux journaux d'un projet\npuis les surveille. Supabomb est un outil en ligne de commande open source écrit\npour des gens dont c'est le métier. Tous les trois atteignent depuis l'intérieur\ndu compte des choses que rien de posté hors de votre application ne peut voir.",[10,70,71,72,76],{},"Si vous êtes sur Supabase et n'avez jamais ouvert le Security Advisor, ouvrez\ncelui-là avant de payer qui que ce soit sur cette page. Il est gratuit, il tourne\ntout seul, et il écrit au propriétaire du projet quand une table apparaît avec la\nRow Level Security éteinte. Ce n'est pas non plus un concurrent de ce qui est ici :\nil lit votre configuration, là où un scan lit ce que votre configuration fait aux\ninconnus, et\n",[58,73,75],{"href":74},"\u002Fblog\u002Fsupabase-rls-on-but-table-still-public","ces deux-là divergent"," plus\nsouvent que personne ne l'imagine.",[78,79],"diagram",{"alt":80,"caption":81,"src":82},"Une grille de trois sur trois. Chaque ligne commence par ce qu'on remet à un outil : un globe, une paire de chevrons, une clé. Chaque colonne est une surface qu'il pourrait lire : une fenêtre d'application, du code source, une base de données à côté d'un seau de stockage. Dans chaque ligne une case est allumée et les deux autres sont des contours pointillés, si bien que les cases allumées tombent sur la diagonale.","Ce qu'on remet à chaque type d'outil et ce que cela lui permet de lire. Un outil de cette page achète deux de ces lignes. Aucun n'achète les trois.","\u002Fblog\u002Fvibe-coding-security-scanners-compared\u002Fwhat-you-hand-it-1600x700.png",[38,84,86],{"id":85},"que-lit-vraiment-chaque-scanner","Que lit vraiment chaque scanner ?",[10,88,89],{},"Sept des dix tournent avec une URL et rien d'autre. Les trois autres veulent\nquelque chose qu'il faut se connecter pour remettre, et c'est la colonne à lire\navant toute liste de fonctions. Les deux de droite décident si vous pouvez\nessayer un outil ce matin : cinq scannent sans aucun compte, et quatre de ces\ncinq vous montrent le rapport entier.",[91,92,93,115],"table",{},[94,95,96],"thead",{},[97,98,99,103,106,109,112],"tr",{},[100,101,102],"th",{},"Outil",[100,104,105],{},"Ce qu'il lit",[100,107,108],{},"Ce que vous lui remettez",[100,110,111],{},"Scan sans inscription",[100,113,114],{},"Constats complets gratuits",[116,117,118,136,153,170,186,200,215,229,246,262],"tbody",{},[97,119,120,124,127,130,133],{},[121,122,123],"td",{},"Supabase Security Advisor",[121,125,126],{},"La configuration de votre propre projet",[121,128,129],{},"Votre connexion Supabase",[121,131,132],{},"C'est votre propre compte",[121,134,135],{},"Oui",[97,137,138,141,144,147,150],{},[121,139,140],{},"CheckVibe",[121,142,143],{},"Votre application en direct, et votre dépôt si vous liez",[121,145,146],{},"Une URL, et GitHub si vous voulez",[121,148,149],{},"Non, son bouton est \u002Fsignup",[121,151,152],{},"Non, un plan payant ouvre",[97,154,155,158,161,164,167],{},[121,156,157],{},"Defencecore",[121,159,160],{},"Vos journaux Supabase",[121,162,163],{},"Un accès lecture seule aux journaux d'un projet",[121,165,166],{},"Non, il veut un essai",[121,168,169],{},"Non",[97,171,172,175,178,181,183],{},[121,173,174],{},"LaunchGuard",[121,176,177],{},"Votre application en direct",[121,179,180],{},"Une URL",[121,182,135],{},[121,184,185],{},"Oui, pour ce qu'il scanne",[97,187,188,191,193,195,197],{},[121,189,190],{},"Reeve",[121,192,177],{},[121,194,180],{},[121,196,135],{},[121,198,199],{},"Non, un e-mail d'abord",[97,201,202,205,207,209,212],{},[121,203,204],{},"SafeToShip",[121,206,177],{},[121,208,180],{},[121,210,211],{},"Oui, « no account needed »",[121,213,214],{},"Non, $9 ou un plan",[97,216,217,220,223,225,227],{},[121,218,219],{},"SupaExplorer",[121,221,222],{},"Votre application en direct, ou un projet que vous liez",[121,224,180],{},[121,226,135],{},[121,228,135],{},[97,230,231,234,237,240,243],{},[121,232,233],{},"Supabomb",[121,235,236],{},"Votre projet Supabase, en ligne de commande",[121,238,239],{},"Des identifiants fournis par vous",[121,241,242],{},"Vous l'exécutez vous-même",[121,244,245],{},"Oui, il est open source",[97,247,248,251,254,256,259],{},[121,249,250],{},"Vibe App Scanner",[121,252,253],{},"Votre application en direct, connecté sur le plan le plus haut",[121,255,180],{},[121,257,258],{},"Sa page ne le dit pas",[121,260,261],{},"Non, un scan, en partie",[97,263,264,267,270,272,274],{},[121,265,266],{},"VibeEval",[121,268,269],{},"Votre application en direct, y compris derrière un login",[121,271,180],{},[121,273,166],{},[121,275,169],{},[10,277,278],{},"Chaque ligne a été lue sur les pages de l'outil lui-même le 7 septembre 2026.\nC'est une catégorie jeune et les pages bougent, donc traitez la ligne comme plus\nvieille que le site d'où elle vient.",[10,280,281],{},"C'est à ce tableau que s'arrêtent la plupart des comparatifs, et c'est la partie\nqui sépare le moins ces outils.",[38,283,285],{"id":284},"les-trois-questions-outil-par-outil","Les trois questions, outil par outil",[10,287,288],{},"Reeve est le seul des dix à répondre oui aux trois.",[91,290,291,306],{},[94,292,293],{},[97,294,295,297,300,303],{},[100,296,102],{},[100,298,299],{},"Distingue clé publiable et clé secrète",[100,301,302],{},"Dit quand une vérification n'a pas répondu",[100,304,305],{},"Peut remettre vos données",[116,307,308,321,331,342,352,362,372,383,394,404],{},[97,309,310,312,315,318],{},[121,311,190],{},[121,313,314],{},"Oui, il décode le rôle de la clé",[121,316,317],{},"Oui, il écrit « Vérification impossible »",[121,319,320],{},"Oui, sur abonnement",[97,322,323,325,327,329],{},[121,324,140],{},[121,326,258],{},[121,328,258],{},[121,330,169],{},[97,332,333,335,338,340],{},[121,334,157],{},[121,336,337],{},"Ce n'est pas son rôle",[121,339,258],{},[121,341,169],{},[97,343,344,346,348,350],{},[121,345,174],{},[121,347,258],{},[121,349,258],{},[121,351,169],{},[97,353,354,356,358,360],{},[121,355,204],{},[121,357,258],{},[121,359,258],{},[121,361,169],{},[97,363,364,366,368,370],{},[121,365,219],{},[121,367,258],{},[121,369,258],{},[121,371,169],{},[97,373,374,376,378,381],{},[121,375,123],{},[121,377,337],{},[121,379,380],{},"Sans objet, il est à l'intérieur",[121,382,169],{},[97,384,385,387,390,392],{},[121,386,233],{},[121,388,389],{},"Vous liriez la source",[121,391,389],{},[121,393,169],{},[97,395,396,398,400,402],{},[121,397,250],{},[121,399,258],{},[121,401,258],{},[121,403,169],{},[97,405,406,408,416,418],{},[121,407,266],{},[121,409,410,411,415],{},"A listé une clé ",[412,413,414],"code",{},"pk_live_"," en CRIT",[121,417,258],{},[121,419,169],{},[10,421,422],{},"« Sa page ne le dit pas » veut dire exactement cela. Nous pouvons lire ce que ces\noutils publient sur eux-mêmes ; le rapport que vous recevriez, nous ne pouvons\npas le voir. Les trois sections ci-dessous expliquent chaque colonne et vous\ndonnent un moyen de le vérifier sur votre propre application, en la scannant avec\ndeux de ces outils et en lisant les deux rapports côte à côte.",[38,424,426],{"id":425},"distingue-t-il-vos-clés-sûres-de-vos-clés-dangereuses","Distingue-t-il vos clés sûres de vos clés dangereuses ?",[10,428,429],{},"Reeve le fait, en décodant la clé et en lisant le rôle inscrit dedans. Cette\nseule capacité fait la différence entre un rapport sur lequel vous pouvez agir et\nune liste de quarante choses devant lesquelles vous apprenez à faire défiler.",[10,431,432],{},"Commencez par la raison de tels écarts de décompte. Un nombre de vérifications\nest un chiffre de marketing et non une mesure : CheckVibe annonce plus de cent,\nReeve en exécute neuf et publie à quelle fréquence chacune des neuf se déclenche\nsur 30 998 applications. Une liste plus longue sur la même application est une\nliste plus longue. La cause principale est que certains scanners traitent en\nproblème toute clé trouvée dans votre JavaScript, et certaines de ces clés ont\nleur place là.",[10,434,435,436,438,439,443],{},"Votre clé publiable Supabase a sa place dans votre frontend. Une clé Stripe qui\ncommence par ",[412,437,414],{}," aussi. Les deux voyagent vers chaque visiteur par\nconstruction, parce que la requête qu'elles identifient part du navigateur du\nvisiteur, et aucune des deux n'accorde quoi que ce soit à elle seule.\n",[58,440,442],{"href":441},"\u002Fblog\u002Fwhich-api-keys-are-safe-in-your-frontend","Quelles clés sont sûres dans votre frontend","\nest cette distinction en entier.",[10,445,446,447,450],{},"Le 7 septembre 2026, la page d'accueil de VibeEval listait « Stripe pk_live_\nfound in ",[412,448,449],{},"\u002Fassets\u002Fapp.js"," » parmi cinq constats d'exemple, marqué CRIT. C'est une\nclé publiable, exactement là où Stripe la publie. Nous ne pouvons pas voir les\nrapports que ces outils envoient à leurs vrais clients, donc lisez cela comme une\npage marketing et non comme un verdict sur le produit. C'est un exemple net de ce\nqu'il faut vérifier, et le dommage n'est pas cette ligne fausse. Un scanner qui\nvous donne un constat critique pour avoir fait quelque chose correctement vous\napprend à hausser les épaules au suivant, et le suivant est le vrai constat.",[10,452,453,454,457,458,461,462,465],{},"Une ancienne clé Supabase est un JWT, et sa section du milieu indique\n",[412,455,456],{},"\"role\": \"anon\""," ou ",[412,459,460],{},"\"role\": \"service_role\""," en texte lisible. Reeve lit ce mot.\nUne clé publiable dans votre bundle revient sous un titre disant que vous avez\nfait cela correctement, sans rien vous coûter, et une clé ",[412,463,464],{},"service_role"," dans le\nmême bundle est la pire chose que le scanner sache trouver. Les deux se\nressemblent énormément dans le tableau de bord Supabase, posées côte à côte, et\nc'est ainsi que la mauvaise finit copiée.",[78,467],{"alt":468,"caption":469,"src":470},"Deux panneaux de rapport pour une même application. Celui de gauche a huit lignes, chacune portant une croix rouge, dont une ligne étiquetée pk_live_. Celui de droite a quatre lignes : pk_live_ à côté d'une coche verte, une croix rouge, une croix ambre, et une quatrième ligne dont la marque est une case pointillée vide.","Une application, deux rapports. La ligne qui compte est la clé publiable, et la dernière ligne à droite est une vérification sans réponse, dessinée comme aucune réponse.","\u002Fblog\u002Fvibe-coding-security-scanners-compared\u002Fsame-app-two-reports-1600x760.png",[38,472,33],{"id":473},"le-dit-il-quand-une-vérification-na-obtenu-aucune-réponse",[10,475,476],{},"Reeve le fait, avec ces mots-là. Une vérification se termine de trois façons et\nune seule est une réussite : elle trouve quelque chose, elle reçoit un non clair,\nou elle ne reçoit rien du tout parce que la requête a expiré, l'hôte l'a refusée,\nou la page n'a jamais fini de charger. Cette troisième fin est la case vide à\ndroite de l'image ci-dessus. Elle s'écrit « Vérification impossible » et laisse\nvotre note tranquille.",[10,478,479],{},"C'est la chose la plus discrète de la page et celle qui décide si un rapport vaut\nquelque chose, parce qu'une sonde restée sans réponse ressemble exactement à une\nsonde revenue propre dès que quelqu'un l'a arrondie vers une coche. Vous agiriez\nsur cette coche. Il n'y a rien derrière.",[10,481,482],{},"Nous sommes allés chercher la même promesse sur les neuf autres sites le\n7 septembre 2026 et nous ne l'avons trouvée nulle part. Cela ne prouve pas que\nl'un d'eux arrondisse. C'est une affirmation qu'aucun ne met par écrit, et c'est\ncelle que nous voudrions par écrit avant de croire un rapport vert sur une\napplication à laquelle nous tenons.",[10,484,485,486,490],{},"La même règle gouverne les chiffres que Reeve publie sur tous les autres. Entre\nle 12 et le 14 août 2026, nous avons passé les neuf vérifications sur\n",[58,487,489],{"href":488},"\u002Fresearch\u002Fvibe-coded-app-security-2026","30 998 applications vibe-codées en direct","\nconstruites avec Lovable, Bolt, v0, Cursor, Replit, Windsurf et Base44, publié\nchaque agrégat sous CC BY 4.0 pour que n'importe qui le réutilise, et noté à\nquelle fréquence chaque vérification s'est déclenchée, quelle part\nd'applications elle n'a pas pu atteindre, et comment celles-là ont été comptées.\nUne vérification sans réponse va dans sa propre colonne et non dans la pile\npropre, si bien que rien sur cette page n'est gonflé en comptant le silence comme\nde la sûreté. La page d'accueil de LaunchGuard publie 96 applications testées et\n2,37 millions d'enregistrements exposés. Aucun des huit autres sites que nous\navons lus ne publiait le moindre chiffre.",[38,492,494],{"id":493},"que-se-passe-t-il-le-jour-où-vos-données-ont-disparu","Que se passe-t-il le jour où vos données ont disparu ?",[10,496,497],{},"Rien, chez neuf des dix. Un scanner trouve la porte ouverte. Il ne peut pas vous\ndire qui l'a déjà franchie, et il ne peut pas rendre une table que quelqu'un a\nvidée mardi.",[10,499,500],{},"Reeve Care est le dixième, et combler cet écart est la raison d'être de cette\nentreprise. Il prend des copies de votre base Supabase selon un calendrier, ouvre\nchaque copie et la compte contre ce qui est entré avant que la copie compte comme\nsauvegarde, les garde hors de votre compte Supabase pour qu'un projet suspendu ou\nun accès irrécupérable les laisse là où elles sont, et remplace vos données\ndepuis l'une d'elles quand vous le demandez. Une copie de l'état actuel est prise\nd'abord, avant que quoi que ce soit soit remplacé.",[10,502,503,504,508],{},"Vos fichiers téléversés voyagent avec les lignes dès que vous connectez un accès\nStorage, qui est une seconde clé demandée séparément et la seule que Reeve\ndétienne capable d'écrire, parce que Supabase n'émet aucune clé en lecture seule\npour les fichiers. ",[58,505,507],{"href":506},"\u002Fsupabase-backups","Ce que cela fait exactement"," est dessiné\nsur la page des sauvegardes.",[10,510,511,514],{},[20,512,513],{},"Supabase est la seule chose que Care sache sauvegarder",", donc si vos données\nvivent dans Firebase ou ailleurs, toute cette section ne vous est pas ouverte et\nla moitié qui scanne est ce que Reeve a à vous offrir. Vibe App Scanner et\nSafeToShip vérifient tous deux les règles de sécurité Firebase, ce qui est\nl'équivalent le plus proche sur cette page.",[38,516,518],{"id":517},"quobtenez-vous-pour-un-abonnement-mensuel","Qu'obtenez-vous pour un abonnement mensuel ?",[10,520,521],{},"Chez neuf des dix, plus de scans. Chez Reeve, les scans plus ce qui se passe\naprès que l'un d'eux a trouvé quelque chose.",[523,524,525],"comparison-table",{},[91,526,527,542],{},[94,528,529],{},[97,530,531,533,536,539],{},[100,532],{},[100,534,535],{},"Un abonnement de scan",[100,537,538],{},"Reeve Monitor",[100,540,541],{},"Reeve Care",[116,543,544,557,570,582,594,608,620,631,643,655,666,679,692],{},[97,545,546,549,552,555],{},[121,547,548],{},"Rescans programmés",[121,550,551],{},"Oui, sur les paliers payants",[121,553,554],{},"Toutes les heures",[121,556,554],{},[97,558,559,562,565,568],{},[121,560,561],{},"Vérifications de disponibilité",[121,563,564],{},"CheckVibe, toutes les 60 s",[121,566,567],{},"Toutes les 60 s",[121,569,567],{},[97,571,572,575,578,580],{},[121,573,574],{},"Alerte quand quelque chose change",[121,576,577],{},"Chez certains",[121,579,135],{},[121,581,135],{},[97,583,584,587,590,592],{},[121,585,586],{},"Un rapport mensuel",[121,588,589],{},"Chez aucun que nous ayons lu",[121,591,135],{},[121,593,135],{},[97,595,596,599,602,605],{},[121,597,598],{},"Applications incluses",[121,600,601],{},"Variable",[121,603,604],{},"Trois",[121,606,607],{},"Une, cinq sur Pro",[97,609,610,613,615,617],{},[121,611,612],{},"Une copie de votre base de données",[121,614,169],{},[121,616,169],{},[121,618,619],{},"Quotidienne",[97,621,622,625,627,629],{},[121,623,624],{},"Relue avant de compter",[121,626,169],{},[121,628,169],{},[121,630,135],{},[97,632,633,636,638,640],{},[121,634,635],{},"Points de restauration gardés",[121,637,169],{},[121,639,169],{},[121,641,642],{},"30, 90 sur Pro",[97,644,645,648,650,652],{},[121,646,647],{},"Vos fichiers téléversés",[121,649,169],{},[121,651,169],{},[121,653,654],{},"Avec une clé Storage",[97,656,657,660,662,664],{},[121,658,659],{},"La remise en place est un bouton",[121,661,169],{},[121,663,169],{},[121,665,135],{},[97,667,668,671,674,676],{},[121,669,670],{},"Ce qu'il sait sauvegarder",[121,672,673],{},"Rien",[121,675,673],{},[121,677,678],{},"Supabase seulement",[97,680,681,684,687,690],{},[121,682,683],{},"Essai gratuit",[121,685,686],{},"7 à 14 jours chez certains",[121,688,689],{},"7 jours",[121,691,689],{},[97,693,694,697,700,703],{},[121,695,696],{},"Prix quand nous avons lu",[121,698,699],{},"$24 à $49 par mois",[121,701,702],{},"€12 par mois",[121,704,705],{},"€49 par mois",[10,707,708,709,713],{},"Ces chiffres des autres sont ceux qu'affichaient le 7 septembre 2026 les cinq\nvendeurs qui en publient un : SafeToShip $24, Vibe App Scanner $29 ou $49,\nVibeEval $49 avec un palier équipe à $149, Defencecore $29, et SupaExplorer plus\nbas à $6.75 derrière une bannière de remise. CheckVibe et LaunchGuard ne publient\naucun chiffre. Lisez le prix courant sur la page du vendeur avant d'acheter quoi\nque ce soit, et cela vaut pour ",[58,710,712],{"href":711},"\u002Fpricing","le nôtre",", qui est parfois sous le\nchiffre catalogue d'ici et jamais au-dessus.",[10,715,716],{},"Nos prix sont en euros parce que c'est en euros que nous vous facturons. Les\nchiffres des autres sont en dollars parce que c'est ce que disent leurs pages,\net nous ne les convertissons pas.",[10,718,719],{},"Chaque formule payante ici s'essaie avant de vous facturer. Reeve vous donne sept\njours, Defencecore sept, et VibeEval annonce quatorze sans carte. Les autres ne\nle disent pas sur leurs pages de tarifs.",[10,721,722,723,726,727,730],{},"Deux choses découlent de cette dernière ligne. ",[20,724,725],{},"Reeve Monitor coûte €12 par\nmois"," pour trois applications, sous tous les paliers payants d'ici sauf un\nremisé, et c'est toute la moitié surveillance : rescans toutes les heures, une\nsonde de disponibilité toutes les 60 secondes, des alertes quand quelque chose\nchange, et un rapport mensuel. Et ",[20,728,729],{},"Reeve Care coûte €49 par mois",", dans la\nmême tranche de prix que VibeEval Pro et Vibe App Scanner Pro, tout en étant\nle seul abonnement de la page qui garde en plus une copie vérifiée de votre base\nde données et la remet en place sur demande. Au-dessus, Care Pro à €79 ajoute\ncinq applications, des sauvegardes deux fois par jour et une page de statut\npublique, et Care Max à €139 les prend quatre fois par jour, face au\npalier équipe de VibeEval à $149.",[38,732,734],{"id":733},"là-où-reeve-nest-pas-la-réponse","Là où Reeve n'est pas la réponse",[10,736,737],{},"Trois tâches de cette page que Reeve ne fait pas du tout.",[739,740,741,747,753],"ul",{},[28,742,743,746],{},[20,744,745],{},"Lire votre code source."," CheckVibe le fait si vous connectez GitHub, et les\nscanners de secrets dédiés à ce travail vont plus loin que l'un comme l'autre.\nC'est aussi le seul moyen de trouver une clé partie de votre application il y a\ndes mois et toujours assise dans son historique.",[28,748,749,752],{},[20,750,751],{},"Tester l'application une fois connecté."," VibeEval conduit un vrai navigateur\nà travers les écrans de connexion, Vibe App Scanner fait des scans authentifiés\nsur son plan le plus haut, et le palier payant de LaunchGuard emmène Claude\nCode dans des scénarios d'autorisation. Reeve ne se connecte jamais, n'écrit\njamais et ne télécharge jamais une ligne, ce qui rend sûr de le pointer sur une\napplication en production avec de vrais clients, et ce qui explique aussi qu'un\nbug qui ne se montre qu'à un utilisateur connecté nous reste invisible.",[28,754,755,758],{},[20,756,757],{},"Être ouvert, ou être piloté par votre agent."," Supabomb est open source et\nécrit en Python. Vibe App Scanner publie un serveur MCP, CheckVibe verse ses\nconstats dans Claude ou Cursor, et l'advisor de Supabase est joignable par le\nserveur MCP de Supabase lui-même. Reeve ne publie ni sa source ni un serveur\nMCP.",[10,760,761],{},"Là où Reeve est la réponse : votre application est en ligne, vous voulez savoir\nce qu'elle remet aux inconnus en ce moment sans connecter le moindre compte à\nquoi que ce soit, vous voulez un rapport qui vous dise ce que vous avez fait\ncorrectement aussi clairement que ce qui est ouvert, et vous aimeriez que\nquelqu'un détienne une copie vérifiée de votre base de données le jour où cela\ntourne mal.",[38,763,765],{"id":764},"que-remettez-vous-quand-un-outil-lit-votre-code","Que remettez-vous quand un outil lit votre code ?",[10,767,768],{},"Un accès permanent à tout ce qui est dans le dépôt, ce qui est bien plus vaste\nque l'application.",[10,770,771,772,775,776,779,780,783],{},"Votre dépôt n'est pas votre application. Il contient chaque clé que vous avez un\njour commitée puis retirée, les fichiers de seed et de fixtures avec des données\nclient qui ont l'air vraies, la branche à moitié faite que personne n'a\ndéployée, et les instructions que vous avez écrites pour votre constructeur IA.\nCette dernière surprend les gens. Votre ",[412,773,774],{},"CLAUDE.md",", vos ",[412,777,778],{},".cursorrules",", votre\n",[412,781,782],{},"AGENTS.md",", le long prompt qui décrit comment le produit est censé se comporter :\nc'est votre pensée produit, en texte clair, dans le dépôt. Un scan d'URL voit\nl'application que voient vos visiteurs. Une connexion au dépôt voit tout cela, et\nune seconde entreprise en détient désormais une copie.",[10,785,786],{},"Trois choses à vérifier avant d'en accorder un :",[739,788,789,795,801],{},[28,790,791,794],{},[20,792,793],{},"C'est un accès permanent et non une visite."," Une GitHub App ou une\nautorisation OAuth continue de fonctionner jusqu'à ce que vous alliez la\nrévoquer, donc elle lit aussi ce que vous pousserez le mois prochain. Cherchez\nsi vous pouvez la limiter à un seul dépôt, et trouvez le bouton de révocation\navant d'en avoir besoin.",[28,796,797,800],{},[20,798,799],{},"Leur fuite devient la vôtre."," Tout ce qu'un fournisseur détient sur vous est\nexposé quand le fournisseur l'est. Defencecore fait exactement cet argument\npour lui-même sur sa propre page, et c'est un bon argument : un outil qui ne\nfait que lire peut « never become the incident ».",[28,802,803,806],{},[20,804,805],{},"Un outil qui se connecte peut changer des choses."," Un scanner qui conduit un\nnavigateur à travers votre login fait ce que fait un utilisateur, sur vos\ndonnées réelles. Lisez ce qu'il dit qu'il cliquera et ne cliquera pas.",[10,808,809],{},"C'est un échange et non un avertissement. Un scanner de dépôt trouve la clé que\nvous avez supprimée en avril et rien qui lise votre site en direct ne le fera\njamais, donc si c'est votre question, l'accès est ce que coûte la réponse.",[38,811,813],{"id":812},"lequel-devriez-vous-choisir","Lequel devriez-vous choisir ?",[10,815,816],{},"Cinq situations, et deux d'entre elles ne finissent pas chez nous.",[739,818,819,830,836,842,848],{},[28,820,821,824,825,829],{},[20,822,823],{},"Vous voulez savoir tout de suite et gratuitement ce que votre application\nmontre aux inconnus."," ",[58,826,828],{"href":827},"\u002Fsecurity-scanner","Le scan de Reeve"," ou LaunchGuard. Ni\nl'un ni l'autre ne demande d'inscription, et les deux reviennent en moins d'une\nminute. SafeToShip et SupaExplorer scannent aussi sans compte.",[28,831,832,835],{},[20,833,834],{},"Vous êtes sur Supabase et n'avez jamais ouvert le Security Advisor.","\nCelui-là d'abord, avant tout ce qui porte un prix sur cette page. Il est gratuit\net il lit ce qu'aucun scan de l'extérieur ne peut lire.",[28,837,838,841],{},[20,839,840],{},"Vous voulez faire lire votre code source, ou faire tester l'application une\nfois connecté."," CheckVibe pour le dépôt, VibeEval ou le plan le plus haut de\nVibe App Scanner pour ce qui est derrière le login. Lisez la section ci-dessus\nsur ce que coûte cet accès avant de l'accorder.",[28,843,844,847],{},[20,845,846],{},"Vous voulez l'application surveillée et vous comptez chaque euro."," Reeve\nMonitor, €12 par mois pour trois applications : rescans toutes les heures, une\nsonde de disponibilité toutes les 60 secondes, des alertes et un rapport\nmensuel, et aucune sauvegarde.",[28,849,850,853],{},[20,851,852],{},"Vous avez de vrais clients, et personne qui lancera une restauration sous\npression."," Reeve Care, €49 par mois, c'est-à-dire le scan et la surveillance\net une copie vérifiée de votre base de données qui revient en un bouton. Si vos\ndonnées ne sont pas dans Supabase, la moitié sauvegarde ne vous concerne pas.",[38,855,857],{"id":856},"que-faire-cette-semaine","Que faire cette semaine",[859,860,861],"key-takeaways",{},[739,862,863,866,869,872,875,878],{},[28,864,865],{},"Ouvrez votre Supabase Security Advisor avant de payer qui que ce soit. Il est gratuit, il est déjà dans votre tableau de bord, et il lit des choses qu'aucun scan de l'extérieur n'atteint.",[28,867,868],{},"Passez deux scanners d'URL gratuits sur la même application et mettez les rapports côte à côte. Là où ils divergent, l'un des deux devine.",[28,870,871],{},"Regardez ce que chacun dit de la clé publiable de votre bundle. Un outil qui la marque critique marquera tout comme critique, et vous apprendrez à tout ignorer.",[28,873,874],{},"Lisez les lignes disant qu'une vérification n'a pas pu tourner avant celles disant qu'une est passée. Un rapport sans une telle ligne ne vous dit pas qu'il n'y en avait aucune.",[28,876,877],{},"Avant de connecter un dépôt ou un compte Supabase à quoi que ce soit, vérifiez ce que couvre l'autorisation, si elle se limite à un seul projet, et où se trouve le bouton de révocation.",[28,879,880],{},"Décidez séparément qui détient une copie de votre base de données. Neuf des dix outils ci-dessus s'arrêtent à vous le dire, et les abonnements hauts de simple scan coûtent autant que le seul qui ne s'y arrête pas.",[10,882,883,886,887,890,891,895],{},[58,884,885],{"href":827},"Le scan de sécurité gratuit de Reeve"," lit une URL en direct\nen une vingtaine de secondes sans compte, note ce qu'il a trouvé, et liste ce que\nvous avez fait correctement à côté de ce qui est ouvert. Faire surveiller une\napplication ensuite commence à €12 par mois, et les sauvegardes avec restauration\nen un bouton à €49 ; ",[58,888,889],{"href":711},"les formules sont ici",". Si vous préférez d'abord\npasser votre application en revue vous-même,\n",[58,892,894],{"href":893},"\u002Fchecklist","la checklist de sécurité en 10 minutes"," couvre le même terrain sans\noutil entre les deux.",{"title":897,"searchDepth":898,"depth":898,"links":899},"",3,[900,902,903,904,905,906,907,908,909,910,911],{"id":40,"depth":901,"text":41},2,{"id":85,"depth":901,"text":86},{"id":284,"depth":901,"text":285},{"id":425,"depth":901,"text":426},{"id":473,"depth":901,"text":33},{"id":493,"depth":901,"text":494},{"id":517,"depth":901,"text":518},{"id":733,"depth":901,"text":734},{"id":764,"depth":901,"text":765},{"id":812,"depth":901,"text":813},{"id":856,"depth":901,"text":857},"Bases de la sécurité","\u002Fblog\u002Fvibe-coding-security-scanners-compared\u002Fcover-1200x630.png","Une loupe à gauche envoie des arcs de sonar sur un champ dispersé de fenêtres d'application, chaque arc plus pâle que le précédent.","Le meilleur scanner de sécurité vibe coding tient à trois questions qu'aucune liste de fonctions ne traite. Dix outils comparés, avec les prix.",false,"md",[919,922,925,928,931,934],{"q":920,"a":921},"Quel scanner de sécurité vibe coding est gratuit ?","Plusieurs scannent sans paiement, et ils n'entendent pas la même chose par là. Supabase Security Advisor est gratuit de bout en bout et vit dans le tableau de bord où vous vous connectez déjà. Cinq scannent sans aucun compte : Reeve, LaunchGuard, SupaExplorer, SafeToShip, dont la page de tarifs dit « no account needed », et Supabomb, parce que vous l'exécutez sur votre propre machine. Parmi ces cinq, LaunchGuard, SupaExplorer et Supabomb montrent aussi le rapport entier gratuitement, tandis que Reeve montre la note, le score et les décomptes en une vingtaine de secondes et demande une adresse e-mail avant les constats détaillés, et SafeToShip facture $9 pour ceux-là. CheckVibe vous envoie sur une page d'inscription, et VibeEval et Defencecore placent le rapport derrière un essai.",{"q":923,"a":924},"Combien coûte un scanner de sécurité vibe coding ?","Entre $24 et $49 par mois chez les cinq qui publiaient un chiffre quand nous les avons lus le 7 septembre 2026 : SafeToShip $24, Vibe App Scanner $29 ou $49, VibeEval $49 avec un palier équipe à $149, Defencecore $29, et SupaExplorer plus bas à $6.75 derrière une bannière de remise. Reeve Monitor coûte €12 par mois pour des rescans toutes les heures, des vérifications de disponibilité toutes les 60 secondes, des alertes et un rapport mensuel sur trois applications, ce qui reste sous tous les paliers payants ci-dessus sauf celui qui est remisé. Reeve Care coûte €49, dans la même tranche de prix que les paliers hauts de simple scan, et ajoute des copies quotidiennes de votre base Supabase relues avant de compter, avec restauration en un bouton. Vérifiez chaque chiffre sur la page du vendeur avant d'acheter, la nôtre comprise.",{"q":926,"a":927},"L'un d'eux a-t-il besoin du mot de passe de ma base de données ?","Aucun des scanners d'URL, Reeve compris. Ils lisent votre application depuis l'extérieur, donc il n'y a rien à connecter. Defencecore vous demande d'autoriser un accès en lecture seule aux journaux d'un projet Supabase, ce qui est une permission de compte et non votre mot de passe. Supabase Security Advisor a besoin de votre connexion Supabase parce qu'il fait partie de Supabase. Supabomb est un outil en ligne de commande que vous exécutez vous-même, donc ce qu'il reçoit dépend de vous.",{"q":929,"a":930},"Lesquels détectent les problèmes de RLS Supabase ?","La plupart de cette liste le prétend, et ils trouvent des choses différentes. Un scanner d'URL comme Reeve demande à votre projet si une requête anonyme reçoit des lignes, ce qui est la conséquence, et lit le décompte dans un en-tête de réponse sans rapporter une seule ligne. Supabase Security Advisor lit la configuration et signale les tables dont la Row Level Security est éteinte ou restée sans politique, ce qui est la cause. Les deux divergent plus souvent qu'on ne le croit, donc un advisor propre et un scanner qui trouve des lignes dans cette même table ne se contredisent pas.",{"q":932,"a":933},"Pourquoi un outil annonce 40 problèmes et un autre 2 ?","Parce qu'ils comptent avec des règles différentes. Les outils annoncent de neuf vérifications à plus de cent, et une liste plus longue produit un rapport plus long sur une application identique. La cause principale est que certains scanners traitent en problème toute clé trouvée dans votre JavaScript, y compris les publiables, qui ont leur place là. Reeve décode la clé et lit le rôle inscrit dedans, si bien qu'une clé publiable revient comme quelque chose que vous avez fait correctement et non comme un constat. Regardez ce qu'un outil dit de votre clé publiable Supabase avant de croire son total.",{"q":935,"a":936},"Ce comparatif est-il partial ?","Oui. Reeve est l'un des dix outils du tableau et c'est nous qui le fabriquons, donc lisez la page en le sachant. Ce que nous avons fait pour cela : nommer les trois tâches de cette page que Reeve ne fait pas du tout, vous envoyer vers l'outil gratuit de votre propre tableau de bord Supabase avant tout ce qui est payant, imprimer les prix des autres à côté du nôtre, et publier l'ensemble des données derrière nos vérifications sous licence ouverte pour qu'elles soient auditables. Chaque ligne a été lue sur la page du vendeur le 7 septembre 2026 et aucune n'est liée, donc rien ici n'est un placement payé.","\u002Fblog\u002Fvibe-coding-security-scanners-compared\u002Fcard-800x500.png",[939,940,941,942,943,944,945,946],"meilleur scanner de sécurité vibe coding","comparatif scanners de sécurité vibe coding","alternative à checkvibe","alternative à vibe app scanner","alternative à launchguard","comparatif scanner de sécurité supabase","scanner de sécurité gratuit ou payant","AI app security tools 2026",{},true,"Scanners de sécurité vibe coding comparés","\u002Fblog\u002Fvibe-coding-security-scanners-compared","2026-09-07",{"title":5,"description":915},"blog\u002Fvibe-coding-security-scanners-compared",[955,956,957],"Il n'existe pas un seul meilleur scanner de sécurité vibe coding, parce que la plupart lisent la même surface et se distinguent par ce qu'ils en font. Sept des dix ici tournent avec une URL et rien d'autre.","Trois questions les séparent : est-ce que l'outil distingue une clé qui a sa place dans votre application d'une qui ne l'a pas, est-ce qu'il le dit quand une vérification n'a obtenu aucune réponse, et est-ce que quelque chose remet vos données en place ensuite.","Reeve répond oui aux trois, à €12 par mois pour surveiller une application et €49 pour la sauvegarder, dans la même tranche de prix que les abonnements de simple scan qui ici ne font ni l'un ni l'autre. Nous le fabriquons, donc les trois tâches que Reeve ne fait pas du tout sont nommées vers la fin.","TtqwKd7X-B-6QmzMmkK20BR9Y1wlsWHyLla5eHXML7M",[960,967,973,979,985,991,997,1003,1009,1015,1021,1027,1033,1039,1045,1051,1057,1058,1064,1069,1075,1081,1087,1093,1099,1105,1111,1117,1123,1129,1135,1141,1147,1153,1159,1165,1170,1176,1182,1187,1192,1198],{"path":961,"title":962,"description":963,"published":964,"category":965,"image":966,"draft":916},"\u002Fblog\u002Fsupabase-backup-auth-users","Pourquoi votre dump Supabase ne contient aucun utilisateur","Lancez supabase db dump tout seul et vous obtenez la forme de votre base et aucune de ses lignes, sans le schéma auth où vivent vos utilisateurs.","2026-09-23","Backups","\u002Fblog\u002Fsupabase-backup-auth-users\u002Fcard-800x500.png",{"path":968,"title":969,"description":970,"published":971,"category":912,"image":972,"draft":916},"\u002Fblog\u002Fdomain-and-certificate-expiry","Domaine expiré, site hors ligne : ce qui se passe ensuite","Votre domaine a expiré et votre site est hors ligne. Le compte à rebours qui démarre, pourquoi le certificat est le moindre souci, et comment vérifier les deux.","2026-09-22","\u002Fblog\u002Fdomain-and-certificate-expiry\u002Fcard-800x500.png",{"path":974,"title":975,"description":976,"published":977,"category":912,"image":978,"draft":916},"\u002Fblog\u002Fis-lovable-safe","Lovable est-il sûr ? Ce que 18 554 applications Lovable ont montré","Lovable est-il sûr ? 18 554 applications, neuf vérifications. La plateforme était la plus propre des cinq. Les trouvailles étaient dans les applications.","2026-09-21","\u002Fblog\u002Fis-lovable-safe\u002Fcard-800x500.png",{"path":980,"title":981,"description":982,"published":983,"category":912,"image":984,"draft":916},"\u002Fblog\u002Fvibe-coded-app-security-checklist","La checklist de sécurité du vibe coding, en neuf vérifications","Une checklist de sécurité du vibe coding en neuf points, chacun vérifiable de l’extérieur sur votre appli en ligne, et chacun avec un test d’une ligne.","2026-09-20","\u002Fblog\u002Fvibe-coded-app-security-checklist\u002Fcard-800x500.png",{"path":986,"title":987,"description":988,"published":989,"category":912,"image":990,"draft":916},"\u002Fblog\u002Fstripe-secret-key-in-frontend","Une clé secrète Stripe dans votre frontend peut déplacer de l’argent","Une clé secrète Stripe exposée dans votre frontend peut rembourser, débiter et lire chaque fiche client que vous détenez. Votre clé pk_live_ y a sa place.","2026-09-19","\u002Fblog\u002Fstripe-secret-key-in-frontend\u002Fcard-800x500.png",{"path":992,"title":993,"description":994,"published":995,"category":912,"image":996,"draft":916},"\u002Fblog\u002Fvite-and-next-public-env-vars","Variables d’environnement Vite exposées : le préfixe dit publier","Variables d’environnement Vite exposées : votre appli a fait ce que le préfixe demandait. VITE_ et NEXT_PUBLIC_ veulent dire publier, et l’IA ignorait le prix.","2026-09-18","\u002Fblog\u002Fvite-and-next-public-env-vars\u002Fcard-800x500.png",{"path":998,"title":999,"description":1000,"published":1001,"category":912,"image":1002,"draft":916},"\u002Fblog\u002Fbase44-source-maps","Sécurité Base44 : ce qu’un scan signale, et ce qui dépend de vous","Sécurité Base44 sur 5 438 applis : trois signalements sur presque chacune sont ceux de la plateforme, la source map est le badge Base44, votre part est courte.","2026-09-17","\u002Fblog\u002Fbase44-source-maps\u002Fcard-800x500.png",{"path":1004,"title":1005,"description":1006,"published":1007,"category":912,"image":1008,"draft":916},"\u002Fblog\u002Fis-cursor-ai-safe","Cursor AI est-il sûr ? L’éditeur, le code et l’appli publiée","Cursor AI est-il sûr ? Trois questions dans une recherche : ce que Cursor garde, ce que son code rate, et si l’appli que vous avez publiée est ouverte.","2026-09-16","\u002Fblog\u002Fis-cursor-ai-safe\u002Fcard-800x500.png",{"path":1010,"title":1011,"description":1012,"published":1013,"category":912,"image":1014,"draft":916},"\u002Fblog\u002Fis-replit-safe","Replit est-il sûr ? Ce que 3 042 applications Replit nous ont montré","Replit est-il sûr ? 3 042 applications Replit en ligne, neuf vérifications externes. Les trouvailles étaient dans l’application publiée, pas chez l’hébergeur.","2026-09-15","\u002Fblog\u002Fis-replit-safe\u002Fcard-800x500.png",{"path":1016,"title":1017,"description":1018,"published":1019,"category":965,"image":1020,"draft":916},"\u002Fblog\u002Fsupabase-storage-backup","Supabase storage backup : votre copie de base n'a aucun fichier","Un Supabase storage backup est une tâche à part. Les sauvegardes de la base gardent la liste de vos fichiers et aucun des fichiers, donc chaque upload casse.","2026-09-14","\u002Fblog\u002Fsupabase-storage-backup\u002Fcard-800x500.png",{"path":1022,"title":1023,"description":1024,"published":1025,"category":965,"image":1026,"draft":916},"\u002Fblog\u002Fsupabase-point-in-time-recovery","Point-in-time recovery Supabase : prix et limites","Le point-in-time recovery de Supabase rembobine votre base à la seconde près sur la dernière semaine. $100 par mois en plus de Pro, et rien que la base.","2026-09-13","\u002Fblog\u002Fsupabase-point-in-time-recovery\u002Fcard-800x500.png",{"path":1028,"title":1029,"description":1030,"published":1031,"category":965,"image":1032,"draft":916},"\u002Fblog\u002Fsupabase-project-paused-recover","Projet Supabase en pause ? Vos données sont toujours là","Supabase a mis votre projet en pause après une semaine sans activité. Rien n'est supprimé, Restaurer est à côté du nom, et vous avez un an pour cliquer.","2026-09-12","\u002Fblog\u002Fsupabase-project-paused-recover\u002Fcard-800x500.png",{"path":1034,"title":1035,"description":1036,"published":1037,"category":912,"image":1038,"draft":916},"\u002Fblog\u002Fsafest-ai-app-builder","Quel builder d'app IA est le plus sûr ? 30 998 apps testées","Quel builder d'app IA est le plus sûr ? Nous avons scanné 30 998 apps actives de Lovable, Base44, Replit, v0 et Bolt. Ce n'est pas le builder qui décide.","2026-09-11","\u002Fblog\u002Fsafest-ai-app-builder\u002Fcard-800x500.png",{"path":1040,"title":1041,"description":1042,"published":1043,"category":912,"image":1044,"draft":916},"\u002Fblog\u002Fenable-rls-on-every-supabase-table","Activer Row Level Security sur chaque table Supabase, et le prouver","Activer Row Level Security dans Supabase sans politique ferme la table entièrement. Une politique sans le réglage ne fait rien. Voici le SQL, et le test.","2026-09-10","\u002Fblog\u002Fenable-rls-on-every-supabase-table\u002Fcard-800x500.png",{"path":1046,"title":1047,"description":1048,"published":1049,"category":912,"image":1050,"draft":916},"\u002Fblog\u002Fsupabase-rls-disabled-in-public","Supabase \"RLS disabled in public\" : ce que l'alerte rate","Supabase signale \"RLS disabled in public\" comme une erreur. Elle ne dit rien de la politique de lecture qui laisse votre table tout aussi ouverte.","2026-09-09","\u002Fblog\u002Fsupabase-rls-disabled-in-public\u002Fcard-800x500.png",{"path":1052,"title":1053,"description":1054,"published":1055,"category":912,"image":1056,"draft":916},"\u002Fblog\u002Frotate-supabase-service-role-key","Faire tourner une clé service_role Supabase qui a fuité","Supabase dit de colmater la fuite d'abord. D'autres guides disent de faire tourner la clé tout de suite. Tout dépend d'où votre clé service_role a fuité.","2026-09-08","\u002Fblog\u002Frotate-supabase-service-role-key\u002Fcard-800x500.png",{"path":950,"title":5,"description":915,"published":951,"category":912,"image":937,"draft":916},{"path":1059,"title":1060,"description":1061,"published":1062,"category":912,"image":1063,"draft":916},"\u002Fblog\u002Fsupabase-security-checker","Supabase security checker : les cinq vérifications à faire soi-même","Un Supabase security checker lit votre app publiée plutôt que les réglages de votre projet. Voici les cinq vérifications, et comment faire chacune vous-même.","2026-09-06","\u002Fblog\u002Fsupabase-security-checker\u002Fcard-800x500.png",{"path":60,"title":1065,"description":1066,"published":1067,"category":912,"image":1068,"draft":916},"Scanner de sécurité vibe coding : ce qu’un scan d’URL rate","Un scanner de sécurité vibe coding lit votre app en ligne depuis l’extérieur. Ce qu’il couvre, les quatre choses qu’il ne voit pas, et comment lire le résultat.","2026-09-05","\u002Fblog\u002Fvibe-coding-security-scanner\u002Fcard-800x500.png",{"path":1070,"title":1071,"description":1072,"published":1073,"category":912,"image":1074,"draft":916},"\u002Fblog\u002Fmissing-security-headers","En-têtes de sécurité manquants : quand cela compte","Les en-têtes de sécurité manquants sont notre constat le plus fréquent. Contre quoi ils protègent, et quand ils comptent le moins dans votre rapport.","2026-09-04","\u002Fblog\u002Fmissing-security-headers\u002Fcard-800x500.png",{"path":1076,"title":1077,"description":1078,"published":1079,"category":912,"image":1080,"draft":916},"\u002Fblog\u002Fopenai-api-key-exposed-in-frontend","Votre clé API OpenAI est exposée dans votre frontend. Changez-la.","Une clé API OpenAI exposée dans votre frontend ne peut être liée à aucun domaine. Changez-la aujourd'hui, passez par votre serveur et plafonnez la dépense.","2026-09-03","\u002Fblog\u002Fopenai-api-key-exposed-in-frontend\u002Fcard-800x500.png",{"path":1082,"title":1083,"description":1084,"published":1085,"category":912,"image":1086,"draft":916},"\u002Fblog\u002Fwhat-secrets-leak-from-vibe-coded-apps","Clé API exposée dans le frontend : ce que 30 998 applis livrent","Une clé API exposée dans votre frontend est le plus souvent une clé Google Maps. Nous avons scanné 30 998 applis vibe-codées et compté ce qui fuit vraiment.","2026-09-02","\u002Fblog\u002Fwhat-secrets-leak-from-vibe-coded-apps\u002Fcard-800x500.png",{"path":1088,"title":1089,"description":1090,"published":1091,"category":965,"image":1092,"draft":916},"\u002Fblog\u002Fsupabase-backup-tools-compared","Outils de sauvegarde Supabase comparés, le nôtre compris","Quatre familles d'outil de sauvegarde Supabase, ce que chacun copie vraiment, et quand une GitHub Action gratuite bat le fait de payer, nous compris.","2026-09-01","\u002Fblog\u002Fsupabase-backup-tools-compared\u002Fcard-800x500.png",{"path":1094,"title":1095,"description":1096,"published":1097,"category":912,"image":1098,"draft":916},"\u002Fblog\u002Freplit-secrets-explained","Utiliser les secrets sur Replit, et ce qui est publié quand même","Utiliser les secrets sur Replit : en ajouter un, le relire, corriger les deux causes du undefined. Et les clés que l'outil Secrets ne peut pas protéger.","2026-08-31","\u002Fblog\u002Freplit-secrets-explained\u002Fcard-800x500.png",{"path":1100,"title":1101,"description":1102,"published":1103,"category":965,"image":1104,"draft":916},"\u002Fblog\u002Fback-up-supabase-free-tier","Sauvegardes du plan gratuit Supabase : en faire une sans terminal","Le plan gratuit de Supabase ne fait aucune sauvegarde : la copie vient de vous. Comment la faire depuis le tableau de bord, et ce que le CSV oublie.","2026-08-30","\u002Fblog\u002Fback-up-supabase-free-tier\u002Fcard-800x500.png",{"path":1106,"title":1107,"description":1108,"published":1109,"category":912,"image":1110,"draft":916},"\u002Fblog\u002Fis-supabase-secure","Supabase est-il sûr ? Oui. Votre projet est une autre question","Supabase est-il sûr ? La plateforme est auditée, chiffrée et testée en intrusion. Sa documentation dit où cela s'arrête et où vos réglages commencent.","2026-08-29","\u002Fblog\u002Fis-supabase-secure\u002Fcard-800x500.png",{"path":1112,"title":1113,"description":1114,"published":1115,"category":912,"image":1116,"draft":916},"\u002Fblog\u002Fwhere-to-find-supabase-api-keys","Où trouver vos clés API Supabase : anon, service_role et URL","L'URL du projet, la clé anon et la clé service_role tiennent sur une page du tableau de bord. Voici où elle est, et laquelle des quatre va dans votre app.","2026-08-28","\u002Fblog\u002Fwhere-to-find-supabase-api-keys\u002Fcard-800x500.png",{"path":1118,"title":1119,"description":1120,"published":1121,"category":912,"image":1122,"draft":916},"\u002Fblog\u002Fnew-row-violates-row-level-security-policy","New row violates row-level security policy sur Supabase : et après ?","\"New row violates row-level security policy\" signifie que Supabase a refusé une écriture. Le correctif rapide rouvre la table à tout le monde.","2026-08-27","\u002Fblog\u002Fnew-row-violates-row-level-security-policy\u002Fcard-800x500.png",{"path":1124,"title":1125,"description":1126,"published":1127,"category":912,"image":1128,"draft":916},"\u002Fblog\u002Fcors-wildcard-security-risk","Un joker CORS est-il un risque de sécurité ? Rarement.","Un joker CORS est-il un risque de sécurité ? C'est souvent le réglage par défaut de votre builder, et il ne livre rien que votre serveur ne donnait déjà.","2026-08-26","\u002Fblog\u002Fcors-wildcard-security-risk\u002Fcard-800x500.png",{"path":1130,"title":1131,"description":1132,"published":1133,"category":965,"image":1134,"draft":916},"\u002Fblog\u002Fsupabase-branching-is-not-a-backup","Le branching Supabase n'est pas une sauvegarde de vos données.","Pourquoi le branching Supabase n'est pas une sauvegarde : une branche démarre sans vos données, et un merge ne déplace que le schéma. À quoi il sert vraiment.","2026-08-25","\u002Fblog\u002Fsupabase-branching-is-not-a-backup\u002Fcard-800x500.png",{"path":1136,"title":1137,"description":1138,"published":1139,"category":965,"image":1140,"draft":916},"\u002Fblog\u002Fhow-to-restore-a-supabase-backup","Restaurer une sauvegarde Supabase, et ce qui casse après","Restaurer une sauvegarde Supabase depuis le tableau de bord ou un fichier de dump, ce que la restauration remplace et pourquoi votre app peut rester cassée.","2026-08-24","\u002Fblog\u002Fhow-to-restore-a-supabase-backup\u002Fcard-800x500.png",{"path":1142,"title":1143,"description":1144,"published":1145,"category":912,"image":1146,"draft":916},"\u002Fblog\u002Fsupabase-storage-bucket-public","Votre bucket Supabase Storage est public. Est-ce un problème ?","Un bucket Supabase Storage public signifie que celui qui a l'URL d'un fichier peut l'ouvrir. Il ne signifie pas que quelqu'un peut lister ce qu'il contient.","2026-08-23","\u002Fblog\u002Fsupabase-storage-bucket-public\u002Fcard-800x500.png",{"path":1148,"title":1149,"description":1150,"published":1151,"category":912,"image":1152,"draft":916},"\u002Fblog\u002Fgoogle-api-key-exposed-in-frontend","Une clé API Google dans votre frontend, est-ce un problème ?","Une clé API Google exposée dans votre frontend est la clé que notre scanner trouve le plus souvent, et en général tout va bien. Un réglage gratuit tranche.","2026-08-22","\u002Fblog\u002Fgoogle-api-key-exposed-in-frontend\u002Fcard-800x500.png",{"path":1154,"title":1155,"description":1156,"published":1157,"category":965,"image":1158,"draft":916},"\u002Fblog\u002Fai-agent-deleted-my-database","Un agent IA a supprimé mes données Supabase. Que puis-je récupérer ?","Un agent IA a supprimé des données de votre base. Ce que vous pouvez récupérer était déjà décidé avant, et les prochaines minutes décident du reste.","2026-08-21","\u002Fblog\u002Fai-agent-deleted-my-database\u002Fcard-800x500.png",{"path":1160,"title":1161,"description":1162,"published":1163,"category":912,"image":1164,"draft":916},"\u002Fblog\u002Fcan-anyone-read-your-supabase-database","Qui peut lire votre base Supabase ? Nous avons testé 3 680 apps","N'importe qui peut-il lire votre base de données Supabase sans se connecter ? Nous avons scanné 30 998 apps en ligne créées avec des builders IA.","2026-08-18","\u002Fblog\u002Fcan-anyone-read-your-supabase-database\u002Fcard-800x500.png",{"path":1166,"title":1167,"description":1168,"published":1163,"category":912,"image":1169,"draft":916},"\u002Fblog\u002Fsource-maps-exposed-in-production","Source maps exposées : votre app publie son code original","Une source map exposée laisse n'importe qui lire le code original de votre app, commentaires compris. Le test de 30 secondes, et ce qui compte vraiment.","\u002Fblog\u002Fsource-maps-exposed-in-production\u002Fcard-800x500.png",{"path":1171,"title":1172,"description":1173,"published":1174,"category":912,"image":1175,"draft":916},"\u002Fblog\u002Fsupabase-new-api-keys","Les nouvelles clés API Supabase : laquelle va dans votre app ?","Supabase a remplacé anon et service_role par des clés publiables et secrètes. Laquelle a sa place dans votre app, et laquelle jamais ?","2026-08-12","\u002Fblog\u002Fsupabase-new-api-keys\u002Fcard-800x500.png",{"path":1177,"title":1178,"description":1179,"published":1180,"category":965,"image":1181,"draft":916},"\u002Fblog\u002Fdoes-supabase-back-up-my-database","Supabase sauvegarde-t-il ma base de données ? Cela dépend du plan.","Supabase sauvegarde-t-il votre base de données ? Chaque jour sur les plans payants, jamais sur le gratuit. Comment savoir ce que vous avez vraiment.","2026-08-11","\u002Fblog\u002Fdoes-supabase-back-up-my-database\u002Fcard-800x500.png",{"path":74,"title":1183,"description":1184,"published":1185,"category":912,"image":1186,"draft":916},"Supabase Row Level Security est activé. La table reste publique.","Activer Supabase Row Level Security ne protège pas une table. Ce sont vos politiques, et celle qui a réparé votre app laisse peut-être entrer tout le monde.","2026-08-10","\u002Fblog\u002Fsupabase-rls-on-but-table-still-public\u002Fcard-800x500.png",{"path":1188,"title":1189,"description":1190,"published":1185,"category":965,"image":1191,"draft":916},"\u002Fblog\u002Fversion-history-is-not-a-backup","L'historique des versions n'est pas une sauvegarde de vos données.","Lovable et Bolt tiennent un historique des versions de votre code. Votre base de données est un service à part, et revenir en arrière ne la ramène pas.","\u002Fblog\u002Fversion-history-is-not-a-backup\u002Fcard-800x500.png",{"path":1193,"title":1194,"description":1195,"published":1196,"category":965,"image":1197,"draft":916},"\u002Fblog\u002Fthree-ways-to-back-up-a-supabase-database","Trois façons de sauvegarder une base Supabase, et ce qui manque","Le tableau de bord, pg_dump et un service géré. Ce que chacun enregistre, ce qu'il laisse de côté sans le dire, et lequel survit à la perte du compte.","2026-08-09","\u002Fblog\u002Fthree-ways-to-back-up-a-supabase-database\u002Fcard-800x500.png",{"path":441,"title":1199,"description":1200,"published":1196,"category":912,"image":1201,"draft":916},"Quelles clés API sont sûres côté navigateur, et lesquelles non","Votre clé anon Supabase est faite pour être publique. Votre clé service_role non, et elle ignore toutes les règles que vous posez. Comment les distinguer.","\u002Fblog\u002Fwhich-api-keys-are-safe-in-your-frontend\u002Fcard-800x500.png",1790150953902]