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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
copyfail-rs — CopyFail(CVE-2026-31431):Linuxカーネルのページキャッシュ権限昇格(PrivEsc)PoC+唯一の公開検出ツール。新規のPAM認証バイパスベクター+Sigma/auditd/eBPFルール。 | Kitploit
ツール/GitHubGitHub/diemoeve/copyfail-rs
特権昇格脆弱性分析エクスプロイト
GitHubdiemoeve/copyfail-rs

copyfail-rs

CopyFail(CVE-2026-31431):Linuxカーネルのページキャッシュ権限昇格(PrivEsc)PoC+唯一の公開検出ツール。新規のPAM認証バイパスベクター+Sigma/auditd/eBPFルール。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

copyfail-rs

CVE-2026-31431(CopyFail)向けのマルチベクターPoC+ペア検出ツール。 他の公開PoCにはない、新規のPAM認証バイパスベクターを搭載。 検出モードは、AIDE / Wazuh / OSSEC / Tripwireでは構造的に捕捉できないものを検出します。

単一の静的バイナリ。約108 KB。no_std musl。

デモ

root@kitploit:~
noot@host:~$ ./copyfail-rs --mode exploit
[sudo] password for noot:
root@host:~# id
uid=0(root) gid=0(root) groups=0(root)
root@host:~#

コマンド1つ。ルートシェル。内部ではPAMキルショット(/etc/pam.d/common-authへの4バイト書き込み)、破棄されるパスワードを伴うsudo経由のPTYドロップでrootへ。[sudo] password for noot: の行は一瞬表示されます。sudoは常にそのプロンプトをエコーします。バイナリは任意の文字列を渡し、pam_unixの失敗がコメントアウトされたpam_deny.soを経由してpam_permit.soへカスケードし、rootになります。

root@kitploit:~
$ ./copyfail-rs --mode detect --scan
=== copyfail-rs detection: --scan ===

TAMPERED (1):
  /etc/pam.d/common-auth [ext4]
    cache:  23c4f1ee...  ← 実際にロードされているもの(改変済み)
    disk:   117dab1c...  ← AIDE / Wazuh / Tripwireが見るもの(クリーン)

これがプロジェクトです。ディスクはクリーン、キャッシュは改変済み。公開されているFIMはすべて盲目です。このツールは違います。

クイックスタート(ビルド不要)

v0.1.0リリースにプリビルド済み静的バイナリがあります。アーキテクチャを選んでダウンロードし、実行してください。

root@kitploit:~
# x86_64(ほとんどのラップトップ+クラウドサーバー)
curl -LO https://github.com/diemoeve/copyfail-rs/releases/download/v0.1.0/copyfail-x86_64-musl
chmod +x copyfail-x86_64-musl
./copyfail-x86_64-musl --mode exploit

その他のアーキテクチャ:

ArchFile
ARM64 (aarch64)copyfail-aarch64-musl
ARMv7 (Raspberry Pi 3+)copyfail-armv7-musleabihf

整合性の検証:

root@kitploit:~
curl -LO https://github.com/diemoeve/copyfail-rs/releases/download/v0.1.0/checksums.txt
sha256sum -c checksums.txt

静的muslバイナリ、ランタイム依存なし、任意のLinuxで動作します。

FIMが盲目な理由

ページキャッシュの改変。VFS書き込みなし。ダーティページなし。inotifyイベントなし。定期的な再スキャンはエビクションと競合します。

AIDE/Wazuh/OSSEC/Tripwire/SamhainはバッファリングI/O → ページキャッシュ経由で読み取り、改変されたバイトを真実としてハッシュ化します。またはエビクション後、クリーンなディスクをハッシュ化して「変更は一切発生していない」と判断します。

検出にはO_DIRECT(キャッシュスキップ)+バッファリング読み取り(キャッシュヒット)+ハッシュ差分が必要です。不一致=CopyFailシグネチャ。それが --scan です。

ベクター

自動選択: --vector auto(デフォルト)。ステルス性の高い順にpam > su > passwd。失敗時はフォールバックします。

検出

SIEM取り込み用に --json を全モードで使用可能。

検出アーティファクト

detection/:

  • sigma/copyfail-af-alg.yml、Sigmaルール、SIEMにドロップ
  • auditd/copyfail.rules、augenrules --load
  • ebpf/copyfail-trace.bt、bpftraceワンライナー
  • apparmor/copyfail-block.profile、AppArmor 3.0+拒否ルール
  • mitigation/disable-algif.sh、modprobeブラックリスト+=y警告

緩和策

root@kitploit:~
echo "install algif_aead /bin/false" | sudo tee /etc/modprobe.d/disable-algif.conf
sudo rmmod algif_aead

またはカーネルメインライン a664bf3d603d(2026年4月)。現時点では: Debian Sid/Forkyのみが配布済み。Ubuntu LTS、RHEL、SUSE、Amazon Linux、Fedora、Arch、Oracle = すべて脆弱。

注意: CONFIG_CRYPTO_USER_API_AEAD=y(組み込み)はmodprobeを静かにバイパスします。--check が警告します。

エクスプロイト+緩和策の後: キャッシュされた改変は再起動まで持続します。緩和策は新しいエクスプロイトをブロックしますが、過去のものを元に戻すことはありません。

ビルド

root@kitploit:~
cargo build --release --target x86_64-unknown-linux-musl
TargetSize
x86_64-musl108 KB
aarch64-musl96 KB
armv7-musleabihf86 KB

no_std。アロケータなし。ランタイム依存なし。単一の静的バイナリ。

プリビルド済みアーティファクトとSHA256サムはGitHubリリースに添付されています。

使用方法

各モード(exploit auto/list/all、detect check/scan/baseline/diff/watch/hunt)の具体的な1画面の例については、docs/usage.md を参照してください。

このREADMEのより長文のナラティブ版(より多くのコンテキスト、より深い解説)については、BLOG.md を参照してください。

脅威モデル

docs/threat-model.md を参照してください。

比較

認可と倫理

自分のハードウェアのみ。CLIゲートなし(セキュリティシアター)。README+LICENSE=フレームワーク。

検出モードは読み取り専用。本番環境で安全。

エクスプロイトモードはカーネルページキャッシュを改変します。RAMのみですが破壊的として扱ってください。後続の呼び出し元の認証をブロックします。

クレジット

CVE-2026-31431はTheori / Xintによって2026-04-29に公開されました(writeup、Xintブログ)。以前の公開PoC:

  • theori-io/copy-fail-CVE-2026-31431(Python、732バイト、suベクター)
  • tgies/copy-fail-c(nolibc付きC、su + passwdベクター、ポータブル)
  • badsectorlabs/copyfail-go(静的Goバイナリ、suベクター)

このプロジェクト(copyfail-rs): PAM認証バイパスベクター、デュアルモード検出、IRアーティファクトを追加。

ライセンス

MIT。

参考文献

  • https://copy.fail/
  • Linux修正: a664bf3d603d
  • フロア: 72548b093ee3(4.14、2017年8月)
  • 類似: Dirty Pipe(CVE-2022-0847)
ツールをダウンロード
VectorTargetWhere it lands
pam (NEW)/etc/pam.d/common-auth(Debian/Ubuntu)または system-auth(Fedora/RHEL/Arch)4バイト。auth requisite pam_deny.so → #aut requisite pam_deny.so。任意のパスワードでsudo = root。
su/usr/bin/susetuidバイナリのテキストを改変。execve → root。
passwd/etc/passwdUID反転 → 次回ログイン時にユーザーがrootになる。そのユーザーのSSHは壊れます。
ModeWhat
--checkカーネル+モジュール+CONFIG_CRYPTO_USER_API_AEAD+緩和策の状態。判定: 脆弱 / 緩和済み / 安全。
--scan重要ファイルに対するO_DIRECTとバッファリング読み取りの差分。statfs()で分岐: ext4/xfs/btrfsはO_DIRECT、overlayfsはフォールバック、tmpfsはスキップ。
--baseline / --diff既知のクリーン状態のスナップショット。後で差分。キャッシュのみのデルタ=CopyFailフィンガープリント。
--watchデーモン。定期的なスキャン。SIGTERMでクリーン終了。
--huntSSHフリートスイープ。JSON集計。
Theori Pythontgies Cbadsectorlabs Gocopyfail-rs
ベクターsusu + passwdsusu + passwd + PAM(新規)
検出なしなしなし完全な --mode detect
IRアーティファクトなしなしなしSigma + auditd + eBPF + AppArmor
オペレーターUX3コマンド4コマンド5コマンド1コマンド
バイナリPythonが必要~10 KB~5 MB~108 KB 静的