合気道は現在、組み込みのVEXサポートを備えたDocker Hardened Images(DHI)をスキャンしています。Dockerが不正利用できないと検証した脆弱性は自動的にキューから外れるため、開発者は実際に重要な発見に時間を費やします。この記事では、何が変更されたのか、なぜ重要なのか、そしてユーザーが新しい統合からどのように恩恵を受けられるかを解説します。
なぜチームがCVEに溺れているのか
現代のアプリケーションチームはCVEに溺れています。そして音量は急速に増えています。AIコーディングエージェントは現在、どのチームもレビューするよりもはるかに速くソフトウェアを生成・組み立て、依存関係を何百件も引き寄せ、新しいサービスをオンデマンドで立ち上げています。彼らがアクセスするベースイメージは、誰かのキューに新たなCVEスタックが加わることになります。コードが速く出荷されるほど、すでに最小限で、すでにパッチが当てられ、検証された基盤から始めることが重要になります。だからこそ、強化されたイメージがこれまで以上に重要視されているのです。
Docker Hardened Imagesはこの問題をソースから解決しています。DHIイメージは専用に設計されており、多くの場合ディストロ不要で、ワークロードに必要なソフトウェアのみが付属しています。攻撃対象は構造上より小さいです。多くの場合、上流よりも早く着地するパッチが存在します。
攻撃面が小さくなっても、スキャナーがそれを認識できて初めて役立ちます。ディストリビューションなしのイメージは、パッケージマネージャーやシェルを期待するツールを壊します。素朴なスキャンは、実際には存在しないコンポーネントに対して誤検知を生み出したり、アクセスできないコードパスにCVEをフラグ付けしたりします。チームは画像作成者が問題ないと既に知っていたノイズをトリアージしてしまいます。
新しい統合はこのギャップを埋めます。DHIは各画像の隣に署名入りのVEX証明書を掲載しています。合気道はそれらの証言を読み、トリアージの際に適用します。DockerがすでにクリアしたCVEは、明確な理由とともにフィルタリングされます。
始める前に
合気道でDHIをスキャンするには、3つの要素が必要です:
- 合 気道 のアクティブなアカウントです。
- Dockerで強化されたイメージへのアクセス。
- 読み取り専用スコープを持つ Docker Hubのパーソナルアクセストークン です。
- もしDocker Hubのレジストリがすでに合気道に接続されているなら、次のセクションは飛ばしてください。
Docker Hubを合気道に接続
合気道では、 コンテナの設定> 「 レジストリ接続」をクリックします。
Docker Hubを選択してください。
組織の名前スペース、ユーザー名、パーソナルアクセストークンを入力してください。
合気道はあなたのリポジトリを見つけてスキャンのためにリストアップします。
Dockerで強化されたイメージをスキャンする
レジストリが接続されたら、レジストリアクションメニューを開き、 レジストリの「スキャンリポジトリ」をクリックします。DHIに追加の設定はありません。合気道は硬化した画像を自動的に検出し、適切なデータソースをバックグラウンドで適用します。
ワークフローはDHIの技術仕様に従っています:
- 探知。合気道は画像参照およびレジストリのメタデータからDHIのベース画像を特定します。
- 目録作成。スキャナーは符号付きSPDX 2を引き出します。3SBOMはその画像を掲載しました。SBOMはOCI 1を通じて取得されます。1 リファラーを参照してレジストリを参照するか、ある場合は/opt/docker/sbom/から参照してください。検証済みのSBOMを読むことで、ディストロレスのファイルシステムのインデックス作成では不可能な完全かつ正確なコンポーネントデータが得られます。
- お揃い。コンポーネントはDOCKERのOSVフィードや上流のアドバイザリーフィードとPURLでマッチングされます。
- VEXの申請。合気道はDockerが画像に対して公開したOpenVEX文を重ね、証明で解決済みとマークされた発見を抑制します。
VEXステータスの表示方法
|
VEXステータス |
意味 |
|---|---|
|
固定 |
この画像では脆弱性が修正されています。 |
|
影響なし |
Dockerはこの CVE が誤検知または文脈上悪用不可であることを確認しました。合気道はデフォルトでこれらの症状を抑制しています。 |
|
調査中 |
影響はまだDockerによって評価中です。 |
|
影響を受けた |
脆弱性は適用されており、まだ修正は見つかっていません。 |
合気道で見られるもの
合気道はUIを一つの問いに集中させます:この画像は脆弱なのかどうか。DockerのVEX認証が、CVEにトリアージを必要としない(例えば修正済みまたは影響なしとマークされている場合)を示すと、合気道は自動的にアクティブなキューから除外します。トリアージしたり、タグ付けしたり、クリックしたりする必要はありません。キューに残った発見は画像に本当に当てはまるものなので、チームは重要なことだけに時間を割きます。
舞台裏では、合気道は監査やコンプライアンスのためにOpenVEXの声明(ステータス、正当化、画像ダイジェスト)を全文消費しています。UIのステータスドリルダウンとして表示されることはありません。なぜなら、実際には脆弱性のトリアージを行う人はVEXのメタデータを掘り下げたくないからです。
その結果がどのようなものか
典型的なDHIワークロードでは、VEXが適用されるとアクティブキューは劇的に縮小します。数百件のコピーを汎用的なベース画像に対して返すスキャンは、画像が実際に持つわずかな結果に収束します。
具体的な例として、パーサーライブラリ内のCVEはほとんどのベースイメージに反映されます。Dockerは、脆弱性のあるコードパスに敵対者がアクセスできないため、DHIビルド内でnot_affectedとマークします。合気道はその声明を読み、「VEXは影響を受けていない」としてCVEをファイルし、チームはトリアージでそれを見逃します。監査人に尋ねられても、その理由は残ります。
FedRAMP、SOC 2、その他のコンプライアンス体制を追求するチームにとっては、これは二重の重要性があります。調査結果は正直です。例外は署名入りで、画像出版者に帰属し、公的な証言に遡ることができます。監査人に赤い壁を渡しているわけではありません。
要約
この統合は、Docker Hardened Imagesが提供する以下の情報に基づいています:
- 署名済みSBOMは、ディストロレスファイルシステムをインデックスしようとせずに合気道の完全なコンポーネントデータを提供します。
- OpenVEXの認証は、Dockerの不正利用可能性の判断を正当な理由をもって直接スキャナーに届けます。
その結果、実際の脆弱性を反映したトリアージキューが生成され、上流パッケージに触れたすべてのCVEを一気にダンプするものではありません。まだハードンドイメージを始めていなければ、まずは DockerのHardened Images ドキュメントから始めてください。
統合について詳しくはこちらをご覧ください:
6月 26日、合気道は統合についてもっと知りたい方を対象にウェビナーを開催します。
合気道 x Docker 登録:コンテナセキュリティでノイズが少なく、信号が増える