Запретить администратору вступать во владение объектом - PullRequest
0 голосов
/ 29 ноября 2018

В качестве предпосылки я хочу, чтобы вы знали, что это не имеет никакого отношения к мошенничеству с играми, так как меня интересует только то, как работает Windows.Я даже лично не играю в видеоигры.

EasyAntiCheat , который поставляется с Fortnite, не позволяет изменять игровой процесс и изменять его параметры.

Например, пытаясь изменить приоритет (я не ищу способ изменить приоритет, поскольку решение уже было размещено здесь и здесь в Wayback Machineзахват) приводит к ошибке отказано в доступе .

Изменение ACL процесса с использованием Process Hacker или Process Explorer также приводит к той же ошибке, даже если пользователь является администратором и содержит SeTakeOwnershipPrivilege вправо.


Поскольку:

  • PatchGuard включен, поэтому перехват ядра в старом стиле невозможен даже для драйвера EAC
  • Ядро предоставляет API-интерфейсы, которые позволяют только водителям получать уведомления о происходящих системных вызовах и не изменять поведение стандартного ядра
  • Мини-фильтр файловой системы драйвера EasyAntiCheat не долженвлияют на процессы ACL.Фактически, результат остается тем же, даже если фильтр выгружается с использованием FLTMC.exe
  • Внедрение кода в процесс, кажется, не происходит, по крайней мере, при перечислении Загрузка изображения событий в Process Monitor, даже если внедрение может быть выполнено другими способами (у меня недостаточно знаний об этом)
  • Процесс не Защищен или Light Protected

Каков механизм, посредством которого Windows 10 x64 (1803) позволяет EAC делать то, что описано выше?Возможно, чтобы найти ответ, было бы достаточно уделить больше внимания 4-му методу.

Здесь вы можете найти ссылку на список Загрузить изображение событийкоторые появляются от запуска ProcessHacker.exe до его завершения в Sysinternals Process Monitor.

PS: Извините за любую грамматическую ошибку, английский не является моим основным языком.

...