Linuxカーネルに新たな特権昇格の脆弱性「Bad Epoll」が判明、Androidにも影響 — AIが見落とした競合状態のバグ
要点
-
Linuxカーネルに一般ユーザーが最上位の管理権限(ルート権限)を取得できる脆弱性「Bad Epoll(CVE-2026-46242)」が発見されました。
-
この脆弱性はLinuxデスクトップやサーバーだけでなく、一般的な特権昇格バグが到達しにくいAndroidデバイスにも影響を及ぼします。
-
脆弱性は、Anthropic社のAIモデル「Mythos」が同領域で別のバグを発見した際に見落としたもので、研究者のJaeyoung Chung氏によって特定されました。
-
epoll機能は無効化できないため回避策はなく、カーネル6.4以降を対象とする修正用コミットの適用が推奨されています。
-
現時点で実際の攻撃への悪用は確認されておらず、CISAの「既知の悪用された脆弱性」リストにも登録されていません。
-
Linuxカーネルにおいて、権限を持たない一般ユーザーがシステムの完全な制御権を取得できてしまう新たな脆弱性「Bad Epoll(CVE-2026-46242)」が発見された。セキュリティ研究者のJaeyoung Chung(ジェヨン・チャン)氏が脆弱性を特定し、実証コードを公開したことで、2026年7月3日(現地時間)に詳細が明らかになった。この脆弱性はLinuxのデスクトップやサーバーだけでなく、Androidデバイスにも影響を与えるという。
脆弱性「Bad Epoll」の仕組みと危険性
「Bad Epoll」は、プログラムが多数のファイルやネットワーク接続を同時に監視できるようにするLinuxカーネルの標準機能「epoll(イーポール)」に存在する。epollはWebサーバーやブラウザなどで広く使われており、システムから無効化することができない不可欠な機能である。
この脆弱性は、メモリの「ユースアフターフリー(Use-After-Free:メモリが解放された後にその領域にアクセスしてしまう脆弱性)」と呼ばれるバグに分類される。カーネル内の2つの処理パスが、同じ内部オブジェクトを同時に解放しようとすることで発生する。一方の処理がメモリを解放している最中に、もう一方がそのメモリ領域への書き込みを行うため、メモリの競合状態(レースコンディション)が引き起こされる。攻撃者はこの短い競合の隙を突き、カーネルメモリを改ざんすることで、一般アカウントからルート権限へと昇格させることが可能になる。
競合が発生するタイミングは極めて狭く、わずか6マシン命令ほどの幅しかない。そのため、ランダムな攻撃が成功することはほとんどないが、Chung氏が開発した実証コード(エクスプロイト)はこのタイミングの窓を広げ、システムをクラッシュさせることなく再試行を繰り返すことで、テストされたシステムにおいて約99%の確率でルート権限の奪取に成功した。
さらに本脆弱性が危険視される理由は2点ある。第1に、Chromeのレンダラーサンドボックス(信頼できないコードを隔離実行するための安全な仮想環境)の内部からでも実行可能であること。第2に、多くのLinux特権昇格バグが到達できないとされるAndroidオペレーティングシステムにも影響が及ぶことである。
AIモデル「Mythos」の発見と見落とし
興味深いことに、この脆弱性が存在するコード領域は、Anthropic社が開発した強力なAIモデル「Mythos(ミトス)」が最近別の脆弱性を発見した場所と全く同じ箇所であった。
このコード領域は、2023年に行われたepoll機能への単一の変更に端を発している。AIモデル「Mythos」は、このコード変更から生じた最初の脆弱性「CVE-2026-43074」を発見し、2026年初頭に修正が適用されていた。しかし、同じ場所に潜んでいた「Bad Epoll」は見落とされていたのである。
Chung氏は、AIがこの脆弱性を見落とした理由について、確実なことは言えないとしつつも2つの可能性を指摘している。
1つ目は、競合状態が発生するタイミングの窓が極めて狭く、コードを直接精査していても正確な実行順序を視覚化することが極めて困難である点だ。
2つ目は、実行時の痕跡が残りにくい点である。最初のバグが修正された後、Bad Epollによるメモリエラーは、カーネルの主要なバグ検出ツールであるKASAN(Kernel Address Sanitizer:メモリ誤用を検出するためのデバッグツール)をトリガーしないことが多く、異常を知らせるフラグが立ちにくい状態にあったという。
影響範囲と対策
現時点で、この脆弱性が実際の攻撃で悪用された形跡はない。米国サイバーセキュリティ・インフラセキュリティ庁(CISA)の「既知の悪用された脆弱性(KEV)」リストにも登録されておらず、稼働する実証コードはGoogleの「kernelCTF」プログラムにゼロデイとして報告されたもののみである。なお、Android向けのエクスプロイトコードは現在も作成中だという。
本脆弱性の影響を受けるのは、Linuxカーネル6.4以降でビルドされ、かつ修正が適用されていないシステムである。一方、脆弱性を生んだコード変更が行われる前のバージョンである6.1ベースの古いカーネル(Pixel 8などの一部のAndroid端末を含む)は影響を受けない。
epoll機能は無効化できないため、回避策は存在しない。管理者やユーザーは、アップストリームのコミット「a6dc643c6931」を適用するか、各Linuxディストリビューションから提供されるバックポート(新しいバージョンの修正コードを古いバージョンに移植して適用すること)が到着し次第、速やかに更新をインストールするよう呼びかけられている。
相次ぐLinuxカーネルの特権昇格問題
今回の「Bad Epoll」は、Androidをルート化するために使われてきた過去の著名なカーネル脆弱性ファミリー(Bad Binder、Bad IO_uring、Bad Spinなど)に加わる新たな事例となった。
また、最近のLinuxカーネルでは、異なる仕組みによる特権昇格の脆弱性が相次いで報告されている。2026年4月に発見され、すでにCISAのKEVリストに追加された「Copy Fail(CVE-2026-31431)」をはじめ、その後に報告された「Dirty Frag」チェーン、「Fragnesia」、「DirtyClone」、「pedit COW」など、確定的なページキャッシュ書き込みのバグが連続しており、Linuxコミュニティにとって慌ただしい時期が続いている。