概要
- Dirty Frag は、全主要Linuxディストリビューションでroot権限を取得できる LPE(特権昇格)脆弱性。
- 2つの未修正脆弱性 を連鎖利用し、即時にroot権限を奪取可能。
- パッチやCVEは未提供、責任ある開示スケジュールが破綻したため公開。
- 影響範囲が広範 で、緊急の対策が必要。
- モジュールの無効化コマンド と 詳細技術情報URL が提供されている。
Dirty Frag: Universal Linux LPE脆弱性レポート
- Dirty Frag は、全主要Linuxディストリビューションに影響する ローカル特権昇格(LPE)脆弱性。
- 過去の Copy Fail 脆弱性と同等の深刻な影響。
- 2つの未修正脆弱性 を組み合わせて利用する手法。
- パッチ未公開、CVE番号も未発行。
- 責任ある開示スケジュールが破綻 し、保守者の要請で公開に至る。
一時的な緩和策
- 脆弱なカーネルモジュール(esp4, esp6, rxrpc)のロードを無効化するコマンド例:
sh -c "printf 'install esp4 /bin/false\ninstall esp6 /bin/false\ninstall rxrpc /bin/false\n' > /etc/modprobe.d/dirtyfrag.conf; rmmod esp4 esp6 rxrpc 2>/dev/null; true" - 恒久的な対策にはカーネルパッチが必須。
技術詳細と追加情報
- 詳細な技術情報やエクスプロイトコードはdirtyfrag.ioで公開。
- 公開された PoC(概念実証)コード は、
/usr/bin/su等の実行ファイルをrootシェルに置き換える内容。 - 攻撃者はローカルユーザー権限からroot取得が可能。
- 影響範囲は極めて広範、クラウド環境やオンプレミス問わずLinuxサーバ全般。
参考:脆弱性利用の流れ(概要)
- ネットワーク名前空間・ユーザー名前空間 を悪用し、カーネルの脆弱性をトリガー。
- Netlink/XFRMインターフェース を通じて、任意のカーネルメモリ操作を実現。
- ELFバイナリ(例:su)を任意のシェルコードで上書き、rootシェル取得。
対策と推奨アクション
- 直ちに該当モジュールの無効化 を実施。
- ディストリビューション公式の脆弱性情報 や パッチ提供状況 を随時確認。
- サーバ管理者・運用担当者は緊急対応体制の構築。
- モジュールの恒久無効化
- サーバアクセス監査強化
- root権限取得イベントの即時検知
まとめ
- Dirty FragはLinux環境への重大なリスク。
- パッチリリースまでの間、モジュール無効化等の緩和策を徹底。
- 公式発表やdirtyfrag.ioの情報に継続的な注意 が必要。
「禁輸が破られたので、これらの脆弱性に対するパッチやCVEは存在しません。」 重要な点: 「Copy Failがこの研究を始めるきっかけでした。特に、Dirty Frag脆弱性チェーンのxfrm-ESPページキャッシュ書き込みは、Copy Failと同じシンクを共有しています。しかし、algif_aeadモジュールが利用可能かどうかに関係なくトリガーされます。つまり、一般に知られているCopy Failの緩和策(algif_aeadブラックリスト)が適用されているシステムでも、あなたのLinuxはDirty Fragに対して依然として脆弱です。」 緩和策(私はテストや確認はしていません!): 「責任ある開示スケジュールと禁輸が破られたため、どのディストリビューションにもパッチは存在しません。脆弱性が発生するモジュールを削除するには、以下のコマンドを使用してください。」 sh -c "printf 'install esp4 /bin/false\ninstall esp6 /bin/false\ninstall rxrpc /bin/false\n' > /etc/modprobe.d/dirtyfrag.conf; rmmod esp4 esp6 rxrpc 2>/dev/null; true" 緩和策に関する会話では、再起動が必要か、すでに悪用されたマシンで上記の後にこれを実行する必要があるようです: sudo echo 3 > /prox/sys/vm/drop_caches