
Python製のCVE-2026-31431の概念実証コード。カーネルのAF_ALGを悪用してSUIDバイナリのページキャッシュを改ざんし、Linuxシステム上でrootシェルを起動する。
CVE-2026-31431 用の Python PoC。許可された Linux システム上での管理されたラボテストを目的としています。
ご自身の環境、ラボ、または明示的な許可があるシステムでのみ使用してください。このコードを第三者システムに対して実行しないでください。
copy-fail.py は、カーネルの AF_ALG インターフェースを通じて algif_aead が利用可能かどうかを確認し、システムがこの PoC でテストされる手法と互換性がある場合、対象の SUID バイナリのページキャッシュを変更して対話型 PTY シェルを起動しようとします。
このスクリプトには、以下のペイロードが含まれています:
x86_64i686aarch64
AF_ALG および algif_aead のカーネルサポート。/usr/bin/su です。外部の Python 依存関係は不要です。このスクリプトは標準ライブラリのモジュールのみを使用します。
ヘルプを表示:
python3 copy-fail.py --help
デフォルトのターゲット (/usr/bin/su) で実行:
python3 copy-fail.py
別の SUID バイナリをターゲットとして使用:
python3 copy-fail.py --target /usr/bin/newgrp
root として特定のコマンドを実行:
python3 copy-fail.py --exec /bin/bash
自動ターミナル設定を無効化:
python3 copy-fail.py --no-setup
プロジェクトのバージョンを表示:
python3 copy-fail.py --version
メインフローを実行する前に、スクリプトは以下を使用して AF_ALG ソケットの作成とバインドを試みます:
authencesn(hmac(sha256),cbc(aes))
algif_aead が利用できない場合、プログラムは続行せずに終了します。
テストスイートは、--help や --version などの不活性な CLI パスのみをカバーしています。PoC フローは実行しません。
python3 -m unittest discover -s tests
copy-fail.py: 完全な PoC 実装と CLI。tests/test_cli.py: 安全な CLI スモークテスト。SECURITY.md: セキュリティポリシーと報告範囲。DISCLAIMER.md: 許可された使用に関する免責事項。CHANGELOG.md: リリース履歴。CONTRIBUTING.md: コントリビューションガイドライン。LICENSE: MIT ライセンス。MIT ライセンス — Copyright (c) 2026 Juguitos
CVE-2026-31431 用の Python PoC。許可された Linux システム上での管理されたラボテストを目的としています。
ご自身の環境、ラボ、または明示的な許可があるシステムでのみ使用してください。このコードを第三者システムに対して実行しないでください。
copy-fail.py は、カーネルの AF_ALG インターフェースを通じて algif_aead が利用可能かどうかを確認し、システムがこの PoC でテストされる手法と互換性がある場合、対象の SUID バイナリのページキャッシュを変更して対話型 PTY シェルを起動しようとします。
このスクリプトには、以下のペイロードが含まれています:
x86_64i686aarch64
AF_ALG および algif_aead のカーネルサポート。/usr/bin/su です。外部の Python 依存関係は不要です。このスクリプトは標準ライブラリのモジュールのみを使用します。
ヘルプを表示:
python3 copy-fail.py --help
デフォルトのターゲット (/usr/bin/su) で実行:
python3 copy-fail.py
別の SUID バイナリをターゲットとして使用:
python3 copy-fail.py --target /usr/bin/newgrp
root として特定のコマンドを実行:
python3 copy-fail.py --exec /bin/bash
自動ターミナル設定を無効化:
python3 copy-fail.py --no-setup
プロジェクトのバージョンを表示:
python3 copy-fail.py --version
メインフローを実行する前に、スクリプトは以下を使用して AF_ALG ソケットの作成とバインドを試みます:
authencesn(hmac(sha256),cbc(aes))
algif_aead が利用できない場合、プログラムは続行せずに終了します。
テストスイートは、--help や --version などの不活性な CLI パスのみをカバーしています。PoC フローは実行しません。
python3 -m unittest discover -s tests
copy-fail.py: 完全な PoC 実装と CLI。tests/test_cli.py: 安全な CLI スモークテスト。SECURITY.md: セキュリティポリシーと報告範囲。DISCLAIMER.md: 許可された使用に関する免責事項。CHANGELOG.md: リリース履歴。CONTRIBUTING.md: コントリビューションガイドライン。LICENSE: MIT ライセンス。MIT ライセンス — Copyright (c) 2026 Juguitos
| オプション | 説明 |
|---|
-t, --target PATH | 対象の SUID バイナリ。デフォルト: /usr/bin/su。 |
-e, --exec CMD | root として実行するコマンド。フルパスで指定する必要があります。 |
--no-setup | 自動ターミナル環境設定を無効化します。 |
--version | プロジェクトのバージョンを表示します。 |
-h, --help | プログラムのヘルプを表示します。 |
| オプション | 説明 |
|---|
-t, --target PATH | 対象の SUID バイナリ。デフォルト: /usr/bin/su。 |
-e, --exec CMD | root として実行するコマンド。フルパスで指定する必要があります。 |
--no-setup | 自動ターミナル環境設定を無効化します。 |
--version | プロジェクトのバージョンを表示します。 |
-h, --help | プログラムのヘルプを表示します。 |