mcpField
D
Dockerfile Security Audit

Dockerfile Security Audit

リモート
github.com/tylerscomic-labセキュリティ04 週間前に更新
リポジトリ

Dockerfile Security Audit について

コンテナ開発者やセキュリティ担当者向けに、Dockerfile の構造を解析してセキュリティ上の問題を調べる MCP サーバーです。最終ビルドステージを対象に、問題箇所や理由、修正案を返します。

主な機能

  1. 01マルチステージと行継続の解析
  2. 02最終ステージの USER を確認
  3. 03イメージに埋め込まれる可能性のある秘密情報を検出
  4. 04curl や wget からシェルへのパイプを検出
  5. 05タグ未固定のベースイメージを確認
  6. 06リモート URL を使う ADD を検出

活用シーン

  1. 01イメージ公開前の Dockerfile 監査
  2. 02コンテナが root で動くリスクの確認
  3. 03Dockerfile 内の秘密情報漏えいの発見

MCP 対応

`audit_dockerfile` ツールを MCP クライアントに提供し、リスクレベル、問題箇所、説明、具体的な修正案を返します。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://dockerfile-audit-mcp.mcpize.run/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

dockerfile-audit-mcp

License: MIT Live on MCPize

実際のコンテナーセキュリティにおけるアンチパターンを Dockerfile から検出する MCP サーバーです。正規表現でテキスト全体を検索するのではなく、独自のパーサーを使って Dockerfile の実際の構造(命令、バックスラッシュによる行継続、マルチステージビルド)を解析します。

検出できる問題

USER の指定漏れ。 最終的に使われる最終ステージに USER 命令がない場合(または USER root が明示的に指定されている場合)、実行中のコンテナー内のすべてのプロセスは、デフォルトで root 権限を持ちます。マルチステージビルドでは、前段のビルド専用ステージで root として行った作業が最終イメージに含まれないようにするため、最終ステージだけを正しく確認します。これは実際のリンターの慣例(hadolint の DL3002)に沿ったものです。

イメージに埋め込まれたシークレット。 シークレットらしい名前(API_KEY、PASSWORD、*_TOKEN、STRIPE_*_KEY など)に割り当てられた ENV/ARG の値は、イメージのレイヤー履歴に恒久的に残ります。後続レイヤーで変数の設定を解除しても、イメージを取得した人なら誰でも docker history --no-trunc で確認できます。<your-key> や changeme のようなプレースホルダーらしい値と、デフォルト値のない ARG 宣言は、正しく検出対象から除外されます。

curl | sh/wget | bash。 ビルド時に整合性を確認せず、リモートスクリプトを直接シェルにパイプします。ホストが侵害されたりスクリプトが変更されたりすると、その後のビルドでは、提供されるようになった内容が気づかれないまま取り込まれます。

ベースイメージのバージョン未固定。 :latest を指定した場合、またはタグをまったく指定しない場合、イメージのビルドに使うベースイメージがビルドごとに変わる可能性がありますが、その理由は Dockerfile からは分かりません。

リモート URL を指定した ADD。 別の命令を使った、curl | sh と同じ未検証の取得です。

ツール

audit_dockerfile

完全な監査を行います。リスクレベルと、各検出事項の正確な位置、問題となる理由、具体的な修正方法を返します。

利用方法

ホステッド(推奨): MCPize — 無料プラン、Pro は月額 $7 です。

セルフホスト:

npm install
node server.js

小規模なツール群の一部

github-actions-audit-mcp、 regex-safety-audit-mcp、 secrets-leak-audit-mcp、 mcp-trust-audit-mcp。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。