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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
cve-2026-31431 — CVE-2026-31431(LinuxカーネルのAF_ALG AEAD脆弱性)を分析し、安全な検出器、実験室内LPEエクスプロイト、検証用のQEMUベースA/Bカーネルラボを提供します。 | Kitploit
ツール/GitHubGitHub/franklinf25/cve-2026-31431
エクスプロイトフレームワーク脆弱性分析エクスプロイト学習と教育バイナリエクスプロイトラボと実践
GitHubfranklinf25/cve-2026-31431

cve-2026-31431

CVE-2026-31431(LinuxカーネルのAF_ALG AEAD脆弱性)を分析し、安全な検出器、実験室内LPEエクスプロイト、検証用のQEMUベースA/Bカーネルラボを提供します。

リポジトリを見る
5時間31分前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2026-31431 — Linuxカーネル algif_aead「Copy Fail」: 分析

CVE-2026-31431(CVSS 3.1 7.8 HIGH、 AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)に関するセキュリティ研究: AF_ALG AEADインターフェースチェーンにおける3つの合成可能な設計上の 欠陥が、決定的でレースフリーな4バイトのページキャッシュ書き込みを、 読み取り可能な任意のファイルの任意のオフセットに対して引き起こします — ディスクコピーはクリーンなままなので、オンディスクチェックサムは何も検知しません。 公開エクスプロイト(「Copy Fail」、Theori/Xint)は、732バイトのPythonで ローカルルート(LPE)に昇格させます。このバグは2017年から2026年までの すべてのカーネルに存在していました。

  1. 72548b093ee3(2017年)により、_aead_recvmsg は インプレースで 復号するようになり、 リクエストのタグページを書き込み可能な宛先SGLにチェーンしました。
  2. splice(file → pipe → socket) は、それらのタグスロットに 読み取り可能な任意のファイルのページキャッシュページ(ゼロコピー)を供給します。
  3. authencesn は、その4バイトのESNスクラッチ — 値はsendmsgペイロードの AAD[4..8) に乗っています — を正確に dst[assoclen + cryptlen]、すなわち最初のタグバイト(選択したファイルオフセット)に 書き込みます。これはタグ検証 発生するため、 リクエストでも書き込みが実行されます。
より前に
-EBADMSG

検証マトリクス

主張証拠
根本原因はブログではなく修正コミットとカーネルソースから導出finding-sheet
公開PoCのデコードがシステムコールシーケンスに対してエンドツーエンドで検証済みfinding-sheet
デルタが正確に修正コミットであるラボA/Bカーネル、両方とも起動lab/scripts/build.sh + lab/out/ab-diffstat.txt
脆弱性カーネルがAF_ALG経由で authencesn AEAD復号を実行(スモーク)lab/scripts/run.sh vuln → SMOKE=ok
コンパニオンなしのリバートが crypto_authenc_esn_decrypt でパニック(当初の発見)lab/scripts/run.sh patched → NULL deref、再現可能
安全な検出器: vulnではVULNERABLE(EBADMSGにもかかわらず書き込みが発生、ディスクはCLEANのまま)、完全修正ではNOT-DETECTEDpoc/detector.c をラボで実行 → DETECTOR-RESULT 行
ラボ内LPE完了: uid 1000がSUIDバイナリの4バイトのページキャッシュをパッチし、root専用フラグを読み取り。ディスクコピーはブロックレベルdebugfs読み取りで完全無傷と証明poc/lpe.c + lab/rootfs/tools/secretgate.c → LPE-RESULT: ROOT-FLAG-CAPTURED、DISKCLEAN=ok
公開ページキャッシュ書き込みを固定ラボで帰属付きで再現上記の検出器出力 + lab README
SGLストレス: 両カーネルで5形状 — クラッシュなし、カーネルハングなし(正直なネガティブ結果)+ 文書化された2つのAF_ALG契約の癖poc/sgl-stress.c をラボで実行 → SGL-STRESS 行

クイックスタート

root@kitploit:~
# 3つのカーネル + ツール + プローブディスクをDockerでビルド(初回約15分)
lab/scripts/build.sh

# A/B/Cオラクルを起動(Docker内QEMU、KVM利用可能なら使用)
lab/scripts/run.sh vuln         # DETECTOR VULNERABLE + LPE ROOT-FLAG-CAPTURED + DISKCLEAN=ok
lab/scripts/run.sh patchedfull  # DETECTOR NOT-DETECTED + LPE NOT-VULNERABLE
lab/scripts/run.sh patched      # authencesn NULL deref(コンパニオン修正ギャップ)

ここでの独自性と先行研究との比較

完成したページキャッシュ書き込みチェーンは、Theori / Xint Code (「Copy Fail」、クレジットされた報告者)の公開アプローチに 帰属付きで従っています — finding-sheet の 先行研究セクションを参照してください。このリポジトリでの独自の作業: 修正コミットに固定されたメカニズムマップ、不完全な修正シリーズの発見 (コンパニオンなしリバートのauthencesnパニックとその安定版リリースウィンドウ)、 所有していないファイルに一切触れない安全なページキャッシュ対ディスク差分検出器、 専用に構築されたSUIDターゲット(secretgate — 実際のバイナリは決して標的にされません)に対する ラボ内LPE完了、SGLエッジ探索(正直なネガティブ結果と文書化された2つのAF_ALG契約の癖)、 および全8つの修正コミットの検証済みブランチ帰属。

ドキュメント

ドキュメント内容
docs/finding-sheet.md1ページのデータシート: バージョン、CVSS、根本原因、修正コミット、攻撃対象領域
docs/report-ptes.mdPTES構造のレポート(7フェーズ)、ラボ証拠付き
docs/research-writeup.md調査の物語 — 方法論、行き詰まり、移植可能な教訓、先行研究との比較

リポジトリ構成

root@kitploit:~
docs/            finding sheet · PTESレポート · 研究ライトアップ
poc/             detector.c(安全なオラクル)· lpe.c(ラボ内LPE)· sgl-stress.c(SGL探索)
lab/             QEMUカーネルラボ: 5.15.203 ± 修正(A/B)+ コンパニオン後 5.15.y(C)
lab/rootfs/      secretgate.c — 専用に構築されたSUIDターゲット(攻撃される唯一の対象)

参考文献

  • CVEレコード(MITRE) · NVD
  • Theori/Xint — Copy Failライトアップ · 公開PoC
  • 導入コミット: 72548b093ee3 "crypto: algif_aead - copy AAD from src to dst"(2017年)
  • メインライン修正: a664bf3d603d "crypto: algif_aead - Revert to operating out-of-place" (+ 8つの安定版バックポート — finding-sheet を参照)

教育目的の研究アーティファクト。所有しているシステム、または明示的に テストを許可されたシステムに対してのみ実行してください。この脆弱性は修正済みです — 2026年の安定版ブランチ以降の最新カーネルを実行してください。

ツールをダウンロード