CVE-2020-15257
containerd-shim APIがホストネットワークコンテナに公開される
- 公開済み
- 2020/12/01
- 更新済み
- 2024/08/04
- CNA の割り当て
- GitHub_M
- 観察された証拠
- 2026/08/08
プライマリ CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N低 · 今後 30 日間
- パーセンタイル
- 87.7%
- モデルの日付
- 2026/09/21
EPSS は統計的な推定値であり、確実性や影響の尺度ではありません。 CVSS、KEV ステータス、暴露、環境と組み合わせます。
概要
containerd は、業界標準のコンテナランタイムであり、Linux および Windows 向けのデーモンとして利用可能です。バージョン 1.3.9 および 1.4.3 より前の containerd では、containerd-shim API がホストネットワークコンテナに対して不適切に公開されています。shim の API ソケットへのアクセス制御は、接続プロセスの実効 UID が 0 であることを検証していましたが、抽象 Unix ドメインソケットへのアクセスをそれ以外に制限していませんでした。これにより、shim と同じネットワーク名前空間で実行され、実効 UID が 0 でありながら権限が削減された悪意のあるコンテナが、昇格した権限で新しいプロセスを実行させる可能性があります。この脆弱性は containerd 1.3.9 および 1.4.3 で修正されています。ユーザーは、これらのバージョンがリリースされたらすぐに更新する必要があります。古いバージョンの containerd-shim で起動されたコンテナは、停止して再起動する必要があることに注意してください。アップグレード後も実行中のコンテナは脆弱なままとなるためです。信頼できないユーザーに、shim と同じネットワーク名前空間(通常は「ホスト」ネットワーク名前空間、例えば `docker run --net=host` や Kubernetes ポッドの `hostNetwork: true` など)でコンテナを起動させ、実効 UID 0 で実行させる機能を提供していない場合、この問題に対して脆弱ではありません。脆弱な構成でコンテナを実行している場合は、AppArmor を使用して、ポリシーに `deny unix addr=@**,` に類似した行を追加することで、すべての抽象ソケットへのアクセスを拒否できます。コンテナは、権限を削減した状態、非ゼロの UID、および分離された名前空間で実行することがベストプラクティスです。containerd のメンテナは、ホストとの名前空間の共有を強く推奨しません。コンテナに使用される分離メカニズムのセットを減らすことは、どのコンテナランタイムを使用してコンテナを実行する場合でも、必然的にそのコンテナの権限を増加させます。
ソース
1containerd における CVE-2020-15257 の概念実証(PoC)
責任ある使用
脆弱性情報は、自分が所有しているシステム、またはテストを許可されているシステムでのみ使用してください。 Kitploit は公開研究メタデータにリンクしており、エクスプロイト コードや悪意のあるペイロードは保存しません。