「Copy Fail → Dirty Frag → Fragnesia」—— Linuxが3週連続でroot化される脆弱性まとめと今すぐやるべき対策
2026年5月15日
3週連続…本当に終わらないのか?
4月末から5月中旬にかけて、Linuxカーネルで3つ連続のローカル権限昇格(LPE)脆弱性が公開されました。 どれも未認証のローカルユーザーがrootを取れるもので、しかもPoCが1コマンドで動くレベル。 しかも3つとも「ページキャッシュに任意書き込み」という同じ攻撃の本質を持っています。
1週目:Copy Fail(CVE-2026-31431)
2週目:Dirty Frag(CVE-2026-43284 / 43500)
3週目:Fragnesia(CVE-2026-46300)
今回は時系列で整理し、過去に書いた2本の記事もリンクしながら、今すぐできる対策をまとめます。
時系列まとめ(2026年4月〜5月)
(参考:V12 security team / William Bowling氏)
各脆弱性の簡単振り返り
① Copy Fail
(4/30に記事執筆)
「9年間潜んでいた732バイトPythonでroot化」 algif_aeadモジュールのin-place最適化バグを悪用。 AF_ALGソケット+splice()で、読み取り専用ファイル(/usr/bin/suなど)のページキャッシュを4バイト書き換え。 ディスクは一切変更されず、再起動で元に戻る「メモリ限定攻撃」。
→ 詳細は過去記事をご覧ください: 「Copy Fail」CVE-2026-31431 — 9年間潜んでいた732バイトPythonでLinuxがroot化される脆弱性と対策
② Dirty Frag & Copy Fail 2
(5/9に記事執筆)
Dirty Fragはxfrm/ESPモジュールのpage frag処理バグ。 Copy Fail 2(Electric Boogaloo)は同じesp4モジュールをUDP spliceという別経路で攻撃。 「Dirty Fragの修正パッチで塞がるはず…?」と思ったら、実は別バグが残っていたのが次に繋がります。
→ 詳細はこちら: 「Copy Fail 2: Electric Boogaloo」 — Linuxが3週連続でroot化される脆弱性とその対策
③ Fragnesia(今回新登場)
Dirty Frag修正パッチの「意図しない副作用」で生まれた最新版。 ESP-in-TCP(espintcp ULP)を使い、splice()で読み取り専用ファイルをTCP受信キューに挿入 → AES-GCM復号のin-place処理で1バイトずつ確定書き換えが可能に。 IV nonceを256通り試すだけで任意の1バイトを好きな値にできるため、PoCは驚くほどシンプルです。
PoCリポジトリ:https://github.com/v12-security/pocs/tree/main/fragnesia
技術詳細(一番わかりやすい解説):Wizブログ / AlmaLinux公式ブログ
https://www.wiz.io/blog/fragnesia-linux-kernel-local-privilege-escalation-via-esp-in-tcp
共通点:すべてページキャッシュ限定攻撃。ディスクは汚染されず、再起動で消える。 違い:攻撃に使うカーネルモジュールが少しずつ違う(algif_aead → esp4/esp6/rxrpc → espintcp)。
今すぐやるべき対策(最優先はこれ!)
FragnesiaもDirty Fragと同じ緩和策でほぼ防げます(幸い)。
① 即時ワークアラウンド(全ディストリ共通・数秒で完了)
# モジュール強制無効化(IPsec VPNを使っていない限り安全)
sudo rmmod esp4 esp6 rxrpc algif_aead 2>/dev/null || true
sudo sh -c 'cat > /etc/modprobe.d/disable-fragnesia.conf << EOF
install esp4 /bin/false
install esp6 /bin/false
install rxrpc /bin/false
install algif_aead /bin/false
EOF'
# initramfs更新(Debian/Ubuntu系)
sudo update-initramfs -u
# RHEL/AlmaLinux系の場合
sudo dracut -f② 本質的解決:カーネル更新
AlmaLinux:すでにtestingリポジトリでパッチ済みカーネル公開済み dnf install -y almalinux-release-testing && dnf update 'kernel*' --enablerepo=almalinux-testing
Ubuntu / Debian / Fedora / RHEL / Rocky:順次セキュリティ更新配信中 → 通常のapt upgrade or dnf update kernelでOK
Amazon Linux:espintcp非提供のため影響なし
③ ページキャッシュをクリア(疑わしい場合)
sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'影響範囲(主要ディストリ)
ほぼ全ての2017年以降のカーネル(特に5.10以降)が対象。 共有サーバー、コンテナホスト、CI/CDランナー、学生用演習環境が特に危険です。
終わりに
3週連続で「ページキャッシュ書き換え」系のLPEが連発している状況は、正直異例です。 カーネル開発チームも必死に修正を進めていますが、私たち運用者は「モジュール無効化」というシンプルなワークアラウンドを徹底するしかありません。
過去2記事も併せて読んでいただければ、この一連の攻撃トレンドが完全に理解できるはずです。
今日中に上記のコマンドを実行して、安心して週末を迎えましょう!
参考リンク
いいなと思ったら応援しよう!
サーバー代とコーヒー代になります☕ 役に立ったら応援よろしくお願いします!


コメント