Linux『Copy Fail』脆弱性、世界のサーバー乗っ取りの恐れ。期限まで3日
Linuxカーネルの新たな深刻脆弱性『Copy Fail』(CVE-2026-31431)が公開。732バイトのコードで全主要ディストロの管理者権限を奪える。CISAの修正期限は5月15日。今日できる多層防御フレームを解説。
ニュース
kkm
Backend Engineer / AWS / Django
Linuxカーネルの新たな深刻脆弱性『Copy Fail』(CVE-2026-31431)が公開。732バイトのコードで全主要ディストロの管理者権限を奪える。CISAの修正期限は5月15日。今日できる多層防御フレームを解説。
たった732バイトのPythonスクリプト。それだけで、Ubuntu、Red Hat、Amazon Linuxといった世界のほぼすべてのLinuxサーバーで、一般ユーザーが管理者権限(root)を奪える——そんな脆弱性が公開されました。
CVE-2026-31431、通称「Copy Fail(コピーフェイル)」。Linuxの心臓部にあるカーネルの暗号処理に存在するバグで、影響範囲は2017年以降にリリースされたほぼ全てのLinuxシステムです。クラウド事業者・コンテナ運用者を直撃する内容で、米サイバーセキュリティ庁(CISA)は5月1日にこれを「実際に攻撃されている脆弱性リスト(Known Exploited Vulnerabilities, KEV)」へ追加し、米連邦機関に対し2026年5月15日までのパッチ適用を義務付けました。今日(5月12日)の時点で、残り3日です。
Microsoftの調査によれば、攻撃の試みも既に観測されています。Linuxを使うほぼすべての組織にとって、これは「今週中に動かないと危ない」案件です。
Copy Failとはどんな脆弱性か
Copy Failは、Linuxカーネルの「暗号処理を担当する部品」にあるバグです。
少し噛み砕いて説明します。Linuxはディスク暗号化(dm-crypt)やIPsec通信など、内部で暗号処理を多用します。これを行うために、カーネルにはアプリケーションから暗号機能を呼び出すための窓口があり、その仕組みのひとつが「AF_ALG」(AFアルジー)と呼ばれるソケットです。ここで言うソケットは、プログラムからカーネルの機能にアクセスするための通信路と考えてください。
問題は、暗号処理の中で2017年に追加された「インプレース最適化」という処理にありました。本来「処理元のデータ」と「処理結果の保存先」は別のメモリ領域であるべきところを、効率化のためにわざと同じメモリを使い回す最適化です。これと、ファイルの一部を別の場所に動かすsplice()というシステムコールを組み合わせることで、攻撃者はメモリ上にキャッシュされたファイルの内容を、4バイト分だけ任意に書き換えられることが分かりました。
たった4バイトと侮ってはいけません。Linuxには「suコマンド」「sudoコマンド」のように、実行されると自動的にroot権限で動く特権バイナリがあります。これらのバイナリのメモリイメージを4バイトだけ書き換えるだけで、攻撃者は任意のコードをroot権限で実行できるようになります。
不気味なのは、ディスク上のファイル自体は一切変更されないという点です。書き換えはメモリ上のキャッシュ領域(page cache、ページキャッシュ)でしか起きません。通常のフォレンジック調査では「ファイルが改ざんされていない」と見えるため、攻撃の痕跡が残りにくい構造です。
技術的な詳細は、セキュリティ企業Xint、Palo Alto Networks Unit 42、Tenableのレポートにまとまっています。
「攻撃は決定論的に成立し、レース条件(タイミング次第で失敗する不安定さ)に依存しない。732バイトの単一Pythonスクリプトで100%の成功率で動作する」(Unit 42レポートより)
なぜ全ディストリビューションが同時に影響を受けるのか
普通、Linuxの種類(ディストリビューション)はUbuntu、Red Hat、Debian、SUSE と無数に枝分かれしています。それでもCopy Failが「全ディストロ同時陥落」と言われるのは、バグの場所がLinuxカーネル本体だからです。
Linuxカーネルとは、OSの心臓部にあたるソフトウェアです。UbuntuもRed Hat Enterprise LinuxもAmazon Linuxも、Linuxカーネルという「同じエンジン」を別々の車体に積み込んでいるだけ、というイメージに近いです。エンジンにヒビが入れば、車体の違いに関係なく走れません。
| ディストリビューション | 影響範囲 |
|---|---|
| Ubuntu | 14.04 / 16.04 / 18.04 / 20.04 / 22.04 / 24.04 / 25.10 (26.04は対象外) |
| Red Hat Enterprise Linux | 10.1 ほか主要バージョン |
| Amazon Linux | 2023 |
| SUSE | SUSE Linux Enterprise 16 |
| Debian / Fedora / Arch / AlmaLinux | 2017年以降のカーネル (4.14〜6.19.12)全リリース |
商用サーバー、自宅サーバー、Kubernetesクラスタ、AWSのEC2インスタンス、IoT機器、Android端末の一部——デスクトップLinuxのシェアがついに5%を超えたように、Linuxが動いている現場は年々増えています。Copy Failはそのほぼ全てを射程に入れます。
Unit 42 は「数百万システムが対象」と推定しました。Microsoftは「数百万のKubernetesクラスタが影響範囲」と表現しています。
全ディストロを巻き込むLinux脆弱性の系譜
Linuxカーネルが「主要ディストロを同時に巻き込む」深刻な権限昇格バグを出すのは、これが初めてではありません。過去にも近い構造のバグが定期的に発生しており、見比べると今回の位置付けが分かりやすくなります。
PwnKit(2022年、CVE-2021-4034)——polkitという権限管理ツールのSUIDバイナリのバグ。Polkitが入った全主要ディストロでroot奪取が可能でした。
Dirty Pipe(2022年、CVE-2022-0847)——pipe_bufferのフラグ初期化漏れ。Linuxカーネル5.8以降全てが対象で、Androidスマートフォンも巻き込まれました。
Looney Tunables(2023年、CVE-2023-4911)——glibcというCライブラリの動的リンカのバッファオーバーフロー。Fedora・Ubuntu・Debianの全主要ディストロを直撃しました。
Copy Fail(2026年、CVE-2026-31431)——今回のバグ。
4件のバグは、攻撃面(バグがある場所)はそれぞれ別物です。polkitのSUIDバイナリ、カーネル内部のパイプ機構、glibcのリンカ、そして今回のカーネル暗号サブシステム。技術詳細はバラバラなのに、運用者から見れば「Linuxを使っている限り、ほぼ全部のサーバーで管理者権限を奪われ得る」という影響は同型で、対応も「即パッチを当てる」「攻撃者がいないか調べる」「クラウドで影響範囲を絞る」と同じ手順を踏むことになります。
2〜3年に1度、この型のバグが出ます。Copy Failはその系譜の最新作と捉えるのが妥当です。次に同型のバグが来たとき、本記事の判断フレームがそのまま使えます。
運用者がやるべきこと——多層の防御フレーム
「明日までに何をすればいいのか」を整理します。単一のスイッチで止められる脆弱性ではないため、4層に分けて段階的に対処します。
第1層:パッチを当てる(最優先)
Ubuntuの場合、以下のコマンドで対応するカーネルパッケージが取得できます(Ubuntu公式アナウンス)。
sudo apt update && sudo apt upgrade
sudo rebootRed Hat、Amazon Linux、SUSEもそれぞれパッチを公開しています。ベンダー別のパッチ情報は、各ディストリビューションの公式アドバイザリを確認してください。
第2層:すぐに再起動できない場合の暫定緩和策
問題の経路になっているalgif_aeadというカーネルモジュールを無効化すると、攻撃の経路を塞げます。Ubuntuは専用のkmodパッケージを通じて無効化を提供しています。手動でやる場合は、以下のファイルを作成します。
/etc/modprobe.d/disable-algif.conf
blacklist algif_aead
install algif_aead /bin/trueただし、ディスク暗号化やIPsec VPNなどで暗号機能を多用している環境では、事前に依存関係を確認してから適用してください。本番環境でいきなり適用すると、関連サービスが起動しなくなる可能性があります。
第3層:一般ユーザーの権限をさらに削る
攻撃の前提となる「一般ユーザーがカーネルの暗号機能を呼べる」状態自体を絞ります。サーバーの用途に応じて以下を検討してください。
- 一般ユーザーが新しい権限空間(user namespace)を作る機能を無効化:
sysctl kernel.unprivileged_userns_clone=0 - コンテナ実行時のseccompプロファイルで
AF_ALGソケットの作成やkeyctlを制限 - AppArmor / SELinuxで
socket(AF_ALG, ...)を呼べるバイナリを限定
第4層:監視で「未然」と「事後」を拾う
Unit 42は2つの検知パターンを推奨しています。
- 非rootユーザーが、通常想定されない親プロセスから
suコマンドを実行した場合 curlで何かをダウンロードした直後にsuが実行される(公開済みPoCの典型的なパターン)
eBPF(カーネル内で動く監視機構)を使ったソリューションでは、socket(AF_ALG, ...)とsplice()の組み合わせ呼び出しを警報対象に設定するのが有効です。Microsoft Defenderは既にCopy Fail関連の活動を検知対象に組み込んでいます。EDR(エンドポイント検知ソフト)を入れている組織はシグネチャの更新状況を確認してください。
クラウドとコンテナで影響が拡大する理由
Copy Failがもう一段恐ろしいのは、クラウドとコンテナの構造に効く点です。
DockerやKubernetesなどのコンテナ技術は、複数のコンテナがホストのLinuxカーネルを共有して動いています。コンテナの中の一般ユーザーがCopy Failを使った場合、こんな流れが成立します。
- コンテナ内でroot権限を取得(ここまではコンテナの中の話)
- ホストのカーネルは共有されているので、ホスト側のページキャッシュにも書き込み可能
- ホスト側の特権バイナリを汚染し、コンテナの外(ホストOS)に脱出
これが「コンテナを破る攻撃(コンテナブレイクアウト)」です。Microsoftは「数百万のKubernetesクラスタが影響範囲」と表現しました。
クラウド側でも、複数の顧客のワークロードが同じホストの上で動いているマルチテナント環境では、隣のテナントへの影響波及(lateral movement、横展開)が現実的な脅威になります。runCなどのコンテナランタイム単体の修正だけでは塞げないため、ホストのカーネル更新が必須です。
3月だけで日本の製造業7社がランサムウェア被害を公表したと先月レポートしたとおり、攻撃者は「足がかりを取った後の特権昇格の道具」を常に欲しがっています。Trivyのサプライチェーン連鎖侵害のような事案で初期アクセスを取った後、Copy Failは「次の一手」を与える脆弱性として機能します。
発見の経緯と公開タイムライン
公開済みの情報を整理しておきます。発見者は韓国のセキュリティ企業Theoriに所属するTaeyang Lee氏。Linuxカーネルの暗号サブシステムを調査する過程で、最初の攻撃面を特定しました。Xint Code Research Teamが AI を使った解析でこの発見を拡張し、約1時間で最も深刻な「Copy Fail」を特定しました。
タイムラインは以下のとおりです。
- 2026年3月23日——Linuxカーネルセキュリティチームへ初報
- 2026年4月1日——mainlineへパッチがコミット
- 2026年4月29日——Xintが脆弱性を公開
- 2026年5月1日——CISAがKEVへ追加、連邦機関に5月15日までのパッチ適用を義務化
- 2026年5月12日(本日)——KEV期限まで残り3日。Microsoft Defenderは「攻撃の準備段階の活動」を観測中
カーネル開発者の対応は24時間以内に開始され、9日でパッチがコミットされた、極めて迅速な対応でした。一方で、公開から2週間が経ち、PoCも公開された今、攻撃側にとっても準備期間は十分にあります。
残り3日、サーバー管理者は何をすべきか
5月15日のKEV期限まで、残り3日です。米連邦機関でなくとも、Linuxサーバーを運用している組織は同じ温度感で動くのが妥当です。
優先順位はこうです。まず、手元のUbuntu / Red Hat / Amazon Linux / SUSE / Debian / Fedoraの対象バージョンを洗い出すこと。次に、すぐパッチを当てられるサーバーと、依存サービスがあって慎重に当てる必要があるサーバーを分け、後者はalgif_aead無効化で時間を稼ぐ判断もあり得ます。Kubernetesクラスタのノードはホストカーネル更新が必須なので、ローリングアップデート計画を今日中に立てておくべきです。
Copy Failのような脆弱性は、5月15日を過ぎても消えてなくなるわけではありません。修正されないまま残ったサーバ、特にIoT機器や古いオンプレ機器、リネージが切れている社内サーバー群は、これから何年も攻撃の的になります。ハローワークの基幹システムが「触れない」状態になっている構造を以前報告しましたが、同じ構造が民間にも数多く眠っています。
次に同型の「全ディストロを巻き込む権限昇格バグ」が来たとき、本記事の判断フレーム——パッチ/モジュール無効化/一般ユーザー権限の削減/監視強化の4層——をそのまま流用してください。Copy Failで作った運用手順は、次のPwnKit級バグでも使えるはずです。
参照元
- ▸ Microsoft Security Blog - CVE-2026-31431: Copy Fail vulnerability enables Linux root privilege escalation across cloud environments(2026年5月1日)
- ▸ Palo Alto Networks Unit 42 - Copy Fail: What You Need to Know
- ▸ Xint - Copy Fail: 732 Bytes to Root on Every Major Linux Distribution(2026年4月29日)
- ▸ Tenable - Copy Fail (CVE-2026-31431): FAQ
- ▸ Ubuntu Blog - Fixes available for CVE-2026-31431 (Copy Fail)
- ▸ CISA - Known Exploited Vulnerabilities Catalog
- ▸ CERT-EU - High Vulnerability in the Linux Kernel ("Copy Fail")
- ▸ NVD - CVE-2026-31431