Aller au contenu principal
Nicolas Cousin Tech SolutionsNicolas Cousin Tech Solutions
Module 5 sur 10

Le piège du faux positif

Un exemple concret

Reprenons la liste du module 3. L'agent signale une CVE critique sur un paquet présent dans pnpm-lock.yaml. En creusant, on découvre que ce paquet n'est en réalité qu'une dépendance transitive d'un outil de build (un bundler, un linter) — il n'est jamais importé ni exécuté par le code applicatif, et encore moins en production.

L'agent n'a pas menti : la CVE existe, le paquet est bien présent. Mais sa conclusion implicite — "ce projet est exposé" — est fausse.

Pourquoi c'est un vrai piège

Ce type de faux positif est particulièrement trompeur parce qu'il a l'air sérieux : sévérité "critical", paquet bien réel, CVE documentée. Rien à première vue ne le distingue d'un vrai problème urgent.

Le coût n'est pas nul pour autant :

  • Du temps perdu sur un correctif qui ne change rien au risque réel.
  • Une vraie urgence retardée pendant qu'on traite le faux positif.
  • De la confiance érodée dans l'agent, si ça se reproduit trop souvent sans méthode pour le repérer.

Ce qu'il faut en retenir

La présence d'un paquet vulnérable dans le lockfile n'est qu'un signal de départ, pas une conclusion. Reste à savoir si ce code est réellement exécuté, dans un contexte qui nous expose — c'est ce que le module suivant apprend à vérifier, méthodiquement.

Vérifiez votre compréhension

Pourquoi un package peut-il apparaître dans un lockfile sans jamais être réellement exécuté ?

Pourquoi un faux positif non détecté est-il coûteux, même s'il finit par être écarté ?