Audit de sécurité d’un extrait de code selon l’OWASP
Passez un extrait de code au crible de l’OWASP Top 10 : failles classées par sévérité, scénario d’abus, code corrigé et tests pour vérifier que la faille ne revient pas. Conçu pour ChatGPT, Claude, Gemini et Microsoft Copilot. Il comprend 4 variables personnalisables et vous pouvez le copier gratuitement en un clic.
Avancé · Code · En attente de relecture éditoriale
Prompt
Agis comme ingénieur en sécurité applicative spécialisé dans la revue de code sécurisé et l'OWASP Top 10.
Contexte :
- Langage et framework : {{langage}}
- Rôle du code et environnement d'exécution : {{contexte}}
- Exposition : {{exposition}}
- Code à analyser :
```
{{code}}
```
Livrables :
1. Synthèse en 3 lignes : niveau de risque global et constat le plus urgent.
2. Tableau des constats : ID, ligne ou extrait concerné, catégorie OWASP Top 10 et CWE si pertinent, sévérité (critique, élevée, moyenne, faible) justifiée par l'exposition, et niveau de confiance.
3. Pour chaque constat : pourquoi c'est vulnérable et un scénario d'abus décrit de façon conceptuelle, sans charge d'exploitation prête à l'emploi.
4. Le code corrigé complet, avec les défenses idiomatiques de {{langage}} (requêtes paramétrées, encodage selon le contexte, validation par liste blanche, contrôle d'accès côté serveur, gestion sûre des secrets).
5. Des tests automatisés prouvant que la correction fonctionne, y compris avec des entrées malveillantes typiques.
6. Des mesures de défense en profondeur hors du code (en-têtes, moindre privilège, journalisation et alertes).
Contraintes :
- Ne signale pas une faille sans pouvoir la justifier ; si cela dépend de code que je n'ai pas fourni, indique [À COMPLÉTER : confirmer] et précise quoi vérifier.
- Signale aussi ce qui est bien fait, pour ne pas le casser pendant la correction.
- S'il manque un contexte clé (authentification, origine des données), pose-moi la question d'abord.
- Cette revue reste indicative : pour un système en production avec des données sensibles, recommande un audit ou un test d'intrusion professionnel.
Format : synthèse, tableau, détail par constat, code corrigé et tests.Comment l'utiliser
Collez la fonction ou l’endpoint complet, pas seulement la ligne suspecte, et expliquez d’où viennent les données d’entrée. Corrigez d’abord les constats critiques et lancez les tests proposés avant de fusionner.
Exemple d'utilisation
Langage : PHP 8 sans framework · Contexte : endpoint qui recherche des commandes par e-mail client · Exposition : Internet public · Code : requête SQL construite en concaténant $_GET.
Exemple de résultat
1. Synthèse
Risque critique. L’id est concaténé dans le SQL (injection) et rien ne vérifie que la facture appartient à l’utilisateur (IDOR). Les deux sont exploitables depuis Internet.
2. Constats
| ID | Extrait | Catégorie | Gravité | Confiance |
|---|---|---|---|---|
| F1 | '... WHERE id = ' + req.params.id | A03 Injection · CWE-89 | Critique | Haute |
| F2 | Aucun filtre par utilisateur | A01 Contrôle d’accès · CWE-639 | Haute | Haute |
| F3 | SELECT * | A01 · exposition de données | Moyenne | Moyenne |
| F4 | Promesse sans catch | A09 · erreurs non gérées | Basse | Haute |
4. Code corrigé
app.get('/factures/:id', requireAuth, async (req, res, next) => {
// Liste blanche : entiers positifs uniquement
if (!/^[1-9]\d{0,9}$/.test(req.params.id)) {
return res.status(400).json({ error: 'id_invalide' });
}
try {
// Requête paramétrée (syntaxe node-postgres : [À COMPLÉTER : confirmer le driver])
const { rows } = await db.query(
'SELECT id, numero, date_emission, total, statut FROM factures WHERE id = $1 AND utilisateur_id = $2',
[req.params.id, req.user.id],
);
// 404 qu’elle soit absente ou à quelqu’un d’autre : ne révèle pas quels ids existent
if (rows.length === 0) return res.status(404).json({ error: 'introuvable' });
return res.json(rows[0]);
} catch (err) {
return next(err);
}
});
Les colonnes sont un exemple : limitez-les à ce que le client doit réellement voir. Cette revue reste indicative ; avant une mise en production avec des données de facturation, prévoyez un audit professionnel…
Informations clés
- Catégorie
- Programmation et développement · Débogage
- Type de résultat
- Code
- Niveau
- Avancé
- Conçu pour
- ChatGPT, Claude, Gemini et Microsoft Copilot
- Vérifié sur
- En attente de vérification éditoriale
- Variables
- Langage et framework, Rôle et exécution, Exposition et Code
- Langue
- Français
- Prix
- Gratuit, sans inscription
- Mis à jour
- 07/11/2026
Questions fréquentes
L’IA peut-elle remplacer un outil SAST ou un test d’intrusion ?
Non. Elle aide pour une première passe et pour comprendre les failles, mais elle peut en manquer ou produire des faux positifs. Combinez-la avec l’analyse statique, une revue humaine et, pour les systèmes critiques, un pentest professionnel.
Puis-je coller mon code dans un chatbot sans risque ?
Retirez d’abord clés, mots de passe, jetons et données personnelles, et vérifiez la politique de votre entreprise sur les outils d’IA. Pour du code confidentiel, utilisez une offre entreprise avec garanties de confidentialité.
À quoi sert ce prompt ?
Passez un extrait de code au crible de l’OWASP Top 10 : failles classées par sévérité, scénario d’abus, code corrigé et tests pour vérifier que la faille ne revient pas.
Avec quels outils d'IA fonctionne-t-il ?
Il est conçu pour ChatGPT, Claude, Gemini et Microsoft Copilot. Nous ne l'avons pas encore vérifié sur ces outils ; les résultats peuvent donc varier de l'un à l'autre.
Comment personnaliser le prompt ?
Cliquez sur « Personnaliser » et remplissez les variables (Langage et framework, Rôle et exécution, Exposition et Code). Le texte se met à jour instantanément et vous pouvez ensuite le copier en un clic. Les valeurs sont stockées uniquement dans votre navigateur.
Faut-il de l'expérience pour l'utiliser ?
Il est de niveau avancé : il s'adresse aux personnes expérimentées dans le domaine, capables d'évaluer et d'ajuster le résultat.
Ce prompt est-il gratuit ?
Oui. Tous les prompts de HomeCasa Prompts sont gratuits, sans inscription ni abonnement. Vous pouvez aussi les utiliser dans des projets professionnels.
Puis-je me fier au résultat de l'IA ?
Considérez-le comme un brouillon de qualité : vérifiez toujours les données, les chiffres et les affirmations importantes avant de publier ou de prendre des décisions.