Claude Codeを安全に使う

Claude Codeを安全に使う

Claude Codeには、AIが書いたコードのセキュリティ上の問題を自動で見つけて修正する「セキュリティガイダンスプラグイン」が用意されています。難しい設定は不要で、インストールするだけで動作します。

コードを書いている最中・書き終わった後・保存するタイミングの3段階でチェックが走り、問題があればその場で修正まで完結します。

【出典元】Catch security issues as Claude writes code | Claude Code Docs

プログラムの「セキュリティの穴」

プログラムの「セキュリティの穴」とは、悪意のある第三者がシステムに侵入したり、データを盗んだりできてしまう欠陥のことです。代表的なものは以下の通りです。

  • インジェクション攻撃:入力欄に悪意のある命令を仕込み、データベースを不正操作する
  • 安全でないデータ処理:外部から受け取ったデータをそのまま実行してしまう
  • APIキーの誤った埋め込み:本来隠すべき認証情報をコードに直書きしてしまう

こうした問題はベテランのエンジニアでも見落とすことがあり、AIが書いたコードにも同様のリスクがあります。このプラグインは、AIが書いたコードを別のAIが独立してチェックするという仕組みで問題を早期に発見します。

3段階の自動チェックの仕組み

プラグインは3つのタイミングで自動的に動作します。特別な操作は不要で、コマンドを覚える必要もありません。

タイミング何をするか追加費用
① ファイルを編集した直後危険なパターン(eval・innerHTML・pickleなど)が含まれていないかを一瞬で確認。AIを使わないため高速なし
② 1ターン終了後そのターンで変更されたすべてのファイルをAIがまとめてレビュー。①では検出できない複雑な問題も発見あり(モデル使用分)
③ コミット・プッシュ時変更箇所の周辺コードまで読み込み、より深く調査する「エージェント型レビュー」。誤検知が少ないあり(モデル使用分)

重要なのは、コードを書いた本人(Claude)ではなく、別の独立したClaudeがチェックする点です。自分で書いたものを自分でチェックすると見落としが起きやすいため、意図的に「書く役」と「確認する役」を分けています。

問題が見つかった場合、自動的にClaudeに修正指示が送られ、同じセッション内で修正まで完結します。

インストールの手順

Claude Codeのセッション内で以下の2コマンドを順番に実行するだけです。

ステップ1:プラグインをインストール

/plugin install security-guidance@claude-plugins-official

インストール時にスコープ(適用範囲)を選ぶ画面が出ます。「user scope(ユーザースコープ)」を選ぶと、そのパソコンで起動するすべてのClaude Codeセッションで自動的に有効になるのでおすすめです。

ステップ2:現在のセッションに反映

/reload-plugins

これで完了です。以降は何も操作しなくてもバックグラウンドで動作します。

なお、動作には以下の環境が必要です。

  • Claude Code CLIのバージョン2.1.144以降
  • Python 3.8以降がインストールされていること
  • Gitリポジトリ内での作業(②③のチェックにはgitが必要)

独自ルールを追加する方法

プロジェクト固有のルールを追加することもできます。プログラミングの知識がなくても、設定ファイルに日本語に近い形で書くだけで反映されます。

AIレビュー向けのガイダンスを追加する場合

プロジェクトの.claude/claude-security-guidance.mdというファイルに、普通の文章でルールを書きます。

例えば「ユーザーIDをログに記録しないこと」「管理画面へのアクセスには権限チェックを必ず入れること」といった内容を書いておくと、AIレビューがそのルールも考慮してチェックしてくれます。

パターンマッチのルールを追加する場合

.claude/security-patterns.yamlというファイルに、検出したい文字列を定義します。例えば「コードの中に本番用のAPIキーが直書きされていたら警告する」といったルールを追加できます。

無効化・アンインストールの方法

一時的に止めたい場合や、一部の機能だけ無効にしたい場合の操作です。

操作コマンド・方法
一時停止/plugin disable security-guidance@claude-plugins-official
完全削除/plugin uninstall security-guidance@claude-plugins-official
ファイル編集チェックのみ無効環境変数 ENABLE_PATTERN_RULES=0 を設定
ターン終了後チェックのみ無効環境変数 ENABLE_STOP_REVIEW=0 を設定
コミット時チェックのみ無効環境変数 ENABLE_COMMIT_REVIEW=0 を設定

このプラグインで防げないこともある

便利なプラグインですが、万能ではありません。公式ドキュメントも明記している重要な注意点があります。

  • 問題を見つけても書き込みやコミットを止めない:警告は出しますが、強制的に処理をブロックする機能はありません
  • 見落としはある:AIによるレビューなので、すべての問題を100%検出できるわけではありません
  • これだけでは不十分:プルリクエスト時のコードレビューや、CI(自動テスト環境)でのスキャンと組み合わせて使うことが推奨されています

このプラグインは「何層もある防御の中の1つ」として位置づけられています。早い段階で問題を減らせるため、後工程の人間によるレビューの負担を軽くするのが主な目的です。

まとめ

セキュリティガイダンスプラグインは、Claude Codeにインストールするだけでコードの安全性チェックを自動化できるツールです。コード編集中・ターン終了後・コミット時の3段階で問題を検出し、発見した問題は同じセッション内で修正まで行います。

「AIが書いたコードだから安心」ではなく「AIが書いたコードだからこそ、別のAIがチェックする」という考え方がこのプラグインの本質です。セキュリティの専門知識がなくても使えるため、Claude Codeでコードを書く機会があれば、まずインストールしておくことをおすすめします。

関連記事