Code écrit avec Cursor : comment vérifier sa sécurité
Avec Cursor, vous acceptez des dizaines de modifications par heure. Personne ne relit chaque ligne, et c’est normal. Le problème, c’est que l’IA reproduit les motifs qu’elle a vus : requêtes SQL construites par concaténation, secrets écrits en dur, paquets installés dans une version ancienne.
La solution n’est pas de ralentir, mais d’ajouter un contrôle automatique : une analyse qui relit tout le projet selon OWASP et CWE à chaque étape importante, et vous dit quoi corriger en premier.
Dix analyses offertes chaque mois, sans carte bancaire. Premier rapport en quelques minutes.
Analyser mon application gratuitementLes failles les plus fréquentes
Secrets écrits en dur
Une clé collée dans le chat pour « tester vite » se retrouve dans un fichier, puis dans l’historique Git. Elle reste exploitable même après suppression.
Injections SQL et de commandes
Requête construite avec une chaîne de caractères, exec() avec une donnée utilisateur : des erreurs classiques que l’IA reproduit volontiers.
Dépendances anciennes ou vulnérables
Les modèles proposent les versions qu’ils connaissent, parfois vieilles de plusieurs années et touchées par des CVE publiées.
Mots de passe mal protégés
Hachage MD5 ou SHA-1, cookies de session sans HttpOnly ni Secure : des détails qui comptent le jour d’une fuite.
Ce que Citadel vérifie (24 contrôles actifs)
Analyse du code, des dépendances et des secrets selon OWASP et CWE. Chaque faille arrive avec son explication et le prompt de correction à coller dans votre assistant.
- Version de Next.js vulnérable au contournement du middleware (CVE-2025-29927) A06 · CVE
- Secret exposé dans une variable NEXT_PUBLIC_ CWE-200 · A02
- dangerouslySetInnerHTML alimenté par une donnée externe CWE-79 · A03
- Redirection construite à partir des paramètres de l’URL CWE-601 · A01
- images.remotePatterns ouvert à tous les domaines CWE-918 · A10
- Source maps publiées en production CWE-540 · A05
- child_process.exec ou spawn avec une entrée utilisateur CWE-78 · A03
- eval, new Function ou vm sur des données externes CWE-95 · A03
- Chemin de fichier construit depuis la requête (path traversal) CWE-22 · A01
- JWT vérifié sans liste d’algorithmes ou avec un secret faible CWE-347 · API2
- Cookies de session sans HttpOnly, Secure ou SameSite CWE-1004 · CWE-614
- CORS : origine * combinée aux cookies d’authentification CWE-942 · A05
- Secrets dans le code et les fichiers de configuration (plus de 100 types de clés) CWE-798 · A07
- Dépendances npm et Composer avec CVE ou avis GHSA publiés A06 · CVSS
- Mots de passe hachés en MD5, SHA-1 ou sans sel CWE-916 · A02
- L’adresse http:// redirige vers https:// CWE-319 · A02
- HSTS présent et de durée suffisante CWE-319 · A05
- Politique CSP présente, sans unsafe-inline ni unsafe-eval CWE-693 · A05
- Protection contre l’intégration dans une autre page (clickjacking) CWE-1021 · A05
- Cookies Secure, HttpOnly et SameSite CWE-614 · CWE-1004
- CORS ouvert à tous les sites avec les cookies CWE-942 · A05
- En-têtes nosniff et Referrer-Policy, version du serveur masquée CWE-693 · CWE-200
- Formulaires envoyés en clair, ou mot de passe passé dans l’adresse CWE-319 · CWE-598
- Formulaires sans jeton anti-CSRF, ou envoyés à un autre domaine CWE-352 · CWE-201
Questions fréquentes
Cursor vérifie-t-il la sécurité de mon code ?
Il peut le faire si vous le lui demandez, mais de façon ponctuelle et non systématique. Citadel applique les mêmes contrôles déterministes à tout le projet, à chaque analyse : le même code donne toujours le même résultat.
Mon code est-il conservé ?
Non. Il est analysé dans un conteneur isolé, sans accès à Internet, puis supprimé dès la fin de l’analyse. Seuls les résultats sont conservés, secrets masqués.
Combien ça coûte ?
L’offre Gratuite comprend dix analyses par mois, sans carte bancaire. Les offres payantes ajoutent Citadel IA, l’analyse à chaque push et le travail en équipe.
Les autres guides
Sécurité du vibe coding : la checklist avant de mettre votre app en ligne