Docker社は2026年10月12日、コンテナイメージの共有サービス「Docker Hub」に重大(Critical)な脆弱性CVE-2026-105445があったと公表しました。悪用されると、攻撃者が他人になりすまして、その人のリポジトリのイメージをpull(取得)・push(更新)・delete(削除)できた恐れがあります。すでに修正済みで、Docker社は悪用の証拠は見つかっていないとしています。
ここでは、何が起きたのか、なぜサプライチェーンのリスクとして扱われたのか、情シスが確認することを、Docker社の公式アドバイザリから整理します。
何が見つかったのか
Docker Hubでは、個人アカウントを「組織(Organization)」に変換できます。この変換のときに、そのアカウントの個人アクセストークン(PAT。自動化などで使う認証用のカギ)が、変換時に指定した新しいオーナーへ付け替えられていました。
問題は、トークンの持ち主の情報だけが書き換わり、カギそのもの(シークレット)は失効も作り直しもされなかった点です。指定された相手への確認も通知もありませんでした。
変換時にPATの持ち主だけが付け替わった仕組み(編集部作成)作成: 編集部 / もとの資料: 情シスのミカタ編集部
これを悪用すると、攻撃者は次の手順で、ねらった相手になりすませました。
- 攻撃者が自分のアカウントを作り、個人アクセストークン(PAT)を発行する
- そのアカウントを組織に変換し、「オーナー」にねらった相手を指定する
- PATが相手に付け替えられる。攻撃者はカギ(シークレット)を手元に持ったまま、相手の権限でレジストリに認証できる
Docker社によると、なりすました攻撃者は、相手のリポジトリや、相手が入っている組織のリポジトリのイメージを、pull・push・deleteできた可能性があります。正規の名前でイメージを公開・差し替えできるため、それを取り込む側に不正なイメージが混ざる「サプライチェーン」のリスクとして扱われました。
一方で、できなかったこともはっきりしています。Docker HubのWeb画面にはログインできず、相手のパスワード・メールアドレス・2要素認証(2FA)を変えることも、アカウントそのものを乗っ取ることもできません。
なぜ今、注意なのか
この脆弱性は2024年8月26日(UTC)から存在していました。経緯は次のとおりです。
| 日時 |
できごと |
| 2024年8月26日(UTC) |
脆弱性が作り込まれる(露出期間の開始) |
| 2026年9月30日 |
研究者から報告を受け、同日中(報告から4時間未満)に本番環境へ修正を適用 |
| 2026年10月2日 |
影響を受けた可能性のある利用者へ通知メールを送付 |
| 2026年10月8日 |
付け替えで移った対象トークンを強制的に無効化 |
| 2026年10月12日 |
本アドバイザリを公開 |
Docker社は、付け替えで移ったトークンが使われた約30万4000件のpushを調べ、「悪用された証拠は見つからなかった」としています。確認したpushはいずれも、変換後の組織自身か、新しいオーナー自身のリポジトリに入っており、無関係なアカウントには入っていませんでした。リスクの高い公開イメージを解析しても、不正なプログラムなどは見つからなかったとしています。
ただし、ログには実際に使われたトークンしか残らないため、一度も使われなかった移動済みトークンは検知できません。そのためDocker社は、期間中に付け替えで移動したすべてのPATを「影響を受けた可能性がある」として扱いました。
恒久対策として、変換時のトークン付け替えを完全に廃止しました。今後は、組織のオーナーに指名される前に本人の同意を求め、指名されたら通知する、トークンの所有者変更の履歴(監査できる記録)を残す、同じように認証情報の持ち主が変わる他の処理も見直す、としています。
影響する会社・しない会社
関係するのは、Docker Hubを使ってコンテナイメージを公開・配布している会社や、業務でDocker Hubのアカウント・組織・個人アクセストークン(PAT)を持っている会社です。特に、Dockerから通知メールを受け取った人・組織は、対象のトークンを確認する必要があります。
通知を受け取っていない人は、Docker社によれば今回の経路での露出はなく、対応は不要とされています。Docker Hubのアカウントを持っていない会社や、イメージを「取得(pull)するだけ」の使い方も、直接の対象ではありません。ただし、取り込むイメージの出所を確かめる習慣は、どの会社にも役立ちます。
情シスが今日やること
- Dockerからの通知メールの有無を確認する。受け取っていたら、Docker Hubのアカウント設定「Personal access tokens」で、記載された対象トークンを確認する
- 心当たりのないトークンや、使っていないトークンは取り消す(revoke)
- 組織(Organization)の自動化では、個人のPATではなく「組織アクセストークン(Organization access token)」を使う
- 公開しているイメージがある場合は、自社の正規イメージが差し替えられていないか、タグやダイジェスト(内容のハッシュ値)を確認する
- イメージを取り込む側では、信頼できる発行元のイメージか、ダイジェスト指定で取り込んでいるかを見直す
- 不明点はDocker Support(app.docker.com/support/contact)に問い合わせる
書かれていないこと
Docker社は、今回の脆弱性のCVSSスコアを公表していません(深刻度は「Critical」とだけ示しています)。だれのアカウントが実際に付け替えの対象になったかの個別の一覧や、報告した研究者の氏名も公表されていません。悪用の証拠は見つかっていませんが、「一度も使われなかった移動済みトークン」は検知できないと、Docker社自身が述べています。新しい発表が出たら、内容を更新します。