Audit de sécurité par IA : le skill Cloudflare, et ce qu'un cabinet peut en faire
À retenir : Cloudflare a publié sur GitHub un skill (un dossier de consignes en Markdown) qui transforme un agent de code en auditeur de sécurité. Il ne se contente pas de relire le code : il organise une chasse par familles d'attaques, exige des preuves observées, et refuse de donner une gravité à une piste non démontrée. Licence MIT, deux validateurs JavaScript sans dépendance, Node.js requis.
L'actualité a été relayée en français par Korben — source citée en fin de page : Cloudflare lance son skill d'audit de sécurité par IA.
1. Ce que Cloudflare a publié
Cloudflare a ouvert un dépôt public contenant un skill d'audit de sécurité destiné aux agents de code (Claude Code, Codex, OpenCode et autres harnais compatibles). Un skill, dans ce contexte, n'est pas un programme : c'est un ensemble de consignes en Markdown que l'agent charge et suit — la qualité de l'audit vient donc surtout de la qualité de ces consignes.
Le dépôt ne contient pas un seul fichier de règles, mais un fichier par famille d'attaque : injection de prompt et usage d'outils pour les cibles adossées à un LLM, cadrage des requêtes HTTP et protocoles d'authentification, injection côté navigateur, chaîne d'approvisionnement logicielle, cloud et déploiement, isolation entre locataires, épuisement de ressources, applications de bureau et IPC local.
S'y ajoutent un schéma JSON décrivant à quoi doit ressembler un rapport, et deux validateurs écrits en JavaScript sans aucune dépendance — l'un pour le carnet de couverture, l'autre pour les constats. C'est ce qui distingue un audit « outillé » d'une simple conversation avec un modèle.
Cloudflare précise que ce skill est à l'origine de son propre dispositif interne de recherche de vulnérabilités, depuis industrialisé. Le dépôt public en est le point de départ, pas le système complet.
2. Comment ça fonctionne : les six phases
L'agent ne commence pas par « lire le code ». Il commence par comprendre où sont les frontières de confiance, puis il organise la chasse de façon à pouvoir dire ce qui a été couvert — et ce qui ne l'a pas été.
| # | Phase | Ce qui est produit |
|---|---|---|
| 1 | Reconnaissance | Cartographie de l'architecture, des frontières de confiance et des surfaces d'entrée, plus un carnet de couverture (unités à tester) |
| 2 | Chasse guidée par la couverture | Des chasseurs isolés traitent chaque unité du carnet ; des « critiques de couverture » cherchent les trous restants |
| 3 | Validation des candidats | Chaque piste unique est confiée à un vérificateur neuf, qui n'a pas chassé et dont le travail est d'essayer de la réfuter |
| 4 | Sortie structurée | Trois catégories de constats écrites dans un fichier JSON, validées par le schéma et le premier validateur |
| 5 | Vérification indépendante | Des agents neufs revérifient les affirmations finales ; si un constat est remplacé, il repasse chez un autre vérificateur |
| 6 | Rapport neutre | Le rapport final est dérivé des constats vérifiés et du carnet de couverture : rapport principal, détail, et liste des points à valider |
Autre point pratique : les passes successives s'additionnent. Le skill réutilise les carnets et les constats précédents pour cibler les manques, revérifier ce qui a changé, et éviter de vous ressortir les mêmes fausses pistes à chaque fois.
3. Le point clé : trois verdicts, jamais de gravité sans preuve
C'est la partie la plus intéressante pour un professionnel qui n'est pas informaticien : le skill interdit à l'agent de conclure à la légère.
| Verdict | Ce qu'il signifie |
|---|---|
| confirmé | Il existe une trace complète depuis la source jusqu'à un résultat réellement observé. Le constat est démontré. |
| à valider | Un fait précis manque. Le constat est nommé, mais il ne reçoit aucune gravité : on ne vous vend pas un risque non démontré. |
| rejeté | La piste a été réfutée… et elle est conservée, pour que la passe suivante ne la resserve pas. |
Cloudflare décrit ouvertement les dérives qu'il fallait empêcher, celles que produisent les agents laissés sans garde-fou : l'agent qui modifie la source pour que son exploit fonctionne, puis annonce fièrement la faille qu'il vient lui-même de créer ; ou celui qui démontre que exec() exécute des choses et en déduit une vulnérabilité critique. Ces consignes existent précisément pour interdire ce type de raisonnement.
4. Ce qu'un cabinet peut en faire (et quand c'est inutile)
La question n'est pas « est-ce que j'utilise un agent pour coder ? » mais « est-ce que des outils que j'utilise manipulent des données clients ? ». Dès que la réponse est oui, une revue de sécurité devient un sujet professionnel, pas un sujet de geek.
Trois cas où ça vaut le temps passé
- Un outil interne développé (ou « vibe-codé ») au cabinet. Convertisseur, tableau de bord, formulaire PHP de collecte de pièces : avant de le mettre en ligne, l'auditer change complètement le niveau de risque.
- Un outil qui reçoit des fichiers clients. Dès qu'un formulaire accepte un envoi de fichier (relevés, FEC, bulletins), les questions d'exécution de code, de taille, de nom de fichier et d'accès aux données deviennent critiques.
- Un outil qui contient une clé d'API. Clé Stripe, SMTP, service tiers : une clé exposée côté navigateur est récupérable en quelques minutes. Un audit le repère vite.
Trois cas où c'est inutile
- Un site statique sans code serveur ni donnée personnelle : il n'y a pas grand-chose à auditer.
- Un logiciel du marché. Le skill audite votre code, pas celui de votre éditeur.
- Un besoin de conformité ou de garantie. Un audit assisté par IA ne remplace ni un prestataire d'audit, ni une attestation, ni votre responsabilité.
Dans un cabinet, l'usage le plus réaliste est donc interne et préventif : faire passer la revue avant la mise en ligne, puis faire relire par un humain les constats « confirmés » et « à valider ».
5. Les limites à connaître avant de s'enthousiasmer
- Le bac à sable est obligatoire, et il n'est pas fourni. Le skill refuse d'exécuter le code audité sans un isolement imposé par le système (réseau coupé, cible en lecture seule, limites de CPU et de mémoire). Sans lui, les pistes finissent en « à valider » : l'audit reste théorique.
- Une passe ne suffit pas. Du côté de Cloudflare, une seule passe trouve environ la moitié des failles. Il faut relancer, parfois plusieurs fois.
- Le temps ne se compare pas. Chez Cloudflare, un dépôt d'environ 30 000 lignes demande 3 à 4 heures avec un dispositif interne industrialisé. En local, comptez beaucoup plus.
- L'indépendance du vérificateur est demandée… mais non contrôlée. Elle figure dans les consignes ; c'est l'orchestrateur de Cloudflare, non publié, qui la garantissait. Ailleurs, c'est le modèle de votre agent qui suit la consigne — ou pas.
- Ce n'est pas un test d'intrusion. L'audit porte sur du code source lu et exécuté en isolation, pas sur votre serveur en production, ni sur votre configuration d'hébergement.
- Et cela n'a rien à voir avec le secret professionnel. Un code sécurisé ne rend pas licite l'usage que vous faites des données : les deux sujets sont indépendants (voir nos ressources en bas de page).
6. L'installer et lancer une première passe
Prérequis : Node.js (pour les deux validateurs) et un agent de code capable de piloter des sous-agents en parallèle. Une seule commande installe le skill :
npx skills add https://github.com/cloudflare/security-audit-skill --skill security-audit
Ajoutez --global pour une installation au niveau utilisateur, disponible dans tous vos dépôts :
npx skills add https://github.com/cloudflare/security-audit-skill \ --skill security-audit --global
Ensuite : ouvrez votre agent dans le dépôt à auditer, et demandez simplement un audit de sécurité — le skill se déclenche tout seul. Par défaut, les rapports sont écrits dans un dossier ~/security-audit-skill, en dehors du dépôt audité : c'est volontaire, pour ne pas polluer le code. Le dépôt est disponible sur GitHub sous licence MIT.
SKILL.md fourni et assurez-vous que votre environnement sait isoler l'exécution. C'est la condition pour obtenir des constats « confirmés » plutôt qu'une pile de « à valider ».7. Le réflexe au cabinet : auditer avant d'exposer
Ce skill ne changera pas votre pratique comptable, mais il installe un réflexe utile : tout outil qui traite des données clients passe par une revue avant d'être exposé sur Internet. Cinq questions à se poser, dans l'ordre :
- L'outil est-il accessible publiquement (même en lecture) ?
- Reçoit-il des fichiers ? Sous quelle forme, quelle taille, avec quel contrôle ?
- Contient-il des identifiants (clé d'API, mot de passe, jeton) — et côté serveur uniquement ?
- Que se passe-t-il si un visiteur détourne les paramètres envoyés ?
- Les données personnelles sont-elles limitées au strict nécessaire, et conservées le moins longtemps possible ?
Un audit outillé répond proprement aux trois premières. Les deux dernières relèvent de votre organisation et de vos obligations professionnelles — c'est là que votre jugement reste irremplaçable.
8. Questions fréquentes
Est-ce que ça remplace un audit de sécurité professionnel ?
Non. C'est une aide à la revue de code. Cloudflare indique lui-même qu'une passe ne couvre qu'environ la moitié des failles : pour un enjeu critique (outil exposé avec des données clients), la revue humaine ou un prestataire reste nécessaire.
Faut-il savoir coder ?
Pas pour lancer l'audit, mais il faut un agent de code, Node.js, et un environnement d'exécution isolé. Autrement dit : c'est à la portée d'un cabinet qui a déjà l'habitude de faire coder des petits outils par un agent.
Peut-on auditer directement un site en ligne ?
Non : l'audit porte sur du code source, sur une copie locale en lecture seule. On audite donc les fichiers avant la mise en ligne.
Combien de temps ?
3 à 4 heures pour un dépôt d'environ 30 000 lignes chez Cloudflare avec leur dispositif interne ; sensiblement plus en local, et sur plusieurs passes.
9. Sources et crédits
- Korben — Cloudflare lance son skill d'audit de sécurité par IA (article qui a fait connaître le dépôt en français ; c'est de là que viennent notamment le rappel des six phases et les ordres de grandeur de durée).
- Dépôt officiel — github.com/cloudflare/security-audit-skill (licence MIT) : liste des fichiers, schéma de rapport, validateurs.
- Cloudflare — Build your own vulnerability harness (article d'origine sur le dispositif interne).