- Статус
- Оффлайн
- Регистрация
- 13 Фев 2026
- Сообщения
- 616
- Реакции
- 16
Здарова, реверсеры. Easy Anti-Cheat (EAC) в очередной раз подкинул проблем любителям Ring-1. Судя по логам, в последних апдейтах Fortnite и Rust завезли новые проверки для SVM гипервизоров, которые наглухо вешают систему в BSOD при инициализации.
Ситуация классическая: пишется кастомный гипервизор (Type 1), который отлично переваривает Apex и Arc Raiders, но стоит запустить Fortnite — ловим DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1) сразу после надписи "waiting for game".
Технические детали падения:
Похоже, античит либо детектит аномалии в таймингах через CPUID/MSR, либо проверяет консистентность структур, которые гипервизор не успевает или неправильно подменяет при VM-exit. Самое интересное, что IRQL задрана до 14 (0xE), что намекает на выполнение кода в контексте прерывания или жесткого таймера.
Адрес ffffffff f6542627 выглядит как откровенный мусор или результат маскировки, которую EAC успешно пробил. Если вы ковыряете свои SVM-решения, обратите внимание на то, как вы обрабатываете вложенные страницы и перехваты MSR. Явно идет обращение по невалидному указателю в высокоприоритетном потоке.
Кто уже сталкивался с этой итерацией EOS? Есть мысли, что именно они начали запрашивать через VM-Exit, что приводит к такой инвалидности указателя в их собственном драйвере?
Ситуация классическая: пишется кастомный гипервизор (Type 1), который отлично переваривает Apex и Arc Raiders, но стоит запустить Fortnite — ловим DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1) сразу после надписи "waiting for game".
Технические детали падения:
- Модуль: EasyAntiCheat_EOS.sys
- Оффсет: +26f9cf
- Инструкция:
Код:
add byte ptr [rcx],al - Bugcheck: 0xD1 (IRQL 14)
Похоже, античит либо детектит аномалии в таймингах через CPUID/MSR, либо проверяет консистентность структур, которые гипервизор не успевает или неправильно подменяет при VM-exit. Самое интересное, что IRQL задрана до 14 (0xE), что намекает на выполнение кода в контексте прерывания или жесткого таймера.
DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1)
Arguments:
Arg1: fffffffff6542627, memory referenced
Arg2: 000000000000000e, IRQL
Arg3: 0000000000000001, value 0 = read operation, 1 = write operation
Arg4: fffff8058c3af9cf, address which referenced memory
PROCESS_NAME: System
IMAGE_NAME: EasyAntiCheat_EOS.sys
FAILURE_BUCKET_ID: AV_EasyAntiCheat_EOS!unknown_function
Arguments:
Arg1: fffffffff6542627, memory referenced
Arg2: 000000000000000e, IRQL
Arg3: 0000000000000001, value 0 = read operation, 1 = write operation
Arg4: fffff8058c3af9cf, address which referenced memory
PROCESS_NAME: System
IMAGE_NAME: EasyAntiCheat_EOS.sys
FAILURE_BUCKET_ID: AV_EasyAntiCheat_EOS!unknown_function
Адрес ffffffff f6542627 выглядит как откровенный мусор или результат маскировки, которую EAC успешно пробил. Если вы ковыряете свои SVM-решения, обратите внимание на то, как вы обрабатываете вложенные страницы и перехваты MSR. Явно идет обращение по невалидному указателю в высокоприоритетном потоке.
Кто уже сталкивался с этой итерацией EOS? Есть мысли, что именно они начали запрашивать через VM-Exit, что приводит к такой инвалидности указателя в их собственном драйвере?