
脆弱性タイトル: LuDaShi の不適切なアクセス制御
影響を受けるバージョン: 6.1026.4505.112 未満
発見日時: 2025年12月2日
発見者: ZhouRui
分析レポート:
LuDaShi は、無料のハードウェア認証、コンピュータ(携帯電話)の安定性保証、システムパフォーマンスの向上を提供する、よく知られた無料のシステムユーティリティソフトウェアです。LuDaShi およびその関連システム製品(コンピュータパフォーマンス最適化、システムパフォーマンス監視)に含まれる ComputerZ_x64.sys ドライバには、下位4GBのカーネルアドレスを読み取ることができるデータが含まれています。

このドライバは、IOCTL インターフェース (0xF1002508) をユーザー空間に公開しています。このインターフェースは、ユーザー提供の入力パラメータを処理する際に、渡されたメモリアドレスを適切に検証しません。ユーザー空間のプロセスは、このインターフェースを介して任意の下位4GBのアドレス値をドライバに渡すことができます。その後、ドライバはこのアドレスを使用して物理メモリの内容を読み取り、結果をユーザー空間の呼び出し元に返します。このアドレスパラメータには効果的なアクセス制御チェックがないため、攻撃者はこれを使用して、カーネル仮想アドレス空間を介して通常はアクセスできないシステムメモリ領域を読み取り、機密情報の漏洩を引き起こす可能性があります。この問題により、ローカル管理者は、読み込まれた脆弱なドライバを利用して、追加の特権なしにシステムメモリデータを取得でき、オペレーティングシステムのメモリアクセス分離メカニズムを侵害します。
このドライバは、アプリケーション層にデバイスオブジェクト (ComputerZ) への使用可能なシンボリックリンクを提供します。さらに下の、IOCTL を処理するディスパッチ関数 sub_11008 内で。

IoControlCode が 0xF1002508 の場合、次のコードが実行されます。これは、MmMapIoSpace を介して下位4GB内の任意のカーネルアドレスデータをアプリケーション層にマッピングします。攻撃者は、Proof-of-Concept (POC) を構築して、下位4GB内の任意の物理アドレスから任意のサイズのデータを読み取り、アプリケーション層に返すことができます。

このドライバをロードし、このリポジトリの POC コードを実行すると、攻撃効果は以下のようになります。この例では、物理アドレス 0xF0000 から 8 バイトのデータを読み取ろうとしましたが、読み取るデータ量は任意です。
