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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-50656-rogueplanet-validation — RoguePlanet Microsoft Defender PoCの検証レポート(管理されたWindows 11ラボ環境におけるビルドノート、Defender検出結果、リスク評価、緩和策の推奨を含む) | Kitploit
ツール/GitHubGitHub/g0thamrabb1t/cve-2026-50656-rogueplanet-validation
特権昇格脆弱性分析エクスプロイトマルウェア分析ペネトレーションテスト学習と教育バイナリエクスプロイトラボと実践

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
GitHub
g0thamrabb1t/cve-2026-50656-rogueplanet-validation

CVE-2026-50656-rogueplanet-validation

RoguePlanet Microsoft Defender PoCの検証レポート(管理されたWindows 11ラボ環境におけるビルドノート、Defender検出結果、リスク評価、緩和策の推奨を含む)

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

RoguePlanet PoC 検証レポート (Microsoft Defender 向け)

レポートの目的と範囲

本レポートは、Microsoft Defender に関連して公開された RoguePlanet PoC の検証に関するものです。説明されている手法は、2026年6月10日にメディアでローカル権限昇格(LPE)として発表されました。ローカルユーザーが NT AUTHORITY\SYSTEM 権限を取得できる可能性があるとされています。公開された説明では、Microsoft Defender がファイルを処理またはスキャンする際に使用する関数を利用するメカニズムであるとされています。

テストの目的は、制御された実験環境でエクスプロイトを作成・実行できるかどうかを確認し、最新の Windows 11 システム上で Microsoft Defender の保護メカニズムがどのように動作するかを観察することでした。本レポートでは、テスト環境、更新状況、Microsoft Defender の設定、コンパイル環境の準備、コンパイル結果、Defender の応答、およびリスク低減の推奨事項を網羅します。

テストは研究指向であり、専用のテスト用ワークステーション上でローカルに実施されました。結果は、特定のアーティファクトと特定の環境設定の動作の評価として解釈されるべきであり、この手法のすべてのバリエーションに対する耐性を完全に確認するものではありません。

分析対象資料で参照されている情報源:

  • 記事:

    https://thehackernews.com/2026/06/microsoft-defender-rogueplanet-zero-day.html

  • 公開 PoC リポジトリ:

    https://github.com/MSNightmare/RoguePlanet/tree/main

  • MSYS2 インストーラのソース:

    https://github.com/msys2/msys2-installer/releases/tag/nightly-x86_64

  • Visual Studio のソース:

    https://visualstudio.microsoft.com/insiders/?rwnlp=pl

テスト環境

PoC は、Active Directory ドメイン外の WORKGROUP ワークグループで動作するクライアントワークステーション上で実行されました。ワークステーションにインストールされているオペレーティングシステムは、Microsoft Windows 11 Home、バージョン 25H2、64 ビットアーキテクチャです。

パラメーター値
システム名Microsoft Windows 11 Home
エディションHome
システムバージョン25H2
OS バージョン10.0.26200
ビルド番号26200
アーキテクチャx64 / 64-bit
インストールタイプClient / Workstation
ホスト名LAPTOP-80LPIEH2
デバイスメーカーLenovo
デバイスモデルLenovo Legion Slim 5 16IRH8
プロセッサ12th Gen Intel(R) Core(TM) i5-12450H
RAM32 GB

PoC が実施された日には、システムに 2026年6月のセキュリティ更新プログラムと、2026年5月および4月の以前の更新プログラムがインストールされていました。つまり、テストは最新の利用可能なセキュリティパッチが適用された Windows 11 25H2、ビルド 26200 上で実施されました。

HotFixID更新タイプインストール日
KB5094135セキュリティ更新10.06.2026
KB5094126セキュリティ更新10.06.2026
KB5087051更新14.05.2026
KB5092762セキュリティ更新13.05.2026
KB5054156更新28.04.2026

Microsoft Defender の設定

テストに使用したワークステーションでは、Microsoft Defender ウイルス対策が通常モードで有効化されていました。保護サービスは実行中かつ有効であり、ウイルス対策、スパイウェア対策、動作監視、リアルタイム保護がアクティブでした。

パラメーター値
AMProductVersion4.18.26050.15
AMServiceVersion4.18.26050.15
AMEngineVersion1.1.26050.11
AMRunningModeNormal
AMServiceEnabledTrue
AntivirusEnabledTrue
AntispywareEnabledTrue
RealTimeProtectionEnabledTrue
BehaviorMonitorEnabledTrue
OnAccessProtectionEnabledTrue
IoavProtectionEnabledTrue
NISEnabledTrue
NISEngineVersion1.1.26050.11
IsTamperProtectedTrue
DefenderSignaturesOutOfDateFalse
RebootRequiredFalse
IsVirtualMachineFalse

テスト当日、Microsoft Defender のシグネチャは最新でした。ウイルス対策、スパイウェア対策、NIS のシグネチャは 2026年6月10日 13:27:32 に更新されていました。

シグネチャタイプバージョン最終更新日
AntivirusSignatureVersion1.453.27.010.06.2026 13:27:32
AntispywareSignatureVersion1.453.27.010.06.2026 13:27:32
NISSignatureVersion1.453.27.010.06.2026 13:27:32

最後のクイックスキャンは 2026年6月8日 15:00:36 から 15:01:58 に、シグネチャバージョン 1.451.323.0 を使用して実行されました。フルスキャンは以前に実行されていないか、履歴が利用できませんでした(FullScanAge の値が 4294967295 で、フルスキャンの開始時刻と終了時刻がありません)。

コンパイル環境の準備

GitHub リポジトリからのコードの最初のコンパイル試行は、winternl.h ヘッダーがないためにエラーで終了しました。メッセージは、システムに分析対象コードが必要とする完全な Windows SDK ヘッダーセットが不足していることを示していました。

図1: 最初のコンパイル試行時に発生した winternl.h ヘッダーが見つからないエラー。

コードはまた、windows.h、Psapi.h、ntstatus.h、virtdisk.h、shlwapi.h、taskschd.h、bcrypt.h など、Windows API および NT API に関連する他のヘッダーも参照していました。このため、より完全なコンパイル環境を準備し、適切な SDK コンポーネントをインストールする必要がありました。

図2: 分析対象コードが必要とするヘッダーのリストの一部。

MSYS2/MinGW-w64 の使用試行

最初に、MSYS2/MinGW-w64 を使用してコンパイル環境を準備しました。この環境は、gcc および g++ コンパイラを含む Windows 用の GNU ツールを提供します。MSYS2 のパッケージは pacman を使用して管理されます。これは Linux システムの apt や Windows の winget と同様の役割を果たします。

図3: MSYS2 インストールの完了。

pacman を使用して MinGW-w64 GCC/G++ ツールチェーンをインストールしました。これは、Windows 向けの C/C++ コードのコンパイルを可能にするツールセットです。パッケージには、gcc コンパイラ、g++ C++ コンパイラ、リンカ、および Windows 環境で実行されるアプリケーションのビルドに必要なヘッダーとライブラリが含まれています。この試行の目的は、Visual Studio を使用せずに、MSYS2 で利用可能なオープンツールチェーンを使用してコードをコンパイルできるかどうかを確認することでした。

図4: pacman を使用した MSYS2/MinGW-w64 パッケージのインストール。

インストール後、g++ を使用してコードのコンパイルを試みました。コマンドでは、ソースファイルへのパスと生成する実行ファイルへのパスを直接指定しました。

C:\msys64\mingw64\bin\g++.exe C:\Users\User\Downloads\RoguePlanet.cpp -o C:\Users\User\Desktop\roguePlanet.exe

Unicode モードの問題

最初の顕著な Unicode モードの問題の兆候は、コンパイラのメッセージにおける文字型の非互換性に関するものでした。ログには、const wchar_t* または wchar_t* 型の値を LPCSTR または LPSTR に変換できないというエラーが含まれていました。これは、コードが Windows API 関数にワイド文字列を渡している一方で、コンパイラが従来の ANSI 文字列向けの関数バリアントを選択していることを意味していました。

Windows API では、多くの関数が ANSI(サフィックス A 付き)と Unicode(サフィックス W 付き)の2つのバリアントで存在します。たとえば、CreateFile は CreateFileA または CreateFileW としてマッピングされ、RegOpenKeyEx は RegOpenKeyExA または RegOpenKeyExW としてマッピングされます。A バリアントは char* または LPCSTR 型のパラメーターを期待し、W バリアントは wchar_t* または LPCWSTR 型のパラメーターを期待します。

分析対象のケースでは、コードは L"..." 形式のリテラルと wchar_t 型のバッファを使用していました。同時に、エラーメッセージは、コンパイラが GetModuleHandleA、RegOpenKeyExA、RegQueryValueExA、GetWindowsDirectoryA、CreateFileA、wsprintfA などの関数を選択したことを示していました。これは、コードが Unicode モードで記述されていたが、コンパイルコマンドで UNICODE と _UNICODE が定義されていなかったことを直接示しています。

そのため、UNICODE と _UNICODE の定義を追加して Unicode モードを強制しました。この変更後、明示的なサフィックスがない Windows API 関数は、CreateFileW、RegOpenKeyExW、GetModuleHandleW、GetWindowsDirectoryW などの W サフィックス付きバリアントにマッピングされるはずです。この変更後にエラーの一部が消失したことで、診断の正しさが確認されました。

C:\msys64\mingw64\bin\g++.exe C:\Users\User\Downloads\RoguePlanet.cpp -o C:\Users\User\Desktop\roguePlanet.exe -DUNICODE -D_UNICODE

しかし、Unicode 関連の問題が取り除かれた後も、コードと MinGW の間のより深い非互換性を示すエラーが残りました。これらは、FILE_BASIC_INFORMATION 構造体と FILE_RENAME_INFORMATION 構造体の重複定義(ソースコードと MinGW ヘッダーの両方で定義されている)に関するものや、MinGW で利用可能な FILE_RENAME_INFORMATION のバージョンがコードが期待するものと異なり、Flags フィールドが欠落していることなどに関するものでした。

さらに、g++ コンパイラの型(特に enum フラグや関数ポインタ)に対するより厳格なアプローチによってもエラーが発生しました。これは、VIRTUAL_DISK_ACCESS_MASK や ATTACH_VIRTUAL_DISK_FLAG の型、および関数ポインタを void* として渡すことに関連していました。その結果、MinGW はソースコードを大幅に変更しない限り、このコードのコンパイルには適さないと判断されました。

ツールをダウンロード