147 Views
December 17, 25
スライド概要
CNCJ: CNAPPセキュリティミートアップ
https://community.cncf.io/events/details/cncf-cloud-native-security-japan-presents-cncj-cnappsekiyuriteimitoatsupu/
AIエージェントの構築やAIコーディングの活用が急速に進む中、MCP(Model Context Protocol)サーバーを通じてLLMと外部ツールや既存システムを連携させるケースが増えています。 一方で、MCPサーバーは外部リソースと直接接続する特性上、ソフトウェアサプライチェーン攻撃の新たな経路となるリスクを抱えており、加えてコンテナイメージの脆弱性を悪用した攻撃も増加しています。 本セッションでは、こうしたリスクに対してDockerが進める取り組み― Docker MCP、Docker Scout、Docker Hardened Images ― についてご紹介します。
複数の日系企業でテスト自動化エンジニア・DevOpsエンジニアとして活動した後、プリセールスエンジニアとして DevOps、CI/CD、自動テストを中心にお客様の技術支援や技術発信を行ってきました。2024年日本拠点1人目のプリセールスエンジニアとして Docker に入社。
AI エージェント・MCP 活用における ソフトウェアサプライチェーンリスクと Docker の取り組み CNCJ: CNAPP セキュリティミートアップ Tadashi Nemoto Strategic Solutions Engineer
https://www.docker.com/blog/docker-cncf-partnership/
Docker × CNCF ● 全ての CNCF プロジェクトに Docker Sponsored Open Source(DSOS) プログラム提供開始 ○ Docker Hub からの無制限 Pull ○ Docker Hub 上での Sponsored OSS バッジ ○ Docker Hub 利用状況メトリクス ○ コンテナイメージ分析ツール Docker Scout を無制限利用
AI エージェント・MCP 使う 構築
AI コーディングエージェント
MCP によって深い統合を実現する MCP PROTOCOL
68% の企業が今後1年以内に AIエージェントをデプロイする予定 Source: Capgemini study Rise of agentic AI How trust is the key to human-AI collaboration
Large Language Model GitHub Notion Slack 3rd party tool User input or event Agent Application API tool Internal API SQL tool Internal DB Response
MCP におけるセキュリティリスク
MCP サーバーを起動するための設定ファイル
Claude Desktop config
{
"mcpServers": {
"github": {
ホストマシンに
npx(Node.js)を
インストールし、
直接実行する必要がある
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-github"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
どの MCP サーバーの
パッケージを利用するか、
そのパッケージが信頼できる
ものなのか、自分で確認しな
いといけない
}
}
}
}
認証情報が暗号化されずに
環境変数として保存されて
いる
MCP がもたらすセキュリティ課題 信頼性がない ディスカバリー 分散・暗号化されて いない認証情報の管理 ホストに直接 攻撃されやすい
MCP サーバーを Docker コンテナとして実行
{
"mcpServers": {
"github": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"mcp/github"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
}
}
}
}
Docker MCP Catalog ➔ Docker Hub で 200 以上のコンテナイメージ化された MCP サーバーを提供 ○ ➔ Notion, GitHub, Atlassian, Stripe, Grafana, Playwright, CircleCI, AWS, MongoDB 信頼された MCP サーバーを利用可能 ○ Docker によってイメージをビルド・署名・脆弱性スキャン・ SBOM出力
Docker MCP Toolkit(AI エージェントを拡張) ➔ Docker Desktop 内で MCP サーバーの検索・インストール・管理 ○ ➔ アクセストークンなどの認証情報は暗号化した上で Docker Desktop にセキュアに保存 複数の MCP クライアントとシームレスに連携 ○ Cursor、Claude Desktop、Claude Code、Codex、GitHub Copilot、Gemini CLI, etc
Docker MCP Gateway(AI エージェントを構築) ➔ 複数のコンテナ化された MCP サーバーを簡単かつ安全に管理 ➔ MCP サーバーの構成、認証情報、アクセス制御、ログなどを1 つのゲートウェイに集約 compose.yaml services: mcp-gateway: image: docker/mcp-gateway:latest use_api_socket: true command: - --transport=sse - --servers=duckduckgo - --tools=search,fetch_content app: ... environment: MCP_ENDPOINT: http://mcp-gateway:8811/sse
コンテナイメージにおける サプライチェーンリスク
コンテナイメージに脆弱性(CVE)がどう組み込まれるのか https://anchore.com/software-supply-chain-security/what-is-sscs/
脆弱性(CVE)は増え続け、対応コストも増え続ける
Producer > Source CI/CD > Build Container registry > Package Runtime > Consumer > > Development Dependencies Adapted from slsa.dev/spec/v1.0/threatsoverview
スキャンツールを導入 したが、大量の脆弱性 対応に追われる
● 約10年間、互換性のために様々なコンポーネントが含まれており、容易に削除できない → 既に複数の脆弱性が含まれている、今後多くの脆弱性が発生する可能性がある ● コミュニティによるメンテナンスのため、 SLA などは提供されていない https://anchore.com/software-supply-chain-security/what-is-sscs/
XZ Utils バックドア(CVE-2024-3024) 2024年3月、複数の Linux ディストリビューションなどで利用されているファイ ル可逆圧縮ツールである XZ Util で悪意のあるコードが挿入された。 ● インストールされたシステムでは、特定条件下で SSH ポート経由で 外部から攻撃者が接続できるような改ざんが行われた ● ハッカー (Jia Tan)は開発者コミュニティ (GitHub)で積極的な貢献を 行い信頼を獲得したのち、メンテナンス権限を用いてバックドアを仕 込んだ ● 多くの Linux ディストリビューションが影響 ○ Debian ○ Red Hat ○ Arch Linux ○ Alpine Linux ○ SUSE / openSUSE ○ Ubuntu
イメージを最小構成にし、CVEs がほとんどない状態で提供 Critical / High の CVE は SLA として7日以内に修正 柔軟な互換性・カスタマイズ性と シームレスな移行をサポート SBOM, provenance, SLSA などを標準搭載
Node.js の DHI へ移行することによる脆弱性の減少 Before 脆弱性(CVEs)の減少 After 141 ➡ 0 依存パッケージの減少 748 ➡ 12
DHI で脆弱性を 24 時間以内に修正 Golang プロジェクトで広く使われている golang.org/x/crypto/ssh に影響を与える3つの脆弱性 (CVE-2025-47913, CVE-2025-47914, CVE-2025-58181) Docker Hardened Images は 24 時間以内にパッチ修正版 をリリース ● バッチスケジュールではなく、 CVE が発表されたら 即時に Docker(Scout) アドバイザリー データベースに取り込み、モニタリング ● SBOM を参照し、影響のある DHI イメージを 即時評価 ● 自動的にパッチワークフローを実施し、 修正版イメージを配布 https://www.docker.com/ja-jp/blog/how-docker-hardened-images-patch-cves-in-24-hours/
Critical CVE を上流から修正 Node.js のライブラリ expr-eval でリモートコード実行の脆弱 性が発覚(CVE Score 9.8) ● Kibana プロジェクトに影響 ● Docker(Scout) アドバイザリーデータベースが 依存関係を把握 ● AI エージェントフレームワークで有名な LangChain.js が expr-eval を利用 ● Docker Security チームが、代替ライブラリである math-expression-evaluator に変更する Pull Request を作成 ● すばやくそれらの変更を Docker Hardened Images にも反映 https://www.docker.com/ja-jp/blog/security-thatstrengthens-the-ecosystem-dockers-upstream-a pproach-to-cve-2025-12735/
まとめ
Secured by Docker MCP PROTOCOL
Github Notion Slack Large Language Model 3rd party Tool Internal API User input or event API tool Agent Application MCP Gateway Response SQL tool Internal DB
Thank you!!