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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/ochebotar/copy-fail-cve-2026-31431-detection-probe
特権昇格脆弱性スキャナー脆弱性分析エクスプロイト構成監査DevSecOps脅威インテリジェンス学習と教育インシデントレスポンス

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
厳選リソース
GitHubochebotar/copy-fail-cve-2026-31431-detection-probe

copy-fail-CVE-2026-31431-detection-probe

CVE-2026-31431 "Copy Fail" および CVE-2026-43284 "Dirty Frag" 向けの安全な検出ツール — Linux カーネルの algif_aead モジュールにおけるローカル権限昇格で、2017年以降、主要な全ディストリビューションに影響します。

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

LinuxカーネルLPEプローブスイート — Copy Fail & Dirty Frag

License: MIT CVE-2026-31431 CVE-2026-43284 CVE-2026-43500 CVSS Shell

関連するLinuxカーネルのローカル権限昇格(LPE)脆弱性ファミリー — Copy Fail(CVE-2026-31431)と Dirty Frag(CVE-2026-43284 / CVE-2026-43500)— に対する安全な検出ツールです。いずれも2017年以降、主要なすべてのディストリビューションに影響し、権限のないローカルユーザーであれば誰でも悪用可能で、かつ個別の緩和策が必要です。

これらのプローブはソケットを開かず、暗号化操作やネットワーク操作も行いません。 検出はカーネルバージョン、ディストリビューションのパッケージメタデータ、モジュールの状態、有効な緩和フラグのみに基づいています — すべてsudoなしでワールドリーダブルです。


⚠️ 重要: 2つの別個の脆弱性

Copy Failの緩和策を適用してもDirty Fragは防御されません。 両方のプローブを実行し、両方の緩和策をそれぞれ個別に適用する必要があります。


ファイル

root@kitploit:~
.
├── cve-2026-31431-check.sh          Copy Fail probe (all output modes)
├── copy_fail_userparameter.conf     Zabbix agent UserParameter — Copy Fail
├── zabbix_template_copy_fail.yaml   Zabbix 6.4 template — Copy Fail
├── copy_fail_auditd.rules           auditd behavioral detection — Copy Fail
├── cve-2026-43284-check.sh          Dirty Frag probe (all output modes)
├── dirty_frag_userparameter.conf    Zabbix agent UserParameter — Dirty Frag
├── wazuh_sca/
│   └── copy_fail_sca.yml            Wazuh SCA compliance policy
└── ansible/
    └── copy_fall_scan.yml           Fleet-wide Ansible scan playbook

CVE-2026-31431 — Copy Fail

背景

このエクスプロイトには、以下の正確なsyscallチェーンが必要です:

root@kitploit:~
socket(AF_ALG, SOCK_SEQPACKET, 0)
bind(fd, {alg_type="aead", alg_name="authesn(hmac(sha256),cbc(aes))"})
accept(fd, ...)
splice(suid_binary_fd, op_fd)   ← page cache fed into crypto subsystem
sendmsg / recvmsg               ← 4-byte scratch write lands in page cache

プローブはこれらに一切触れません。検出の基準は次のとおりです:

  1. カーネルバージョン範囲 — 4.14–6.17で回帰発生;6.18.22 / 6.19.12 / 6.20以上で修正
  2. ディストリビューションパッケージバージョン — 既知の修正済み閾値によるベンダーバックポートの検出
  3. モジュール状態 — ロード済み、未ロード、組み込み、またはディスク上の.ko(自動ロード可能)
  4. 有効な緩和策 — modprobe.dブラックリストとinitcall_blacklistコマンドラインフラグ

クイックスタート

root@kitploit:~
chmod +x cve-2026-31431-check.sh
./cve-2026-31431-check.sh           # human-readable
./cve-2026-31431-check.sh --json    # machine-readable
./cve-2026-31431-check.sh --nagios  # Nagios/Icinga/NRPE
./cve-2026-31431-check.sh --zabbix  # integer 0/1/2 for Zabbix item

終了コード: 0 = PATCHED(修正済み)またはMITIGATED(緩和済み) · 1 = VULNERABLE(脆弱) · 2 = UNKNOWN(不明)

修正済みパッケージバージョン

スクリプトはこれらの閾値と自動的に比較し、実行中のパッケージが閾値以上の場合、判定をPATCHEDに設定します。

RHEL系: 組み込みモジュールの注意点

RHEL、AlmaLinux、Rocky Linuxおよびその派生ディストリビューションでは、algif_aeadはカーネルにコンパイル済みです。modprobe.dによる回避策は効果がありません。 カーネルコマンドラインのinitcall_blacklist=algif_aead_initのみが有効です。プローブはこの状態を検出し、明示的に警告します。

root@kitploit:~
grubby --update-kernel=ALL --args="initcall_blacklist=algif_aead_init"
reboot

CVE-2026-43284 / CVE-2026-43500 — Dirty Frag

背景

Dirty Fragは、Hyunwoo Kim(@v4bel)氏によって発見された2つのインプレース復号化ファストパスバグを連鎖させるものです。Copy Failの1週間後、2026年5月7日頃に公開されました:

  • CVE-2026-43284 — xfrm-ESPファストパス(esp4、esp6);上流修正 f4c50a4034e6
  • CVE-2026-43500 — RxRPCファストパス(rxrpc);上流修正 aa54b1d27fe0

このエクスプロイトは、/usr/bin/suのページキャッシュからパイプページをページ化されたソケットバッファフラグメントとしてアタッチし、攻撃者が選択したキーでインプレース復号化を実行します — ディスク上のファイルに触れることなく、setuidバイナリのキャッシュされたコピーに任意のバイトを直接書き込みます。

Copy Failの緩和策(algif_aeadブラックリスト)ではDirty Fragを防げません。

クイックスタート

root@kitploit:~
chmod +x cve-2026-43284-check.sh
./cve-2026-43284-check.sh           # human-readable
./cve-2026-43284-check.sh --json    # machine-readable
./cve-2026-43284-check.sh --nagios  # Nagios/Icinga/NRPE
./cve-2026-43284-check.sh --zabbix  # integer 0/1/2 for Zabbix item

プローブはesp4、esp6、rxrpcを個別にチェックし、JSON出力ではcve_43284_safe / cve_43500_safeの別々のブール値を報告します。

IPsecに関する警告

esp4とesp6は、IPsec(strongSwan、Libreswan)で使用されるカーネル側のESP変換です。これらをブラックリストに登録するとIPsecトンネルが機能しなくなります。プローブはip xfrm stateとデーモン検出によってIPsecのアクティブな使用状況を検出し、それに応じて修復アドバイスを調整します:

  • IPsec未使用: 3つのモジュールすべてに完全なmodprobe.dブラックリストを適用します。
  • IPsec使用中: 非特権ユーザーネームスペースを制限します(ESPパスをブロック;不要な場合はrxrpcも個別にブラックリスト化):
    root@kitploit:~
    # RHEL-family
    sysctl -w user.max_user_namespaces=0
    echo "install rxrpc /bin/false" >> /etc/modprobe.d/dirtyfrag.conf
    
    # Ubuntu / Debian
    sysctl -w kernel.unprivileged_userns_clone=0
    echo "install rxrpc /bin/false" >> /etc/modprobe.d/dirtyfrag.conf
    

修正済みパッケージバージョン

ディストリビューションCVE-2026-43284CVE-2026-43500(rxrpc)
RHEL / Rocky / Alma 8.104.18.0-553.123.2.el8_10N/A — RHEL 8ではrxrpcは提供されていません
RHEL / Rocky / Alma 9.x未定未定

修正済みカーネルを待つシステムでは、IPsecの注意事項を考慮した上で、modprobe.dブラックリストを直ちに適用してください。

RHEL 8 / rxrpc

AlmaLinux / RHEL 8はrxrpcモジュールを一切ビルドしません。プローブはRHEL/Rocky/Alma 8.xでkernel_vuln_rxrpc=not_affectedを自動的にマークします。


監視統合

Zabbix

両方のプローブを監視対象の各ホストにデプロイします:

root@kitploit:~
mkdir -p /etc/zabbix/scripts
install -m 750 -o zabbix -g zabbix cve-2026-31431-check.sh /etc/zabbix/scripts/
install -m 750 -o zabbix -g zabbix cve-2026-43284-check.sh /etc/zabbix/scripts/

cp copy_fail_userparameter.conf /etc/zabbix/zabbix_agentd.d/
cp dirty_frag_userparameter.conf /etc/zabbix/zabbix_agentd.d/
systemctl restart zabbix-agent   # or zabbix-agent2

zabbix_template_copy_fail.yamlは設定 → テンプレート → インポートからインポートします。

提供されるUserParameterアイテム:

Copy Failテンプレートには、status=1に対するHIGHトリガーと、status=2に対するWARNINGトリガーが含まれます。sudoは不要です — 両スクリプトが読み取るすべてのファイルはワールドリーダブルです。

Nagios / Icinga / NRPE

root@kitploit:~
install -m 755 cve-2026-31431-check.sh /usr/lib/nagios/plugins/
install -m 755 cve-2026-43284-check.sh /usr/lib/nagios/plugins/

# NRPE — add to /etc/nagios/nrpe.cfg:
command[check_copy_fail]=/usr/lib/nagios/plugins/cve-2026-31431-check.sh --nagios
command[check_dirty_frag]=/usr/lib/nagios/plugins/cve-2026-43284-check.sh --nagios

# CheckMK local checks:
echo '#!/bin/bash
OUT=$(/usr/lib/nagios/plugins/cve-2026-31431-check.sh --nagios); RC=$?
echo "$RC CVE-2026-31431 - $OUT"' > /usr/lib/check_mk_agent/local/copy_fail

echo '#!/bin/bash
OUT=$(/usr/lib/nagios/plugins/cve-2026-43284-check.sh --nagios); RC=$?
echo "$RC CVE-2026-43284 - $OUT"' > /usr/lib/check_mk_agent/local/dirty_frag

chmod +x /usr/lib/check_mk_agent/local/copy_fail \
         /usr/lib/check_mk_agent/local/dirty_frag

auditd — 挙動/実行時検出

進行中のアクティブなエクスプロイト試行を検出し、2つの静的プローブを補完します。

root@kitploit:~
cp copy_fail_auditd.rules /etc/audit/rules.d/
augenrules --load

# Watch for unexpected AF_ALG callers:
ausearch -k copy_fail_af_alg --interpret | \
    grep -v -E 'cryptsetup|veritysetup|systemd-crypt|kcapi'

Wazuhルールのスタブ(レベル13 / 15)は.rulesファイルのコメントに埋め込まれています。

Wazuh SCA

root@kitploit:~
cp wazuh_sca/copy_fail_sca.yml /var/ossec/etc/shared/default/
/var/ossec/bin/agent_control -r -a

結果: セキュリティ → SCA → ポリシーcve_2026_31431_copy_failでフィルタ

Ansible — フリートスキャン

root@kitploit:~
ansible-playbook -i inventory/hosts ansible/copy_fall_scan.yml
# Limit to a subset:
ansible-playbook -i inventory/hosts ansible/copy_fall_scan.yml --limit webservers

コントローラー上の/tmp/copy_fail_results/にホストごとのJSONとsummary.txtを書き込みます。いずれかのホストがVULNERABLE(脆弱)の場合、プレイは非ゼロの終了コードで終了します。


ベンダーセキュリティトラッカー


参照

Copy Fail

  • Xint/Theoriのオリジナル解説
  • CERT-EU勧告 2026-005
  • NVD CVE-2026-31431
  • Ubuntuセキュリティ通知 USN-8226-1
  • Rocky Linux勧告 2026-05-11
  • Copy FailへのSUSEの対応

Dirty Frag

  • Dirty Frag解説(copy.fail)
  • NVD CVE-2026-43284
  • AlmaLinux勧告 2026-05-07
  • Sysdig TRT — Dirty Frag検出分析
  • Microsoft Security Blog — アクティブな攻撃
  • Wizブログ — Dirty Frag
ツールをダウンロード
Copy FailDirty Frag
CVECVE-2026-31431CVE-2026-43284 + CVE-2026-43500
対象モジュールalgif_aeadesp4, esp6, rxrpc
導入時期2017年8月(カーネル4.14)2017年1月 / 2023年6月
緩和策algif_aead向けのmodprobe.dブラックリストesp4/esp6/rxrpc向けのmodprobe.dブラックリスト
プローブスクリプトcve-2026-31431-check.shcve-2026-43284-check.sh
ディストリビューション修正バージョン勧告
RHEL / Rocky / Alma 8.10kernel-4.18.0-553.123.1.el8_10Rocky 2026-05-11
RHEL / Rocky / Alma 9.7kernel-5.14.0-611.54.1.el9_7同上
RHEL / Rocky / Alma 10.1kernel-6.12.0-124.55.1.el10_1同上
Debian 11 (bullseye)linux 5.10.251-3DLA-4560-1
Debian 12 (bookworm)linux 6.1.170-1DSA-6243-1
Debian 13 (trixie)linux 6.12.85-1DSA-6238-1
Ubuntu 22.04 / 24.04修正済みカーネルはまだなし — USN-8226-1によるkmod緩和策USN-8226-1
SLES 12 SP5kernel-default 4.12.14-122.299.1SUSE-SU-2026:1669-1
SLES 15 SP5kernel-default 5.14.21-150500.55.144.1SUSE-SU-2026:1670-1
SLES 15 SP6kernel-default 6.4.0-150600.23.92.1SUSE-SU-2026:1671-1
SLES 15 SP7kernel-default 6.4.0-150700.53.40.1SUSE-SU-2026:1669-1
SLES 16.0kernel-default 6.12.0-160000.29.1SUSE勧告
Debian / Ubuntu / SLES未定未定
キータイプ意味
copy_fail.statusint0=安全 · 1=脆弱 · 2=不明
copy_fail.detailstrCopy Failの判定(人間が読める形式)
dirty_frag.statusint0=安全 · 1=脆弱 · 2=不明
dirty_frag.detailstrDirty Fragの判定(人間が読める形式)
ディストリビューションCopy FailDirty Frag
Ubuntuubuntu.com/security/CVE-2026-31431ubuntu.com/security/CVE-2026-43284
Debiansecurity-tracker…CVE-2026-31431security-tracker…CVE-2026-43284
RHEL / Alma / Rockyaccess.redhat.com…CVE-2026-31431access.redhat.com…CVE-2026-43284
Amazon Linuxalas.aws…CVE-2026-31431alas.aws…CVE-2026-43284
SUSEsuse.com…CVE-2026-31431suse.com…CVE-2026-43284