Sploitus

Exploit for ThrottleStop

kitploit · 2026-08-25

Exploit Code

MARKDOWN151 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-DEMOO1337-THROTTLESTOP
# CVE-2025-7771 – ThrottleStop.sys 特権昇格

**CVE-2025-7771** | **CVSS 8.7** | **ローカル特権昇格**

## 概要

ThrottleStop.sys は、`MmMapIoSpace` を介して任意の物理メモリへのアクセスを許可する無制限の IOCTL インターフェースを公開しています。これにより、カーネルメモリへのパッチ適用と ring-0 コンテキストでの任意コード実行によってローカル特権昇格が可能になります。

**影響を受けるコンポーネント** : ThrottleStop.sys (TechPowerUp)  
**脆弱性タイプ** : アクセス制御が不十分な露出した IOCTL (CWE-782)  
**影響** : ローカル特権昇格  
**ドライバーステータス** : デジタル署名済み、Core Isolation 互換

## 技術的詳細

### 脆弱な IOCTL

IOCTL| 機能  
---|---  
`0x80006498`| 物理メモリ読み取り  
`0x8000649C`| 物理メモリ書き込み  
  
### 悪用手順

  1. `\\Device\\ThrottleStop` へのハンドルを開く
  2. 脆弱な IOCTL で `DeviceIoControl` を使用する
  3. `MmMapIoSpace` を介して任意の物理メモリをマッピングする
  4. カーネル構造体または関数ポインタをパッチする
  5. カーネルコンテキストで任意コードを実行する



## 概念実証 (Proof of Concept)

この実装は、以下の方法による ThrottleStop.sys 脆弱性の悪用を実証しています:

  * `CreateFileW` によるドライバーハンドルの取得
  * プロセスの列挙とターゲット指定
  * 脆弱な IOCTL を使用した物理メモリの読み取り/書き込み操作
  * 異なるデータ型に対するテンプレートベースのメモリ操作
  * より大きなメモリ領域に対するバッファ操作



## コンパイルと使用方法

### ビルド

root@kitploit:~
    
    
    msbuild throttlestop.sln /p:Configuration=Release /p:Platform=x64
    

### ドライバーサービスのセットアップ

root@kitploit:~
    
    
    # Create service
    sc create ThrottleStop binPath= "C:\path\to\ThrottleStop.sys" type= kernel
    
    # Start service
    sc start ThrottleStop
    

### 実行

root@kitploit:~
    
    
    .\usermode\usermode.exe
    

**要件** : 管理者権限、Visual Studio 2019/2022、ThrottleStop.sys ドライバーサービス

## コード構造

root@kitploit:~
    
    
    throttlestop/
    ├── usermode/
    │   ├── Entry.cpp              # Main application entry point
    │   ├── Driver/
    │   │   └── Driver.h           # MemoryDriver class implementation
    │   └── usermode.vcxproj       # Visual Studio project file
    ├── ThrottleStop.sys           # Vulnerable driver binary
    └── throttlestop.sln           # Solution file
    

### 実装詳細

  * **`MemoryDriver` クラス**: ドライバー通信とメモリ操作
  * **IOCTL ハンドラー** : `0x80006498` (読み取り)、`0x8000649C` (書き込み)
  * **プロセスのターゲット指定** : 自動的なプロセス列挙と選択
  * **メモリ操作** : バッファサポート付きのテンプレートベースの読み取り/書き込み



### ドライバー証明書

**デジタル署名:**

  * TechPowerUp LLC (SHA1)
  * Microsoft Windows Hardware Compatibility Publisher (SHA256)
  * TechPowerUp LLC (SHA1)



**セキュリティ上の影響:**

  * ドライバーがドライバー署名強制 (DSE) を回避する
  * Core Isolation が有効なシステムと互換性がある
  * Windows によって正当なハードウェアドライバーとして信頼される
  * 未署名ドライバーの警告やブロックなし



## 緩和策

  * 不要な場合は ThrottleStop.sys を削除する
  * 未署名/未検証のドライバーをブロックする
  * カーネルモードコード整合性 (KMCI) を有効にする
  * `\\Device\\ThrottleStop` へのアクセスを監視する
  * IOCTL コード `0x80006498` および `0x8000649C` を使用した DeviceIoControl 呼び出しを検出する



## 参考情報

  * CVE-2025-7771 に関する INCIBE-CERT 勧告
  * ThrottleStop.sys 悪用に関する Kaspersky の分析
  * Microsoft ドライバーセキュリティのベストプラクティス



## 分析画像

### IOCTL ハンドラー分析

**物理メモリ読み取り (0x80006498)** ![IDA 分析 - 読み取り IOCTL](https://assets.kitploit.com/production/public/readmes/35605/fdd2043e2687359cbafe6479cf1bd9d0637091fba2cafe0005e17cf18c9c6bd5.png)

**物理メモリ書き込み (0x8000649C)** ![IDA 分析 - 書き込み IOCTL](https://assets.kitploit.com/production/public/readmes/35605/db1d5d286a429510dc2ac4572c1c7cc2ca949ac80eee847f3c342defab82a7ca.png)

これらのスクリーンショットは、`MmMapIoSpace` を介した無制限の物理メモリアクセスを可能にする ThrottleStop.sys 内の脆弱な IOCTL ハンドラーを示しています。

## 免責事項

このリポジトリは、教育および防御研究目的のみで提供されています。システムを侵害するための不正使用は違法であり、禁止されています。管理された環境でのみ、自己責任で使用してください。