Passer au contenu principal

Documentation Index

Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

Use this file to discover all available pages before exploring further.

Le plugin de conseils en sécurité fait en sorte que Claude examine ses propres modifications de code à la recherche de vulnérabilités courantes pendant qu’il travaille et corrige ce qu’il trouve dans la même session. Le plugin détecte des problèmes tels que l’injection, la désérialisation non sécurisée et les API DOM non sécurisées avant que le code n’atteigne une demande de tirage, réduisant ainsi la charge de révision de sécurité qui incombe aux examinateurs humains en aval. Une fois installé, le plugin s’exécute automatiquement. Il n’y a rien à invoquer et aucune commande séparée à retenir. Le plugin est le compagnon en session de Code Review, qui s’exécute sur les demandes de tirage. Ce plugin réduit ce qui atteint la PR. Code Review attrape ce qui le fait. Pour savoir comment le plugin s’articule avec l’examen à la demande et l’analyse CI, consultez Comment cela s’intègre avec d’autres outils de sécurité.

Conditions préalables

  • Claude Code CLI version 2.1.144 ou ultérieure
  • Python 3.8 ou ultérieur sur votre PATH. Le plugin essaie python3, python et py -3 dans cet ordre

Installer le plugin

Dans une session Claude Code, installez à partir du marketplace officiel Anthropic :
/plugin install security-guidance@claude-plugins-official
Ensuite, activez-le dans la session actuelle :
/reload-plugins
L’installation écrit dans vos paramètres utilisateur, de sorte que le plugin se charge dans chaque nouvelle session locale que vous démarrez sur cette machine. Les sessions qui étaient déjà en cours d’exécution ont besoin de /reload-plugins pour le charger.

Activer dans les sessions cloud et les référentiels partagés

Les plugins à portée utilisateur ne sont pas transférés vers Claude Code sur le web, car ces sessions s’exécutent sur l’infrastructure Anthropic plutôt que sur votre machine. Pour activer le plugin là-bas, ou pour l’activer pour tous ceux qui clonent un référentiel, déclarez-le dans les paramètres vérifiés du projet :
.claude/settings.json
{
  "enabledPlugins": {
    "security-guidance@claude-plugins-official": true
  }
}
Les administrateurs peuvent activer le plugin à l’échelle de l’organisation en définissant enabledPlugins dans les paramètres gérés.

Ce que le plugin vérifie

Le plugin examine le travail de Claude à trois points, chacun à une profondeur différente : Vous pouvez étendre chaque couche en ajoutant vos propres règles. Les vérifications intégrées ne peuvent pas être supprimées individuellement, mais vous pouvez désactiver chaque couche indépendamment.

À chaque modification de fichier

Lorsque Claude écrit dans un fichier, le plugin analyse le nouveau contenu à la recherche de motifs risqués connus. Il s’agit d’une correspondance de motif sans appel de modèle, elle n’ajoute donc aucun coût d’utilisation. Exemples de catégories de motifs :
  • Exécution de code dynamique : eval(, new Function, os.system, child_process.exec
  • Désérialisation non sécurisée : pickle
  • Injection DOM : dangerouslySetInnerHTML, .innerHTML =, document.write
  • Fichiers de flux de travail : modifications sous .github/workflows/, qui peuvent accorder des autorisations au niveau du référentiel
La vérification s’exécute après que la modification soit appliquée et ajoute l’avertissement au contexte de Claude pour l’étape suivante. Chaque avertissement se déclenche une fois par motif par fichier par session, de sorte que les correspondances répétées dans le même fichier ne saturent pas la conversation. Vous pouvez ajouter vos propres motifs à cette couche avec un fichier security-patterns.yaml.

À la fin de chaque tour

Un tour est un cycle de réponse de Claude : vous envoyez un message, Claude travaille et répond, et le tour se termine. Après chaque tour, le plugin calcule un diff git de tout ce qui a changé dans l’arborescence de travail pendant le tour, y compris les modifications des outils d’édition de Claude, des commandes Bash et des sous-agents, et l’envoie à un examen Claude séparé axé sur la sécurité. L’examen s’exécute en arrière-plan, de sorte que la réponse de Claude n’est pas retardée. Si l’examen trouve des problèmes, Claude est relancé avec les résultats et les résout en tant que suivi. Cela détecte les problèmes qu’une correspondance de chaîne ne peut pas, tels que :
  • Contournement d’autorisation
  • Références d’objet direct non sécurisées
  • Injection
  • Falsification de requête côté serveur
  • Cryptographie faible
Vous voyez à la fois la conclusion et la résolution de Claude directement dans votre session. L’examen couvre jusqu’à 30 fichiers modifiés par tour et se déclenche au maximum trois fois de suite avant de vous rendre la main.

À chaque commit ou push que Claude effectue

Lorsque Claude exécute git commit ou git push via son outil Bash, le plugin exécute un examen agentique plus approfondi de la modification en arrière-plan. Cet examen lit le code environnant, y compris les appelants, les désinfectants et les fichiers connexes, pour décider si une conclusion est réelle avant de la signaler. Le contexte supplémentaire maintient les faux positifs bas sur les motifs qui semblent dangereux isolément mais qui sont sûrs dans votre base de code. Cette couche ne se déclenche que sur les commits et les pushes que Claude effectue via son outil Bash. Les commits que vous exécutez à partir de votre propre shell, y compris l’échappement shell ! à l’intérieur d’une session, ne sont pas examinés. Les examens de commit et de push sont limités à 20 par heure glissante.

Indépendance et limites de l’examen

Le plugin ne demande pas à la même instance Claude qui a écrit le code de se noter elle-même. La vérification par modification est une correspondance de chaîne déterministe sans modèle impliqué. Les examens de fin de tour et de commit s’exécutent en tant qu’appel Claude séparé avec un contexte frais et une invite axée sur la sécurité : l’examinateur commence par le diff, n’a aucun intérêt dans l’approche originale et est invité uniquement à trouver des problèmes. Aucune des couches ne bloque les écritures ou les commits. Les conclusions parviennent au Claude qui écrit sous forme d’instructions, Claude les résout dans la conversation, et le modèle d’examen peut manquer des problèmes. Traitez le plugin comme une couche de défense en profondeur, pas une solution de sécurité complète. Consultez Comment cela s’intègre avec d’autres outils de sécurité.

Ajouter vos propres règles

Le plugin a deux points d’extension : un fichier de conseils Markdown pour les examens soutenus par le modèle, et un fichier de motifs YAML ou JSON pour la correspondance de chaîne par modification. Les deux sont additifs. Vous pouvez ajouter des vérifications mais ne pouvez pas désactiver les vérifications intégrées à partir de ces fichiers.

Ajouter des conseils pour les examens soutenus par le modèle

Créez .claude/claude-security-guidance.md dans votre projet et décrivez votre modèle de menace et votre liste de contrôle d’examen en langage clair. Les examens soutenus par le modèle le chargent comme contexte supplémentaire aux côtés de la liste de contrôle des vulnérabilités intégrée. L’exemple suivant concerne un service web avec des routes d’administration à accès contrôlé par rôle et une politique de journalisation des données client :
.claude/claude-security-guidance.md
# Conseils en sécurité pour ce référentiel

- Ne pas enregistrer `customer_id` ou `account_number` au niveau INFO ou supérieur.
- Toutes les routes sous `/admin` doivent appeler `require_role("admin")` avant toute lecture de base de données.
- Utilisez `crypto.timingSafeEqual` pour la comparaison de jetons au lieu de `===`.
Ces règles sont des conseils pour l’examinateur, pas des garde-fous déterministes. Le plugin signale les violations comme des conclusions pour que Claude les corrige, mais il ne bloque pas les écritures et ne garantit pas que chaque violation est détectée. Les conseils sont additifs uniquement : une règle qui dit d’ignorer une classe de vulnérabilité ne supprime pas ces conclusions. Pour une application stricte, associez le plugin à un hook qui bloque la modification ou une vérification CI.

Ajouter des motifs personnalisés par modification

Créez .claude/security-patterns.yaml pour ajouter des règles regex ou de sous-chaîne à la vérification de motif par modification. Celles-ci s’exécutent en tant que correspondances de chaîne déterministes aux côtés des motifs intégrés :
.claude/security-patterns.yaml
patterns:
  - rule_name: internal_api_key
    substrings: ["sk_live_", "AKIA"]
    reminder: "Clé API codée en dur. Chargez les identifiants à partir du gestionnaire de secrets."
  - rule_name: tenant_unfiltered_query
    regex: "\\.objects\\.all\\(\\)"
    paths: ["src/tenants/**"]
    reminder: "Le code multi-locataire doit filtrer par org_id."
ChampTypeDescription
rule_namestringIdentifiant affiché dans l’avertissement
reminderstringTexte d’avertissement ajouté au contexte de Claude, limité à 1 KB
regexstringExpression régulière Python mise en correspondance avec le contenu modifié
substringslistSous-chaînes littérales ; fournissez ceci ou regex
pathslistMotifs glob optionnels ; la règle s’applique uniquement aux fichiers correspondants
exclude_pathslistMotifs glob optionnels à ignorer
Le plugin lit également .claude/security-patterns.yml et .claude/security-patterns.json avec le même schéma. JSON fonctionne sur n’importe quelle installation Python. Les formes YAML nécessitent que PyYAML soit importable, ce que le plugin n’installe pas pour vous. Le plugin charge jusqu’à 50 règles personnalisées et ignore les expressions régulières qui semblent sujettes au retour en arrière catastrophique.

Emplacements de recherche des fichiers de règles

Le plugin recherche claude-security-guidance.md et security-patterns.yaml aux mêmes emplacements, indépendamment de la façon dont le plugin a été activé :
PortéeCheminNotes
Utilisateur~/.claude/claude-security-guidance.mdS’applique à chaque projet sur votre machine
Projet.claude/claude-security-guidance.mdVérifié avec le référentiel
Projet local.claude/claude-security-guidance.local.mdIgnoré par Git, pour les remplacements personnels
Le plugin charge tous les emplacements qui existent et les concatène, avec un plafond combiné de 8 KB pour le fichier de conseils. Les administrateurs peuvent distribuer des règles à l’échelle de l’organisation en poussant le fichier à portée utilisateur vers ~/.claude/ via la gestion des appareils. Les mêmes chemins s’appliquent à security-patterns.yaml.

Coût d’utilisation

La vérification de motif par modification n’effectue aucun appel de modèle et n’ajoute aucun coût. Les examens de fin de tour et de commit dépensent chacun une utilisation de modèle supplémentaire qui compte vers votre utilisation comme toute autre demande Claude. L’examen de commit est agentique et peut prendre plusieurs tours de modèle par commit. L’augmentation s’adapte à la fréquence à laquelle Claude modifie les fichiers et effectue des commits dans la session. Les deux examens soutenus par le modèle utilisent Claude Opus 4.7 par défaut. Définissez SECURITY_REVIEW_MODEL pour choisir un modèle différent pour l’examen de fin de tour et SG_AGENTIC_MODEL pour l’examen de commit. Le plugin est disponible sur tous les plans.

Désactiver ou désinstaller

Pour désactiver les couches individuelles tout en gardant le reste, définissez la variable d’environnement correspondante :
VariableEffet
ENABLE_PATTERN_RULES=0Désactiver la vérification de motif par modification
ENABLE_STOP_REVIEW=0Désactiver l’examen diff de fin de tour
ENABLE_COMMIT_REVIEW=0Désactiver l’examen de commit et de push
ENABLE_CODE_SECURITY_REVIEW=0Désactiver tous les examens soutenus par le modèle à la fois
SECURITY_GUIDANCE_DISABLE=1Désactiver le plugin entièrement sans le désinstaller
Pour mettre en pause le plugin dans votre portée utilisateur :
/plugin disable security-guidance@claude-plugins-official
Pour le supprimer de votre portée utilisateur :
/plugin uninstall security-guidance@claude-plugins-official
Si le plugin a été activé via le .claude/settings.json d’un projet, le désactiver à partir de /plugin écrit un remplacement dans votre .claude/settings.local.json plutôt que de modifier le fichier vérifié, de sorte que le plugin reste désactivé pour vous tandis que vos coéquipiers ne sont pas affectés. S’il a été activé via les paramètres gérés, seul un administrateur peut le désactiver.

Comment le plugin s’intègre avec Claude Code

Le plugin est entièrement construit sur hooks, le mécanisme pour exécuter votre propre code à des points spécifiques dans la boucle de Claude. Il enregistre :
Événement HookObjectif
SessionStartAmorcer l’environnement Python du plugin
UserPromptSubmitCapturer la ligne de base de l’arborescence de travail sur laquelle l’examen de fin de tour effectue un diff
PostToolUse sur Edit, Write et NotebookEditCorrespondance de motif par modification
StopExamen diff de fin de tour, exécuté en arrière-plan
PostToolUse sur Bash, filtré sur git commit et git pushExamen de commit et de push, exécuté en arrière-plan
Si vous construisez vos propres hooks, la source du plugin est un exemple fonctionnel d’exécution d’un appel de modèle séparé à partir d’un hook et de renvoi du résultat à la session.

Comment cela s’intègre avec d’autres outils de sécurité

Le plugin est une couche dans une approche de défense en profondeur. Il détecte les problèmes au plus tôt, pendant que le code est encore dans l’éditeur, mais ce n’est pas une garantie et ne remplace pas les vérifications ultérieures. Une pile typique :
ÉtapeOutilCe qu’il couvre
En sessionPlugin de conseils en sécuritéVulnérabilités courantes dans le code que Claude écrit, corrigées dans la même session
À la demande/security-reviewPassage de sécurité unique sur la branche actuelle, exécuté quand vous le demandez
Sur demande de tirageCode Review, plans Team et EnterpriseExamen multi-agent de la correction et de la sécurité avec contexte complet de la base de code
En CIVos analyseurs statiques existants et vos scanners de dépendancesRègles spécifiques au langage, vérifications de la chaîne d’approvisionnement et application de politique que le plugin ne tente pas
Chaque étape ultérieure détecte ce que les étapes antérieures manquent. La valeur du plugin est de réduire le volume qui les atteint, pas d’éliminer le besoin de les utiliser.

Ressources connexes

Pour approfondir les éléments que cette page aborde :