
CVE-2025-67246
Название уязвимости: Неправильный контроль доступа в LuDaShi
Затронутые версии: Менее 6.1026.4505.112
Время обнаружения: 2 декабря 2025 года
Обнаружил: ZhouRui
Отчёт об анализе:
LuDaShi — известное бесплатное системное служебное ПО, которое предоставляет бесплатную аппаратную аутентификацию, обеспечение стабильности компьютера (мобильного телефона) и повышение производительности системы. Драйвер ComputerZ_x64.sys в LuDaShi и его сопутствующих системных продуктах (оптимизация производительности компьютера, мониторинг производительности системы) содержит данные, позволяющие читать младшие 4 ГБ адресного пространства ядра.

Этот драйвер предоставляет интерфейс IOCTL (0xF1002508) пользовательскому пространству. Этот интерфейс не выполняет должную проверку переданного адреса памяти при обработке входных параметров, предоставленных пользователем. Процессы пользовательского пространства могут передать драйверу через этот интерфейс произвольное значение адреса в младших 4 ГБ. Затем драйвер использует этот адрес для чтения содержимого физической памяти и возвращает результат вызывающему из пользовательского пространства. Поскольку этот параметр адреса не имеет эффективных проверок контроля доступа, злоумышленники могут использовать его для чтения областей системной памяти, обычно недоступных через виртуальное адресное пространство ядра, что приводит к утечке конфиденциальной информации. Эта проблема позволяет локальным администраторам получать данные системной памяти без дополнительных привилегий, используя загруженный уязвимый драйвер, тем самым нарушая механизм изоляции доступа к памяти операционной системы.
Этот драйвер предоставляет прикладному уровню доступную символическую ссылку на объект устройства (ComputerZ). Далее, в функции диспетчеризации sub_11008, обрабатывающей IOCTL.

Когда IoControlCode равен 0xF1002508, выполняется следующий код. Он отображает произвольные данные из адреса ядра в младших 4 ГБ в прикладной уровень через MmMapIoSpace. Злоумышленник может создать доказательство концепции (POC) для чтения данных произвольного размера с любого физического адреса в младших 4 ГБ и возврата их в прикладной уровень.

Загрузите этот драйвер, запустите POC-код из этого репозитория, и эффект атаки будет следующим. В этом примере я попытался прочитать 8 байт данных с физического адреса 0xF0000, но объём считываемых данных является произвольным.
