Dirty Frag: 新しいLinuxルートエクスプロイトの分析 (CVE-2026-43284)

Dirty Frag: 新しいLinuxルートエクスプロイトの分析 (CVE-2026-43284)

Linuxサーバーの世界は、わずか8日間で2つの重大なルートエクスプロイトに見舞われました。Copy Failの衝撃に続き、「Dirty Frag」(CVE-2026-43284)として知られる新しい脆弱性が明らかになり、ターゲットサーバー上でコードを実行できる者に対して、ルートアクセスへの決定論的なパスを提供しています。

この脆弱性は、レースコンディションに基づいているのではなく、カーネルがメモリを処理する方法におけるロジックの欠陥に基づいているため、特に危険です。これにより、エクスプロイトの信頼性が非常に高く、実行が容易になっています。

Dirty Fragの理解

Dirty Fragは単一のバグではなく、2つのLinuxカーネルの脆弱性を組み合わせたチェイン・エクスプロイトです:CVE-2026-43284CVE-2026-43500

技術的な根本原因

CVE-2026-43284脆弱性の核心は、LinuxカーネルのIPsec/ESPパスにあります。具体的には、MSG_SPLICE_PAGESを使用してパイプからネットワークバッファ(skb)にページを直接アタッチする場合、IPv4/IPv6データグラムパスがそれらのページを共有としてマークするのに失敗していました。

このため、共有パイプページから作成されたESP-in-UDPパケットは、カーネルからはプライベート所有のバッファとして見えます。その結果、カーネルはESPの復号をインプレースで行い、skbが実際には所有していないメモリ上に直接書き込みます。これにより、攻撃者はカーネルのページキャッシュへの制御された書き込みを実現でき、それを利用してルート権限への昇格が可能になります。

決定論 vs. レースコンディション

DirtyPipeのような以前の高名なエクスプロイトとは異なり、Dirty Fragは決定論的なロジックの欠陥です。研究者のHyunwoo Kimによると、このエクスプロイトは非常に高い成功率を誇り、カーネルパニックを引き起こすリスクが最小限です。「タイミングの窓」を狙う必要がないため、他の多くのローカル権限昇格(LPE)脆弱性よりも大幅に信頼性が高くなっています。

Copy Failとの関連性

Dirty Fragは、4月29日に公開されたCopy Fail (CVE-2026-31431)と同様のパターンに従っています。両方の脆弱性は、ルート昇格を達成するためにページキャッシュへの書き込みプリミティブを利用しています。

Copy Failが暗号化サブシステム(具体的にはauthencesn AEADテンプレート)を標的としていたのに対し、Dirty FragはIPsec受信パスを標的としています。セキュリティコミュニティは、CVE-2026-43284を「Copy Fail 2.0」と呼び始めており、これは単一の事象ではなく、繰り返される攻撃クラスを象徴しているためです。

極めて重要なことに、CVE-2026-43284とCVE-2026-43500の連鎖は、個々の欠陥の盲点を補い合っています。どちらも単独では完全なルート昇格のための十分な信頼性の高いプリミティブを提供しませんが、組み合わさることで、ほとんどのディストリビューションにおいて即時のルートアクセスを提供します。

影響を受けるシステムと影響範囲

2017年以降にビルドされたほぼすべての主要なLinuxカーネルが影響を受けます。これには、以下の主要なディストリビューションが含まれます:

  • Red Hat Enterprise Linux (RHEL)
  • AlmaLinux (バージョン 8, 9, 10)
  • Debian
  • Ubuntu
  • Fedora
  • Arch Linux
  • CentOS
  • CloudLinux
  • Amazon Linux

脅威ベクトル

Dirty Fragはローカル権限昇格であることを明確にすることが重要です。攻撃者は、まず脆弱なWordPressプラグイン、Webシェル、または侵害されたSSH認証情報などを通じて、システム上で足がかりを得る必要があります。しかし、一度その初期侵入が達成されると、Dirty Fragにより攻撃者は低権限ユーザーから直ちにルートへジャンプすることができ、セキュリティツールの無効化、ログの改ざん、ネットワーク内での横移動が可能になります。

修正と緩和策

主要な修正:カーネルの更新

唯一の決定的な解決策は、カーネルを更新してサーバーを reboot することです。パッチ適用済みのカーネルは2026年5月8日頃にリリースされました。

RHELベースのシステム (AlmaLinux, Rocky, CentOS Stream) の場合:

sudo dnf clean metadata && sudo dnf upgrade
sudo reboot

Debian/Ubuntuシステムの場合:

sudo apt update && sudo apt upgrade
sudo reboot

一時的な緩和策

すぐに再起動ができない場合は、脆弱なモジュールがロードされるのをブロックすることができます。警告: これにより、IPsec VPNトンネルや、esp4 または esp6 に依存するKubernetesネットワークポリシーが動作しなくなります。

printf 'install esp4 /bin/false
install esp6 /bin/false
install rxrpc /bin/false
' > /etc/modprobe.d/dirtyfrag.conf
rmmod esp4 esp6 rxrpc 2>/dev/null
echo 3 > /proc/sys/vm/drop_caches

最終的な考察

8日間で2つの普遍的なLPEが相次いで発生したことは、脆弱性ランドスケープの重要な転換点を示しています。Dirty Fragの公開は、脆弱なエクスプロイトの詳細が第三者からリークしたことにより、さらに複雑化しました。早期の公開を強制されました。

一部のコミュニティメンバーが指摘しているように、AI駆動の脆弱性研究が進んでいることが、これらの欠陥陥の発見を加速させている可能性があります。それが「無限のAEyes」によるソースコードの監視によるものか、あるいはより洗練された自動化によるものかに関わらず、実態は、発見からエクスプロイトまでの期間が今や数時間単位で測定されるようになっているということです。カーネルの更新は、予定されたメンテナンスではなく、緊急のセキュリティパッチとして扱うべきです。

Sources