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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
copy-fail-cve-2026-31431 — パッシブなLinuxホストスキャナで、カーネルバージョン、ディストリビューションのチェンジログ、モジュールの状態、AF_ALGの到達可能性を通じてCVE-2026-31431への曝露を分類し、SIEM統合用のJSON出力を備えています。 | Kitploit
ツール/GitHubGitHub/effiesec/copy-fail-cve-2026-31431
脆弱性スキャナー脆弱性分析構成監査
GitHubeffiesec/copy-fail-cve-2026-31431

copy-fail-cve-2026-31431

パッシブなLinuxホストスキャナで、カーネルバージョン、ディストリビューションのチェンジログ、モジュールの状態、AF_ALGの到達可能性を通じてCVE-2026-31431への曝露を分類し、SIEM統合用のJSON出力を備えています。

リポジトリを見る

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
94ヶ月前未レビュー
共有

Copy Fail (CVE-2026-31431) 用 CVE チェッカー

著者/貢献者: Patrick Doyle (著者/メンテナー)、Effie Renard (共著者)、Kimberly-Lee Banks (共著者)、Chris F. (サポート/コードレビュー)

AI 開示: テストファイルの作成、テストデータの作成、およびコードのセキュリティレビューに Claude Code を使用。すべての編集は貢献者の 1 人によって手動で監査されました。

説明

Linux ホストの CVE-2026-31431 への曝露を分類する、単一の静的にリンクされた Go バイナリ。

このツールは受動的です。バグを悪用しません。メカニズムプローブ(下記の安全性ステートメントを参照)は正確に 2 つのシステムコールを発行し、脆弱なコードパスには一切触れません。


チェック内容

シグナルソースフラグ
カーネルバージョンと上流の修正の比較uname(2)--kernel-version
ディストリビューションのチェンジログが CVE に言及apt/rpm/apk またはディスク上の changelog.Debian.gz--changelog
algif_aead モジュールの状態/proc/modules、modprobe.d、/lib/modules--module
脆弱なサーフェスに到達可能socket(AF_ALG) + bind(authencesn(...))--mechanism
vmlinux に組み込み済み/boot/config-$(uname -r) または /proc/config.gz(--module の一部)

チェックフラグが指定されていない場合、4 つすべてが実行されます。


出力モード

モードトリガーユースケース
スタイル付き出力 (デフォルト)TTY 標準出力、--format オーバーライドなし、NO_COLOR 環境変数なし対話型シェルでの実行
プレーンテキスト非 TTY 標準出力、または --format=text、または NO_COLOR=1、または --no-colorシェルスクリプト、パイプ
JSON--format=jsonSyslog/SIEM 取り込み、シェルスクリプト
クワイエット--quiet終了コードのみ(自動化/スクリプト)

パイプ時にスタイル付き出力を強制: cvecheck --pretty | tee report.txt。 TTY でプレーンテキストを強制: cvecheck --no-color または NO_COLOR=1 cvecheck。


安全性ステートメント(メカニズムプローブ)

プローブは正確に 2 つのシステムコール socket(AF_ALG, SOCK_SEQPACKET, 0) と bind(fd, &SockaddrALG{Type:"aead", Name:"authencesn(hmac(sha256), cbc(aes))"}) を発行します。その後 close(fd) が続きます。キー用の setsockopt、accept、sendmsg、splice、パイプ作成は一切実行しません。脆弱なコードパスには、ページキャッシュバックアップされたファイル記述子からの splice と組み合わせた暗号データの sendmsg が必要ですが、これらの操作は発生しないため、バグはトリガーされません。

プローブが成功した場合、サーフェスに到達可能であることを意味します。カーネルにバグがまだ存在するかどうかは、カーネルバージョン + チェンジログのシグナルによって判断されます。

副作用: bind が成功すると、カーネルモジュールオートローダーを介して algif_aead が自動ロードされます。モジュールチェックはメカニズムプローブの前に実行されるため、ロード状態のレポートはプローブ前の状態です。自動ロードを完全に抑制するには、最初に algif_aead をブラックリストに登録します。


終了コード

コード意味
0PATCHED / NOT_VULNERABLE / MITIGATED / LIKELY_NOT_EXPLOITABLE
2VULNERABLE または MECHANISM_REACHABLE (部分スキャン、カーネルバージョン未チェック)
3INCONCLUSIVE (シグナル不足)

ディストリビューション対応

ディストリビューション検出カーネルパッケージ備考
Ubuntu / Debian / Mint / Pop!_OSaptlinux-image-$(uname -r)ディスク優先のチェンジログ読み取りにより、署名済みカーネルでの apt changelog のネットワーク不安定性を回避
RHEL / CentOS / Rocky / Alma / Fedora / Amazon Linuxrpmkernelalgif_aead を組み込みで出荷 (CONFIG_..._AEAD=y); ブラックリストによる緩和は効果なし
Oracle Linuxrpmkernel または kernel-uekUEK は uname -r の uek サブストリングで検出
openSUSE / SLESrpmkernel-default
Alpineapklinux-lts / linux-virt などフレーバーはリリースサフィックスから選択
Arch / CachyOS / Manjaro / Endeavour / Gentooなしn/aローリング/ソース: カーネルバージョンチェックに依存

デプロイ

自動インストール

アーキテクチャを自動検出し、適切なバイナリを $(pwd) にダウンロードして、公開されている SHA256SUMS に対して SHA-256 を検証します:

root@kitploit:~
curl -fsSL https://copyfail.pcdoyle.dev/install.sh | sh

このスクリプトはチェックサム不一致時に非ゼロで終了し、不正なファイルを削除します。

バイナリのダウンロード(手動)

ホストアーキテクチャに適したバイナリを選択してください:

アーキテクチャバイナリ
Intel/AMD 64 ビット (x86_64)cvecheck-linux-x86_64
ARM 64 ビット (aarch64)cvecheck-linux-arm64
Intel/AMD 32 ビット (i?86)cvecheck-linux-x86

実行前に検証:

root@kitploit:~
curl -LO https://github.com/pcdoyle/copy-fail-cve-2026-31431/releases/latest/download/cvecheck-linux-x86_64
curl -LO https://github.com/pcdoyle/copy-fail-cve-2026-31431/releases/latest/download/SHA256SUMS
sha256sum --ignore-missing -c SHA256SUMS
chmod +x cvecheck-linux-x86_64

ソースからのビルド

root@kitploit:~
make build  # bin/cvecheck-linux-{x86_64,arm64,x86}
# SCP(SFTP) to Server:
scp ./bin/cvecheck-linux-x86_64 host:/tmp/  # Less than 4 MB, static, no glibc dep

プログラムの実行

SSH でホストへ

root@kitploit:~
# SSH:
ssh <host>
# Run Binary:
/tmp/cvecheck-linux-x86_64  # Human friendly pretty output.
/tmp/cvecheck-linux-x86_64 --format=json # Script, Syslog, and SIEM friendly
/tmp/cvecheck-linux-x86_64 --format=text # Script, and Pipe friendly

SSH リモートコマンドとして実行

root@kitploit:~
ssh <host> /tmp/cvecheck-linux-x86_64   # If run directly defaults to --format=text
ssh <host> /tmp/cvecheck-linux-x86_64 --format=json # Syslog/SIEM-friendly

コンテナ/Chroot の場合:

ホストのルートを読み取り可能な場所にマウントし、--root を渡します:

root@kitploit:~
docker run --rm -v /:/host:ro alpine /tmp/cvecheck --root /<host-path>

--root はすべてのディスク上のルックアップ(/etc/os-release、modprobe.d、/lib/modules、/boot/config-*、チェンジログファイル)を制御します。カーネルバージョンとメカニズムのプローブは、uname(2) と socket(AF_ALG, ...) を介して実行中のカーネルに引き続き触れます。


優先順位ラダー

この順序で解決されます(最初に一致したものが優先):

  1. PATCHED: ディストリビューションのチェンジログが CVE ID に言及。
  2. NOT_VULNERABLE: 実行中のカーネルが上流の修正バージョン以上。
  3. MITIGATED: algif_aead がブラックリストに登録されかつロードされておらずかつ vmlinux に組み込まれていない。
  4. LIKELY_NOT_EXPLOITABLE: AF_ALG が利用不可で、モジュールがディスク上にない。
  5. MECHANISM_REACHABLE: サーフェスに到達可能だが、カーネルバージョンがチェックされていない。
  6. VULNERABLE: カーネルが脆弱な範囲にあり、メカニズムに到達可能。
  7. INCONCLUSIVE: 上記のいずれにも一致しない。

--mechanism が --kernel-version と一緒に実行され、両方が問題を示す場合、結果は修復ヒント付きの VULNERABLE になります。


修復ヒント

  • ロード可能モジュールのディストリビューション (Debian、Ubuntu、SUSE、Alpine、Arch): カーネルアップグレードが適用されるまで algif_aead をブラックリストに登録します。
    root@kitploit:~
    echo 'blacklist algif_aead' | sudo tee /etc/modprobe.d/cve-2026-31431.conf
    sudo rmmod algif_aead 2>/dev/null
    
  • 組み込みディストリビューション (RHEL、CentOS、Rocky、Alma、Oracle、Amazon): CONFIG_CRYPTO_USER_API_AEAD=y によりシンボルが vmlinux 内にあるため、ブラックリストファイルは無効です。カーネルのアップグレード(または kpatch スタイルのライブパッチ)のみが曝露を解決します。ツールはこれを検出します。

トラブルシューティング

症状原因修正
changelog: error="apt: exit status 100 ... Changelog unavailable for linux-signed-amd64"Debian/Ubuntu の署名済みカーネル; apt ミラーがソースパッケージのチェンジログを提供していないこのエラーは、ミラーにアクセスできないことに加えてディスク上のファイルも存在しない場合にのみ表示されます。apt-doc をインストールするか、ミラーを待ちます。
module: ... config_src=""カーネル設定が読み取れない(/boot/config-* なし、/proc/config.gz なし、/boot が root のみ)root として実行するか、BuiltIn を決定できないことを受け入れます。判定は他のシグナルで解決される場合があります。
mechanism: error="EAFNOSUPPORT"カーネルが CONFIG_CRYPTO_USER_API なしでビルドされているため、ホストは AF_ALG 経由で脆弱ではない判定は LIKELY_NOT_EXPLOITABLE になります。

ソース

  • NIST CVE Database
  • Official Copy.Fail Site
  • Official Technical Write-up
  • oss-security advisory
  • Theori writeup
  • Bugcrowd summary
ツールをダウンロード