Docker社は、Docker Engineの特定のバージョンに影響する重大な脆弱性に対処するためのセキュリティアップデートを発表しました。この脆弱性は、特定の状況下で攻撃者が認証プラグイン(AuthZ)をバイパスすることを可能にする可能性があります。
この欠陥は当初、2019年1月にリリースされたDocker Engine v18.09.1で発見され修正されたが、何らかの理由で以降のバージョンで修正が引き継がれなかったため、欠陥が再浮上した。
この危険なリグレッションが確認されたのは2024年4月のことで、最終的にサポートされているすべてのDocker Engineバージョンに対してパッチが本日リリースされた。
このため、攻撃者がこの欠陥を活用できる期間は5年間となったが、Dockerインスタンスに不正アクセスするためにこの欠陥が悪用されたかどうかは不明である。
5年前の欠陥
現在CVE-2024-41110で追跡されているこの欠陥は、重大度(CVSSスコア:10.0)の問題で、攻撃者が特別に細工したAPIリクエストをContent-Length 0で送信し、Dockerデーモンを騙してAuthZプラグインに転送させることができます。
一般的なシナリオでは、APIリクエストにはリクエストに必要なデータを含むボディが含まれ、認証プラグインはこのボディを検査してアクセス制御の決定を行います。
Content-Lengthが0に設定されている場合、リクエストはボディなしでAuthZプラグインに転送されるので、プラグインは適切な検証を実行できない。そのため、プラグインは適切な検証を行うことができない。 このことは、権限の昇格を含む、許可されていない操作のリクエストを承認する リスクを伴う。
CVE-2024-41110は、Docker Engineのv19.03.15、v20.10.27、v23.0.14、v24.0.9、v25.0.5、v26.0.2、v26.1.4、v27.0.3、v27.1.0までのバージョンに影響します。
認証にプラグインを使用していないユーザ、Mirantis Container Runtimeのユーザ、およびDocker商用製品のユーザは、どのバージョンであってもCVE-2024-41110の影響を受けません。
影響を受けるユーザーには、できるだけ早くv23.0.14とv27.1.0に移行することが推奨されます。
また、Docker Desktopの最新バージョンである4.32.0には脆弱なDocker Engineが含まれているが、Docker APIへのアクセスが必要であり、権限の昇格はVMに限定されるため、影響は限定的である。
今後リリースされるDocker Desktop v4.33.0ではこの問題は解決されるが、まだリリースされていない。
安全なバージョンに移行できないユーザーは、AuthZプラグインを無効にし、Docker APIへのアクセスを信頼できるユーザーのみに制限することをお勧めします。

Comments