【CVE-2022-0492】Linux Kernel cgroups v1 の権限昇格・コンテナエスケープ脆弱性を解説と対応方法

CVE・脆弱性情報

⚠️ 概要

CVSSスコア 7.8・CISA KEV掲載(2026-06-02)・緊急対応が必要です

2026年6月2日、CISA(米サイバーセキュリティ・インフラセキュリティ庁)が CVE-2022-0492 を「既知の悪用済み脆弱性カタログ(KEV)」に追加しました。
この脆弱性は2022年に発見・修正されたものですが、現在も積極的な悪用が確認されています。
特にコンテナ環境(Docker / Kubernetes)でcgroups v1を使用している場合、コンテナエスケープによりホストの完全な制御を奪われるリスクがあります。


この脆弱性について

項目 内容
CVE-ID CVE-2022-0492
CVSSスコア 7.8(High)CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CWE CWE-862(Missing Authorization)
対象 cgroups v1 を使用するLinuxカーネル全般
公開日 2022-03-03
CISA KEV追加日 2026-06-02
対応策 パッチあり(カーネルアップデート)

CVE-2022-0492 は、Linuxカーネルの cgroups v1(Control Groups v1)release_agent 機能に存在する認可チェック不備の脆弱性です。

cgroups v1 は現在も多くのLinuxディストリビューションやコンテナランタイムでデフォルト使用されており、影響を受ける環境は広範囲にわたります。
修正自体は2022年に提供されていますが、カーネルの更新が後回しにされた環境では今なお悪用可能な状態です。


原因

なぜこの脆弱性が生じるのか

cgroups v1 には release_agent という仕組みがあります。
これは「cgroupが空になった(プロセスがすべて終了した)ときに、指定した実行ファイルをrootとして実行する」というメカニズムです。

問題は kernel/cgroup/cgroup-v1.c 内の cgroup_release_agent_write() 関数にありました。
この関数は release_agent ファイルへの書き込みを処理しますが、書き込み元プロセスが管理者権限(CAP_SYS_ADMIN)を持っているかどうかを確認していませんでした

そのため、非特権ユーザーであっても以下の手順でコンテナエスケープが可能でした:

  1. ユーザー名前空間(user namespace)内で cgroupfs を新規マウントする
  2. notify_on_release を有効化する
  3. release_agent ファイルに実行したいコマンドのパスを書き込む
  4. cgroup内のプロセスを終了させ、release_agentをrootとして起動させる
# 脆弱性の概念的な流れ(実際の攻撃コードではありません)
# 1. 新しいuser namespace + mount namespace内でcgroupfsをマウント
unshare -UrmC --propagation=unchanged /bin/bash

# 2. release_agentに任意のスクリプトを指定
mkdir /tmp/cgrp
mount -t cgroup -o rdma cgroup /tmp/cgrp
echo 1 > /tmp/cgrp/notify_on_release
# release_agentへの書き込み(本来は特権が必要なはずだが、チェックが欠如)
echo /path/to/payload > /tmp/cgrp/release_agent

このrelease_agentはホスト上でinitial namespaceのroot権限で実行されるため、完全なホスト制御が可能になります。


影響範囲

影響を受ける環境

  • cgroups v1 が有効なすべてのLinuxカーネル(Linux 5.17 rc3 以前のアンパッチ版)
  • 特に以下の環境でリスクが高まります:
環境 リスク
DockerホストでSELinux/AppArmor無効 コンテナエスケープ→ホスト制御
Kubernetes(cgroups v1使用) コンテナからノード全体への権限昇格
共有マルチテナント環境 他テナントへの影響
cgroups v2 未移行環境 引き続き攻撃面が残存

攻撃が成立する条件

  • 攻撃者がコンテナまたは制限されたプロセス内でのコード実行権限を持つ
  • ホストカーネルがパッチ未適用
  • かつ、以下のいずれかが当てはまる:
  • SELinux / AppArmor / Seccomp が無効または適切に設定されていない
  • CAP_SYS_ADMIN に関するコンテナのケイパビリティ設定が不適切

悪用された場合のリスク

  • コンテナからのエスケープによるホストOS root権限取得
  • ホスト上での任意コマンド実行(ランサムウェア展開、横移動、データ窃取)
  • Kubernetesノード全体の制御奪取

対応策・回避策

1. カーネルアップデート(最優先)

ディストリビューションごとに修正済みカーネルが提供されています。

Ubuntu

sudo apt update
sudo apt upgrade linux-image-$(uname -r)
sudo reboot

# アップデート後にカーネルバージョンを確認
uname -r

RHEL / Rocky Linux / AlmaLinux

sudo dnf update kernel
sudo reboot

# アップデート後にカーネルバージョンを確認
uname -r

Debian

sudo apt update && sudo apt dist-upgrade
sudo reboot

2. 即時回避策(パッチ適用までの暫定対処)

パッチ適用が難しい場合、以下の対策でエスケープのリスクを大幅に低減できます。

Seccompの有効化

# Dockerの場合: デフォルトのseccompプロファイルが有効であることを確認
docker info | grep -i seccomp
# 出力例: seccomp: true

# 明示的にseccompを有効化して起動する例
docker run --security-opt seccomp=/etc/docker/seccomp.json your-image

AppArmorの有効化(Ubuntu/Debian)

# AppArmorが有効か確認
sudo aa-status

# DockerのデフォルトAppArmorプロファイルが適用されているか確認
docker run --security-opt apparmor=docker-default your-image

SELinuxの有効化(RHEL系)

# SELinuxの状態確認
getenforce
# Enforcing が理想。Permissive や Disabled の場合は設定変更を検討

# /etc/selinux/config を編集してEnforcingに変更後、再起動

cgroups v2 への移行(根本的な解決)

# システムがcgroups v2を使用しているか確認
stat -fc %T /sys/fs/cgroup/
# tmpfs → v1、cgroup2fs → v2

# cgroups v2 に移行する(GRUB設定変更の例)
sudo sed -i 's/GRUB_CMDLINE_LINUX="/GRUB_CMDLINE_LINUX="systemd.unified_cgroup_hierarchy=1 /' /etc/default/grub
sudo update-grub
sudo reboot

確認方法

自分の環境が影響を受けるかどうかを以下のコマンドで確認できます。

# 1. カーネルバージョン確認(5.17以上かつパッチ適用済みが理想)
uname -r

# 2. cgroups v1 / v2 どちらを使用しているか確認
stat -fc %T /sys/fs/cgroup/
# cgroup2fs → v2(安全)、tmpfs → v1(要確認)

# 3. コンテナにCAP_SYS_ADMINが付与されていないか確認(Dockerの場合)
docker inspect <container_id> | grep -i CapAdd

# 4. OSS製のチェッカーを使用する場合(コンテナ内から実行)
# https://github.com/SofianeHamlaoui/CVE-2022-0492-Checker
curl -s https://raw.githubusercontent.com/SofianeHamlaoui/CVE-2022-0492-Checker/main/checker.sh | bash

まとめ

CVE-2022-0492 は2022年に修正されたにもかかわらず、2026年6月にCISA KEVへ追加されるほど現在も積極的に悪用されている脆弱性です。
コンテナ環境でのホストエスケープを可能にする深刻な問題であり、DockerやKubernetesを使用しているインフラ環境は早急な対応が求められます。
まずはカーネルアップデートを最優先で実施し、並行してSeccomp・SELinux/AppArmorの設定確認と、cgroups v2への移行計画を立てることをお勧めします。


参考リンク

  • NVD:https://nvd.nist.gov/vuln/detail/cve-2022-0492
  • CISA KEV:https://www.cisa.gov/known-exploited-vulnerabilities-catalog
  • Red Hat Advisory:https://access.redhat.com/security/cve/cve-2022-0492
  • Ubuntu Security:https://ubuntu.com/security/CVE-2022-0492
  • Palo Alto Unit42 Analysis:https://unit42.paloaltonetworks.com/cve-2022-0492-cgroups/
  • Sysdig Blog:https://www.sysdig.com/blog/detecting-mitigating-cve-2022-0492-sysdig
  • CVE-2022-0492 Checker (GitHub):https://github.com/SofianeHamlaoui/CVE-2022-0492-Checker

コメント