
Linux カーネルの暗号化モジュール authencesn は 2017 年に AEAD(認証付き暗号化)操作に対するインプレース(in-place)最適化を導入しました。この最適化により、特定の条件下でページキャッシュ(page cache)内の読み取り専用ページが誤って書き込み可能なターゲット・スキャッタリスト(scatterlist)に配置される可能性があります。攻撃者は AF_ALG ソケットで公開されているカーネル暗号化 API を splice() システムコールと組み合わせて利用し、上記の論理的欠陥を悪用して setuid バイナリ(例:/usr/bin/su)のページキャッシュへの 4 バイト任意書き込みを実現し、プログラムのロジックを改ざんして root シェルを取得します。
このエクスプロイトのプロセス全体は直線的なロジックであり、競合ウィンドウ(race window)は不要で、カーネル固有のオフセットも不要、特別なツールの事前インストールも不要です。
ローカル権限昇格から root へ:任意のローカル一般ユーザーアカウントが無条件に root へ権限昇格できます。
コンテナエスケープ:Kubernetes / コンテナ環境では、ページキャッシュはホストで共有されるため、コンテナ内の攻撃者はコンテナの境界を突破し、ホストノードおよび同一ノード上の他のテナントを危険にさらす可能性があります。
CI/CD 環境の侵害:GitHub Actions、GitLab Runner、Jenkins Agent など、信頼できないコードを実行する CI 環境では、攻撃者は悪意のある PR を通じて Runner ホストの root 権限を直接取得できます。
クラウドのマルチテナント環境:Notebook、Serverless、Agent サンドボックスなど、ユーザーコードを実行するクラウドサービスでは、テナントがホストの root へ権限昇格できます。
脆弱性は約 10 年間継続:問題のコードは 2017 年に導入され、その後すべての Linux ディストリビューションが影響を受けています。
2017 年からパッチ公開前までに構築されたすべての Linux カーネルバージョンが対象で、以下を含みます:
| ディストリビューション | 影響を受けるカーネルバージョン |
| Ubuntu 24.04 LTS | 6.17.0-1007-aws 以下 |
| Amazon Linux 2023 | 6.18.8-9.213.amzn2023 以下 |
| RHEL 14.3 | 6.12.0-124.45.1.el10_1 以下 |
| SUSE 16 | 6.12.0-160000.9-default 以下 |
| Debian / Arch / Fedora / Rocky / Alma / Oracle | 同期のカーネルバージョンはすべて影響を受けます |
mainline commit a664bf3d603d を含むカーネルバージョンへアップグレードしてください。各主要ディストリビューションは順次修正バージョンをリリースしています:
# Ubuntu / Debian
apt update && apt upgrade linux-image-$(uname -r)
# RHEL / CentOS / Rocky / Alma
dnf update kernel
# Amazon Linux
yum update kernel
# SUSE
zypper update kernel-default
アップグレード後、システムを再起動して新しいカーネルを有効にし、以下のコマンドで修正 commit が含まれているか検証してください:
grep -r "a664bf3d603d" /proc/version 2>/dev/null || uname -r
# 修正commitが含まれているか、またはディストリビューション公式アナウンスの修正バージョン番号と比較して検証
algif_aead カーネルモジュールを無効にすることで、脆弱性の悪用経路を遮断できます:
# 恒久的に無効化(再起動後に有効)
echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf
# 即時アンロード(現在のセッションで有効)
rmmod algif_aead 2>/dev/null || true
algif_aead 無効化の影響評価:
影響なし:dm-crypt/LUKS、kTLS、IPsec/XFRM、OpenSSL/GnuTLS/NSS のデフォルトビルド、SSH、カーネルキーリング暗号化——これらのコンポーネントはカーネル暗号化 API を直接使用し、AF_ALG を経由しません。
影響の可能性あり:afalg エンジンを明示的に有効にした OpenSSL、一部の組み込み暗号化オフロードパス、aead/skcipher/hash ソケットに直接バインドするアプリケーション。lsof | grep AF_ALG または ss -xa で現在のシステムで AF_ALG を使用しているプロセスがあるか確認できます。