Anthropic、Claude Code にセキュリティプラグベータ版
本文の状態
日本語全文を表示中
詳細モードで約12分の本文を読めます。
同じ出来事の情報源
この情報源を基点に整理
MarkTechPost
Anthropic は Claude Code のベータ版としてマルチエージェント脆弱性スキャナ「Claude Security」プラグインを公開し、リポジトリ全体やコミット前の差分を検査してパッチファイルを生成する機能を端末内で提供した。
AI深層分析を開く2026年7月27日 14:04
AI深層分析
キーポイント
多機能なセキュリティスキャンの統合
このプラグインは /claude-security コマンドにより、リポジトリ全体の包括的スキャンやコミット前の差分検査を実行し、選択した脆弱性報告をパッチファイルに変換する。
動的ワークフローによる詳細分析
システムはインベントリ、脅威モデリング、調査、ギャップフィリング、パネル検証、敵対的テストの 6 フェーズからなる動的ワークフローを実行し、各コンポーネントに対して複数のエージェントを割り当てる。
階層的な実行規模とカテゴリ分類
スキャンは低・中・高・最大という 4 つの努力レベルで調整され、メモリ安全言語を使用するコンポーネントでは特定のレンズが省略されるなど、対象に応じた評価が行われる。
公開されたソースとインストール手順
プラグインは公式マーケットプレイスから 2 つのコマンドでインストール可能であり、ソースコードは claude-plugins-official リポジトリでバージョン 0.10.0 として公開されている。
多段階の検証プロセスによる報告の信頼性確保
各候補はREACHABILITY、IMPACT、DEFENSESの3つの独立した検証者によって審査され、2/3以上の賛成がない限り報告に含まれない。
重要な引用
The plugin runs a multi-agent vulnerability scan of a repository from inside an existing Claude Code session
The script declares six phases: Inventory, Threat model, Research, Sweep, Panel, Adversarial
Research runs against four fixed categories: injection-and-input, auth-and-access, memory-and-unsafe, and crypto-and-secrets
A candidate finding does not go into the report because a researcher found it. It goes in only after surviving a panel.
編集コメントを表示
編集コメント
このツールは、従来の外部スキャナとは異なり、開発環境に深く統合された形で高度な分析を行う点で画期的である。ただし、生成されるパッチの適用責任が最終的にユーザーにある点は、自動化と人間の監督のバランスを示す重要な要素と言える。
Source Article
元記事を日本語で読む
本文に関係しない購読案内、埋め込み通知、サイト内プロモーションは除いています。
Anthropic は、Claude Code のためのセキュリティプラグイン「Claude Security」をベータ版としてリリースしました。このプラグインは、既存の Claude Code セッション内でリポジトリに対してマルチエージェントによる脆弱性スキャンを実行し、ユーザーが選択した発見事項に基づいてパッチファイルを生成します。最終的なレビューと適用はユーザー自身が行います。
発表時に Anthropic が強調したのは、このツールの汎用性の高さです。コードベース全体を包括的にスキャンすることも可能ですが、コミット直前のターミナルから変更点を精査する用途にも対応しています。
プラグインが追加する機能
公式ドキュメントによると、このプラグインは単一のコマンド「/claude-security」を追加します。これを実行すると、以下の 3 つのジョブを選択できるメニューが表示されます。
- コードベースのスキャン: リポジトリ全体、または範囲を限定した一部を対象にスキャン
- 変更点のスキャン: ブランチの差分、プルリクエストの差分、あるいは単一のコミットを対象にスキャン
- パッチの提案: スキャンレポートの結果に基づき、.patch ファイルとして生成する
インストールは公式の Anthropic マーケットプレイスから 2 つのコマンドを実行するだけです。
/plugin install claude-security@claude-plugins-official
/reload-pluginsマーケットプレイスが認識されない場合は、事前に「/plugin marketplace add anthropics/claude-plugins-official」を実行して登録してください。プラグインのソースコードは「claude-plugins-official」リポジトリで公開されており、現在はバージョン 0.10.0 です。
スキャンパイプラインの仕組み
スキャン機能は動的なワークフローとして実装されています。これは JavaScript で書かれたオーケストレーションスクリプトが複数のサブエージェントに処理を分散させる形式です。このスクリプトでは、以下の 6 つのフェーズが定義されています。
インベントリ:リポジトリをコンポーネント単位に分割します。すべてのトップレベルディレクトリは、スキャン対象とするか、理由を明記して明示的にスキップするかのどちらかに分類する必要があります。
脅威モデル:各コンポーネントごとに 1 人のモデラーが担当し、エントリポイント、シンク(データ流出先)、信頼境界、そして研究者が全文で読む必要があるファイルを特定します。
調査:各コンポーネントとカテゴリの組み合わせに対して、1 名の研究者を割り当てます。
スweep(網羅確認):マトリックスでカバーしきれなかった箇所の穴埋めを行います。
パネル検証:3 つのレンズ(視点)を用いた敵対的検証を実施します。各レンズごとに 1 名の投票者が担当します。
敵対的テスト:最大限の努力を払います。境界線上のケースは再評価し、生き残ったすべての候補に対してレッドチーム(攻撃側シミュレーション)を実行します。
調査は以下の 4 つの固定カテゴリを対象に行われます。「インジェクションと入力」「認証とアクセス」「メモリと安全性」「暗号化と機密情報」です。ただし、完全にメモリ安全な言語で書かれたコンポーネントについては「メモリと安全性」のレンズは対象外となります。したがって、純粋な Python や TypeScript のコンポーネントでは、4 つではなく 3 つのレンズで検証が行われます。
実行規模は、低・中・高・最大という 4 つの努力段階によって決定されます。選択した段階に応じて、以下のような具体的な閾値が適用されます。
コンポーネント数の上限は、低と中の段階では 12 に制限され、高と最大の段階では 24 に引き上げられます。また、マトリックス内の各セルに割り当てる研究者数は、基本で 1 人ですが、高と最大の段階では 2 人に増員されます。さらに、ギャップフィルスweep(探索)の回数は、低で 0 回、中で 1 回、高と最大で 2 回と段階的に増加します。
対象範囲が限定的な場合や差分が小さい場合は、全体を配置するのではなく、研究者 1 人による構成に簡略化されます。これにより、評価は対象に対して厳密に比例した規模に保たれつつも、検証の基準は常に一定に維持されます。
システムでは、モデルごとに役割を分けたエージェントを採用しています。オーケストレーター(調整役)は Opus モデル上で動作し、リポジトリの地図作成を行う「レポジトリ・カートグラファー」と、読み取り専用のコード探索を行う「リーダーオンリー・コードエクスプローラー」は Sonnet モデル上で稼働します。さらに、セッションモデルは研究者や検証者にも継承されますが、スキャンエージェントは読み取り専用ツールにのみ制限されています。
報告書に掲載される発見の選定プロセス
こここそ、ぜひ深く理解してほしい部分です。候補となる発見が報告書に載るのは、単に研究者が見つけたからではありません。必ずパネルによる審査を通過して初めて掲載されます。
各候補は、REACHABILITY(到達可能性)、IMPACT(影響度)、DEFENSES(防御策)という 3 つの異なる視点を持つ独立した検証者へ渡されます。それぞれの検証者は「TRUE_POSITIVE」または「FALSE_POSITIVE」という構造化された判断を下し、決定的なファイル名と行番号を 1〜2 行で記述します。採用には 3 人中 2 人以上の賛成が必要です。投票者が 3 人に満たない場合、その候補は採用されません。
パネルの結果は、発見事項に対する表明される信頼性の上限も決定します。3 人全員が一致すれば信頼性は「高」まで認められますが、3 人中 2 人の合意(クォーラム)に留まる場合は「中」で封顶されます。検証結果に見合わない高い信頼性を主張することはできません。
重要なのは、この集計処理がモデル自身によって行われるのではなく、レポートレンダラーの Python コードによって計算される点です。報告書の改訂スタンプにおける verification.status は、投票記録が報告書内のすべての発見事項についてパネルが正常に実行されたことを証明した場合のみ「verified」と設定されます。そうでない場合は理由を明記して「unverified」となります。これにより、レポート自体の厳密性に関する説明は、信頼するものではなく、実際に確認できるものになります。
スキャン結果がディスクに書き込まれる内容
すべてのスキャンでは、タイムスタンプ付きの CLAUDE-SECURITY-/ ディレクトリがリポジトリ内に作成され、以下の 3 つのアートファクトが含まれます:
CLAUDE-SECURITY-RESULTS.md は、人間が読みやすい形式のレポートです。各発見事項には F1 のような ID が付与され、深刻度(HIGH/MEDIUM/LOW)、信頼性、CWE ID、該当するシンク行の正確な位置、影響範囲、攻撃シナリオ、事前条件、そして推奨対策が記載されます。
CLAUDE-SECURITY-RESULTS.jsonl は同じ発見事項を JSONL 形式で出力したもので、1 行に 1 つの JSON オブジェクトとして格納されています。
CLAUDE-SECURITY-REVISION-.json はスキャンのスタンプ情報を記録します。どのコミットが、どれほどの工数でスキャンされたか、深刻度ごとの件数、そして実行結果がどれだけ厳密に検証されたかが含まれます。ファイル名には、未コミットの変更が含まれている場合、末尾に -dirty が付加されます。
このディレクトリは、チェックアウトされたコードに対してスキャンが行う唯一の変更点です。また、誤って git add してレポートがコミットされてしまうのを防ぐため、独自の .gitignore ファイルを同梱しています。もしこの .gitignore を削除すれば、レポートをコミットして監査証跡として残すことも可能です。
パッチと、各パッチが満たすべき 3 つの主張について
修正作業は、リポジトリのスクリプトクローン上で行われるため、作業中のツリーやインデックスは一切触られません。パッチを作成したエージェントとは独立した別のエージェントが、ステージングされた差分レビューを行い、プロジェクト固有のテストスイートを実行して変更を検証します。
検証者が以下の3点を確信を持って証明できる場合のみ、パッチファイルが作成されます。1つ目の発見に対応していること、新たな脆弱性を導入していないこと、そしてそれ以外の振る舞いは変更されていないことです(コードが受け付ける入力に対する変更は「振る舞いの変更」とみなされます)。セキュリティを弱めながら修正を謳う変更、例えば認証チェックの緩和やテストの無効化などは即座に却下されます。検証者が3点すべてを保証できない場合は、パッチではなく、その理由を説明した短い注釈が返されます。
作成されたパッチはレポート内の patches/ フォルダに F.patch という形式で保存されます。ただし、自動的に適用されることはありません:
git apply CLAUDE-SECURITY-/patches/F1.patchパッチノートには、変更対象のコードをカバーするリポジトリ上のテストが存在しない場合、その旨が明記されます。この場合、検証はテストの実行ではなくコードレビューに基づいていることを示しています。Anthropic では、各パッチは個別のプルリクエストとして適用することを推奨しています。
要件とコスト、そして信頼モデル
本プラグインを使用するには、Claude Code v2.1.154 以降の有料プランが必要で、/config ディレクトリ内でダイナミックワークフローが有効になっている必要があります。また、パス上に python3(標準ライブラリのみの使用)として Python 3.9.6 以上と、変更のスキャンおよびパッチ適用に Git がインストールされていることも必須です。Linux、macOS、Windows に対応しており、スキャンの実行はプランのトークン制限の対象となります。
セッション内で実行されるスキャンは、ユーザーの権限に基づいて動作するため、独自の分離機能は持ちません。つまり、コミットされた .claude/ 設定やフック、CLAUDE.md の内容もそのまま適用されます。リポジトリの内容を指示ではなくデータとして扱う点は評価できますが、悪意あるリポジトリに対する防御策にはなりません。見知らぬコードベースを扱う際は、sandbox-runtime を使用してサンドボックス化することをお勧めします。
また、スキャン結果は非決定的な性質を持つため、従来の静的解析や依存関係のスキャン、コードレビューを代替するものではありません。
スタックにおける位置づけ
| ステージ | ツール | 対象範囲 |
|---|---|---|
| セッション内 | セキュリティガイダンスプラグイン | Claude が記述するコード内の一般的な脆弱性(同一セッション内で修正) |
| オンデマンド・単一パス (security-review) | 現在のブランチに対する一度きりのセキュリティチェック | |
| オンデマンド・深層スキャン | Claude Security プラグイン。リポジトリまたは差分の多エージェントによるスキャン。独立してレビューされた発見事項とパッチを含む | |
| プルリクエスト時 | コードレビュー (Team, Enterprise)。フルコードベースの文脈を考慮した、多エージェントによる正確性とセキュリティのレビュー | |
| 管理型 | Claude Security (Enterprise)。接続されたリポジトリを監視するホスティング型のスキャン | |
| CI/CD | 既存の SAST および依存関係スキャナ。言語固有のルール、サプライチェーンチェック、ポリシー適用 |
重要なポイント
Claude Security プラグインは、/plugin install claude-security@claude-plugins-official コマンドでインストールし、Claude Code セッション内でローカルに 6 つのフェーズからなる多エージェントスキャンを実行します。
報告に反映されるのは、3 名の審査員(REACHABILITY、IMPACT、DEFENSES)からなる敵対的パネルが 2 名以上の賛成(クォーラム)を得た場合のみです。全会一致ではない場合、報告される信頼性は「中程度」で上限が設定されます。
この検証結果の集計は、モデルが主張するのではなく、レポートレンダラーのコードによって計算され、各コミットの修正ファイルにタイムスタンプ付きで記録されます。
パッチは独立したスクラッチクローン上で構築され、3 つの主張に対して個別に検証された後、自動的に適用されることはありません。
スキャン自体には隔離機能が含まれていません。制御下にないコードをスキャンする際は、事前にセッションをサンドボックス化してください。
出典:Claude Security プラグインドキュメント、Claude Security 製品ページ、プラグインソースコード、claude-plugins-official、@claudeai の発表、および Claude Security パブリックベータブログ
AI算出
主要ニュースainew評価標準
AI エージェントによる脆弱性スキャンという具体的な新機能を扱い、マルチエージェントのワークフローや実行規模の詳細な仕組みが明記されているため、新規性と関連性は高い。ただし、日本固有の導入事例や規制情報は含まれていないため、日本の関連性は標準的なレベルとなる。
6つの評価軸を見る
- AI関連度
- 100
- 情報源の信頼性
- 25
- 新規性
- 75
- 調べる価値
- 25
- 重複の少なさ
- 100
- 日本での有用性
- 25
関連記事
News to Guide
ニュースの次に確認する
発表内容を、現在の料金や仕様と照らし合わせられる関連ガイドです。
今日のまとめ
AIデイリーブリーフで今日の重要ニュースをまとめ読み