はじめに
Claude Code、Cursor、Codex、Windsurf——AIコーディングエージェントの普及に伴い、再利用可能な「スキル」のエコシステムが急速に拡大しています。スキルとは、エージェントに特定の能力を追加するための命令セット(SKILL.md、MCP設定、フックスクリプトなど)で、npmパッケージやDockerイメージに相当する存在です。
2026年3月、セキュリティ企業Mobb.aiが4つの公開レジストリから22,511件のスキルを収集し、大規模なセキュリティ監査を実施しました。その結果、140,963件のセキュリティ問題が発見され、エージェントスキルのサプライチェーンに構造的な脆弱性が存在することが明らかになっています。
この記事では、監査結果の詳細、4大レジストリの比較、主要な脆弱性パターン、そして開発者が取るべき具体的な対策を解説します。
この記事で学べること
- AIエージェントスキルにおけるサプライチェーンリスクの実態
- 4大レジストリ(skills.sh、ClawHub、GitHub、Tessl)のセキュリティ比較
- 監査で発見された主要な脆弱性パターンと具体的な対策手法
- Snyk agent-scanやChainguard Agent Skillsなどのセキュリティツールの活用方法
対象読者
- Claude Code、Cursor、CodexなどのAIコーディングエージェントを利用している開発者
- エージェントスキルの開発・公開を行っている方
- セキュリティチームでAIツールの導入評価を担当している方
TL;DR
- Mobb.aiが22,511件のAIエージェントスキルを監査し、140,963件 のセキュリティ問題を検出
- スキルの 27% にコマンド実行パターンが含まれ、開発者のシステム権限で実行される
- レジストリはパブリッシュ時にスキャンするが、ローカル実行時のランタイム検証はほぼ皆無
- Tesslが唯一、CLIでセキュリティリスクを警告しコミット固定インストールを提供する仕組みを持つ
- 対策として、Snyk agent-scanによるローカルスキャン、環境変数の明示的同意、フック設定の可視化が推奨される
AIエージェントスキルとは
AIコーディングエージェントにおける「スキル」は、エージェントの能力を拡張するための再利用可能な命令セットです。具体的には以下の要素で構成されます。
| 構成要素 | 説明 | リスク |
|---|---|---|
| SKILL.md | エージェントへの指示をMarkdownで記述 | プロンプトインジェクション |
| MCP設定 | 外部ツールサーバーへの接続定義 | 不正サーバーへの誘導 |
| フックスクリプト | エージェントイベント発火時に自動実行 | 任意コード実行 |
| 環境変数参照 | APIキーなどの認証情報の受け渡し | クレデンシャル漏洩 |
npmやpipのパッケージと異なり、スキルは インストールした開発者のシステム権限をそのまま継承 します。従来のパッケージはサンドボックスされたランタイムで実行されますが、エージェントスキルはターミナルアクセス、ファイルシステムアクセス、クラウドサービスへの保存済みクレデンシャルをすべて利用可能です。この点が、従来のソフトウェアサプライチェーンとは根本的に異なるセキュリティ課題を生んでいます。
Mobb.aiセキュリティ監査の概要
調査規模
Mobb.aiは2026年3月、以下の4つの公開レジストリからスキルを収集し、静的解析を実施しました。
| 項目 | 数値 |
|---|---|
| 調査対象スキル数 | 22,511件 |
| 検出されたセキュリティ問題 | 140,963件 |
| 問題が検出されたスキルの割合 | 34% |
| コマンド実行パターンを含むスキル | 27% |
| 問題が検出されなかったスキル | 66% |
Mobb.aiは監査結果について「エコシステムは概ね健全で、明確なマルウェアは稀である」と評価しています。しかし、問題の多くは「リスクの高いパターン」であり、攻撃者が悪用可能な構造的欠陥が存在すると指摘しています。
構造的な問題:パブリッシュ時スキャン vs ランタイム実行
監査で明らかになった最大の問題は、レジストリのスキャンとローカル実行の間にあるセキュリティギャップ です。
レジストリはスキルの公開時にスキャンを実行しますが、開発者のマシンにインストールされた後は、ランタイム検証がほとんど行われません。スキルはインストール後に開発者の完全なシステム権限で実行され、環境変数の読み取り、ファイルの作成・削除、外部サーバーへのネットワーク通信が可能です。
4大レジストリのセキュリティ比較
Mobb.aiの監査は、4つの主要レジストリを横断的に分析しています。各レジストリのセキュリティアプローチには大きな差異があります。
skills.sh(Vercel運営)
Vercelが運営するskills.shは、3つの独立したスキャナー(Gen Agent Trust Hub、Socket、Snyk)を並列に実行します。複数のスキャナーによる多角的な検証は強みですが、パブリッシュ時のスキャンに限定される点は他のレジストリと共通です。
ClawHub
ClawHubはAIベースの分類システムを採用し、スキルを「CLEAN」「SUSPICIOUS」「MALICIOUS」の3段階でラベル付けします。ただし、「SUSPICIOUS」と判定されたスキルもインストール可能な状態のままです。
2026年2月には「ClawHavoc」と呼ばれる大規模なマルウェアキャンペーンが発生し、341件(後に820件以上に増加)の悪意あるスキルが発見されました。単一のアクター「hightower6eu」が354パッケージを自動化されたブリッツで一括アップロードし、macOSのクレデンシャル窃取を行うAtomic Stealer変種のペイロードを配布していたことが判明しています。
GitHub
GitHubは標準的なリポジトリセキュリティ機能(Dependabot、シークレットスキャン)を提供していますが、これらのツールは SKILL.mdの命令、MCP設定、エージェントフック定義を解析しない という限界があります。つまり、従来のコード脆弱性は検出できても、エージェント固有の脅威には対応できません。
Tessl
TesslはSnykと提携し、レジストリ上の全スキルにSnykセキュリティスコアを付与しています。4つのレジストリの中で唯一、CLIでインストール時にセキュリティリスクを警告 し、gitコミットにピン留めされたバージョンでのインストールを標準とする仕組みを実装しています。
| レジストリ | スキャン方式 | CLI警告 | 特記事項 |
|---|---|---|---|
| skills.sh | 3スキャナー並列 | なし | Vercel運営、多角的検証 |
| ClawHub | AI分類(3段階) | なし | SUSPICIOUS判定でもインストール可能 |
| GitHub | Dependabot + Secret Scan | なし | SKILL.md/MCP/フック非対応 |
| Tessl | Snykスキャン | あり | コミット固定 + セキュリティスコア表示 |
主要な脆弱性パターン
監査結果から、エージェントスキルに特有の脆弱性パターンが3つのカテゴリに分類されます。
1. コマンド実行パターン(27%のスキルで検出)
スキルの27%に、シェルコマンドの実行パターンが含まれていました。スキル自体は正当な目的(ビルド実行、テスト実行など)でコマンド実行を使うこともありますが、攻撃者がこのパターンを悪用すると、開発者のマシン上で任意のコマンドを実行できます。
例えば、ClawHavocキャンペーンでは、偽のエラーメッセージを表示してユーザーにbase64エンコードされたコマンドをコピー&ペーストさせるソーシャルエンジニアリング手法が使われていました。
2. 環境変数・クレデンシャル漏洩
スキルは環境変数を参照してAPIキーやトークンを取得することがありますが、不正なスキルがこれらの認証情報を外部サーバーに送信するリスクがあります。セキュリティ報告では、エージェント設定ディレクトリに保存されたすべてのクレデンシャルが漏洩対象になり得ると警告されています。
3. フック(Hook)の永続化リスク
フックは、エージェントの特定イベント(ファイル保存、コミット、ツール呼び出しなど)発生時に自動実行されるコマンドです。悪意あるスキルがフック設定を書き換えることで、開発者が気づかないうちにバックドアを仕掛けることが可能です。
Mobb.aiの報告では、フック設定を監査するレジストリは現時点で存在しない と指摘されています。
関連インシデントの時系列
| 時期 | インシデント | 規模 |
|---|---|---|
| 2026年2月 | ClawHavoc — ClawHubで悪意あるスキル発見 | 341件→820件以上 |
| 2026年2月 | Antiy CERT — ClawHubの約20%が悪意あるスキルと報告 | 約1,184件 |
| 2026年3月 | Mobb.ai大規模監査 | 22,511件調査 |
| 2026年3月 | Snyk ToxicSkills調査 — プロンプトインジェクション36%検出 | 複数レジストリ |
これらのインシデントは、AIエージェントスキルのエコシステムが npm初期のセキュリティ問題を高速に再現している ことを示しています。
開発者が取るべき対策
即時対応(今日からできること)
1. Snyk agent-scanでローカルスキャン
Snyk agent-scanは、ローカルマシン上のエージェント設定、MCPサーバー、インストール済みスキルを自動検出してスキャンするオープンソースツールです。
# インストールと実行(Python 3.10以上が必要)
uvx snyk-agent-scan@latest
# スキルを含む完全スキャン
uvx snyk-agent-scan@latest --skills
agent-scanはClaude Code/Desktop、Cursor、Codex、Gemini CLI、Windsurf、VS Codeなど11種類のエージェント設定を自動検出し、プロンプトインジェクション、ツールポイズニング、マルウェアペイロード、クレデンシャル管理の問題など15種類以上のセキュリティリスクを検出します。
2. 環境変数の分離
エージェントが使用する環境変数を最小限に制限し、本番環境のクレデンシャルとは分離します。
# 悪い例:グローバルに本番クレデンシャルを設定
export AWS_SECRET_ACCESS_KEY=prod-key-xxx
# 推奨:エージェント用の最小権限クレデンシャルを使用
export AGENT_AWS_KEY=readonly-dev-key-xxx
3. スキルのバージョン固定
Tesslレジストリでは、gitコミットにピン留めされたバージョンでスキルをインストールできます。バージョンを固定することで、上流のスキルが悪意ある変更を受けても影響を受けにくくなります。
中期対応(チーム・組織レベル)
4. Chainguard Agent Skillsの採用検討
Chainguard Agent Skillsは、オープンソースレジストリからスキルを自動取得し、セキュリティルールに基づいてハードニングしたカタログを提供します。上流スキルが変更されると自動的に再ハードニングされる「継続的リコンシリエーション」の仕組みを備えており、2026年3月時点でベータ版が利用可能です。
5. ネットワーク分離
セキュリティ報告では、エージェントを企業ワークステーション上でネットワーク分離なしに実行しないことが推奨されています。NVIDIA OpenShellのようなサンドボックスランタイムを活用し、カーネルレベルの分離を確保する方法もあります。
6. フック設定の定期監査
エージェントの設定ディレクトリ(例:~/.claude/、~/.cursor/)内のフック設定を定期的に確認し、身に覚えのないフックが追加されていないか監査します。
エコシステムに求められる対策
Mobb.aiは、エージェントスキルのエコシステム全体に対して、npmの npm audit やDockerの Docker Content Trust に相当する仕組みの構築を提言しています。
| 対策 | 説明 | 現状 |
|---|---|---|
| 標準化されたセキュリティメタデータ | スキルの権限要求を明示的に宣言する仕組み | 未整備 |
| 共有脆弱性データベース | レジストリ横断の脆弱性情報共有 | 一部(Snyk経由) |
| 信頼チェーンと失効メカニズム | スキルの署名検証と失効通知 | 未整備 |
| ランタイム権限制御 | スキルごとに最小権限を付与 | 一部(Tesslの警告) |
Snykのブログでは、「SKILL.mdからシェルアクセスまでわずか3行のMarkdown」という脅威モデリングの結果が公開されており、現状のエコシステムでは攻撃のハードルが極めて低いことが示されています。
まとめ
- AIエージェントスキルのエコシステムは急拡大しているが、セキュリティインフラが追いついていない
- Mobb.aiの監査で22,511件中34%のスキルにセキュリティ問題が検出され、特にコマンド実行パターン(27%)が目立つ
- 4つの主要レジストリのうち、CLIでセキュリティ警告とコミット固定インストールを提供しているのはTesslのみ
- 開発者は
snyk-agent-scanによるローカルスキャン、環境変数の分離、スキルのバージョン固定を即座に実施すべき - 長期的には、npmやDockerに相当するセキュリティインフラ(脆弱性DB、信頼チェーン、ランタイム権限制御)の整備が不可欠
AIコーディングエージェントの利便性を安全に享受するためには、スキルのインストールを「npm install」と同程度の慎重さで扱う習慣が必要です。
参考リンク
- What a security audit of 22,511 AI coding skills found lurking in the code — The New Stack — セクション「Mobb.aiセキュリティ監査の概要」「4大レジストリのセキュリティ比較」で引用
- Snyk agent-scan — GitHub — セクション「開発者が取るべき対策」で引用
- Securing the Agent Skills Registry: How Snyk and Tessl Are Setting the Standard — Snyk — セクション「4大レジストリのセキュリティ比較」で引用
- Introducing Chainguard Agent Skills — PR Newswire — セクション「開発者が取るべき対策」で引用
- AI Coding Agent Security Report(March 2026)— GitHub — セクション「主要な脆弱性パターン」「関連インシデント」で引用
- From SKILL.md to Shell Access in Three Lines of Markdown — Snyk — セクション「エコシステムに求められる対策」で引用
- ToxicSkills: Malicious AI Agent Skills on ClawHub — Snyk — セクション「関連インシデントの時系列」で引用
- How AI agents upend software supply chain security — ReversingLabs — セクション「AIエージェントスキルとは」で引用



