「Copy Fail」として知られる「CVE-2026-31431」は、2017年から潜伏していた「Linux」カーネルの深刻な脆弱(ぜいじゃく)性であり、現在セキュリティ上の大きな注目を集めている。通常、Linuxの脆弱性は過大評価される傾向にあるが、今回のケースは例外といえる。Copy Failは極めて重大な問題であり、速やかな対策を講じる必要がある。
この脆弱性は、特定のデータ形式のセキュリティ処理を担うLinuxシステム上の欠陥に起因する。システムへの基本的なアクセス権限を持つ攻撃者が、コンピューターのRAM内に存在する極めて重要なデータを改ざんすることを可能にする。この改ざんが行われると、システムは攻撃者をrootユーザーであると誤認し、攻撃者にシステム全体の完全なコントロール権限を与えてしまう。
これまでLinuxを襲った他の脆弱性とCopy Failが異なる点は、攻撃の実行に際して特定のタイミングや複雑な手順を必要としないことにある。攻撃の難易度が極めて低い一方で、その影響は壊滅的なものになりかねない。
技術的な詳細を補足すると、この脆弱性は「AF_ALG」ソケットインターフェースと「splice()」システムコールを悪用し、読み取り可能な任意のファイルに対応するカーネルのページキャッシュのうち、わずか4バイトを上書きする。これにより、攻撃者はメモリー上の「su」コマンドなどの「setuid」バイナリーを書き換え、root権限を取得することが可能になる。
Copy Failはいわゆる「レースコンディション(競合状態)」を利用したエクスプロイトとは異なり、権限昇格のためにタイミングに依存した試行を繰り返す必要がない、安定かつ直線的な脆弱性である。
Copy Failの影響範囲は、4.14から6.19.12までの全てのLinuxカーネルに及ぶ。2017年から2026年現在に至るまでの広範なバージョンが対象となっている。
Xint Codeのリサーチチームによれば、この発見はAI支援によるものだが、発端はTheoriの研究者であるTaeyang Lee氏の知見だったという。同氏がLinuxの暗号化サブシステムとページキャッシュにバックアップされたデータの相互作用を研究していた際、「Xint Code」を用いて研究対象を暗号化サブシステム全体に広げた結果、Copy Failが最も重大な知見として特定された。
この脆弱性を回避する最も簡単な方法は、カーネルを最新バージョンに更新することだ。自身のカーネルがCopy Failに対してパッチ適用済みかどうかを確認するには、以下のコマンドを実行すればよい。
dpkg -l kmod grep -qE '^algif_aead ' /proc/modules && echo "Affected module is loaded" || echo "Affected module is NOT loaded"
パッチが適用されていれば「Affected module is NOT loaded」と表示されるが、未適用の場合は「Affected module is loaded」と表示される。後者の場合は、直ちにシステムを更新してコマンドを再実行する必要がある。更新後もパッチが適用されない場合は、以下のコマンドで「algif_aead」モジュールを無効化できる。
install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf
続けてこのコマンドを実行して同モジュールをアンロードすることで保護状態を維持できる。
RMMOD algif_aead

提供:Kerry Wan/ZDNET
この記事は海外Ziff Davis発の記事を4Xが日本向けに編集したものです。


