
CVE-2022-22077 — это уязвимость высокой степени серьезности (показатель CVSS 7.8), затрагивающая драйвер RTCore64.sys, распространяемый с MSI Center.
Этот документ представляет всесторонний обзор фреймворка эксплуатации CVE-2022-22077 — сложного инструментария атак BYOVD (Bring Your Own Vulnerable Driver), нацеленного на уязвимость драйвера RTCore64.sys. Данный фреймворк демонстрирует продвинутые методы эксплуатации ядра Windows в образовательных целях и для исследований в области безопасности.
Рассматриваемый материал включает техническую основу уязвимости, архитектуру фреймворка и интеграцию с более широким набором инструментов RedTeam LazyOwn. Подробный анализ уязвимости см. в разделе Анализ уязвимости. Конкретные детали реализации отдельных компонентов — в разделе Фреймворк эксплуатации.
CVE-2022-22077 — это уязвимость высокой степени серьезности (оценка CVSS 7.8), затрагивающая драйвер RTCore64.sys, распространяемый с приложениями MSI Center и Dragon Center. Уязвимость связана с открытыми интерфейсами IOCTL, которые позволяют непривилегированным пользователям выполнять произвольное чтение и запись физической памяти, фактически обходя все механизмы безопасности ядра Windows.
Фреймворк реализует доступ к памяти ядра через структурированный подход, используя уязвимости драйвера RTCore64.sys:
Автор: grisun0, Главный архитектор ядерного хаоса & По совместительству Шептун драйверов — LazyOwn RedTeam
7 мин чтения · Опубликовано в 3:33 утра, потому что «HVCI? Никогда не встречал.»
«Лучший способ получить контроль над системой — вежливо попросить разрешения у её собственного драйвера, используя IOCTL.» — grisun0, вероятно, пока реверсил MSI Afterburner в трусах
Давайте пропустим часть, где я притворяюсь, что это нормально.
Если вы это читаете, вы, скорее всего:
Добро пожаловать в LazyOwn RedTeam™, где мы не обходим безопасность — мы приглашаем её на ужин, а потом крадём её кошелёк.
Сегодня я представляю вам RTCore64.sys — не драйвер, не инструмент, а полноценный эксплойт ядра, замаскированный под утилиту для разгона вашего RTX 3090.
И да — есть твист.
Спойлер: Он всё ещё использует cmd.exe. Больший спойлер: Теперь он также использует beacon.exe. Ещё больший спойлер: Оба теперь работают с привилегиями NT AUTHORITY\SYSTEM, благодаря драйверу, который считал «произвольный доступ к памяти ядра» функцией для удобства.
🕳️ Что такое RTCore64.sys? (Или: «Как превратить MSI Afterburner в бэкдор Ring 0») Представьте, что вы устанавливаете драйвер для настройки напряжения GPU… и случайно получаете полный доступ на чтение/запись к памяти ядра.
Это CVE-2022–22077 — уязвимость настолько прекрасно безрассудная, что capcom.sys на её фоне выглядит как застенчивый библиотекарь.
Пока capcom.sys вежливо просил выполнить ваш callback, RTCore64.sys просто вручает вам ключи от королевства — без лишних вопросов.
«Вот тебе IOCTL. Пиши любой адрес. Читай любое значение. Развлекайся.» — MSI, вероятно
И так как мы профессионалы, мы не просто делаем DeviceIoControl наобум. Мы воруем маркеры SYSTEM, патчим структуры EPROCESS и порождаем оболочки SYSTEM — и всё это до того, как ваш GPU нагреется до 70°C.
Позвольте мне провести вас через пять актов этого цифрового ограбления:
Неправильно.
Внутри скрывается RTCore64.sys — подписанный, уязвимый драйвер, который открывает IOCTL, такие как:
0x80002048 → Чтение памяти ядра 0x8000204c → Запись памяти ядра Никакой валидации. Никаких проверок на адекватность. Просто грубая, нефильтрованная мощь.
«Зачем песочница, когда можно ядро?» — Команда инженеров MSI, 2019
Просто:
sc create RTCore64 binPath=C:\Windows\Temp\RTCore64.sys type=kernel
sc start RTCore64
Бум. Доступ к ядру разблокирован.
Предварительное условие: SeLoadDriverPrivilege (который у вас уже есть, потому что вы так хороши). Бонус: HVCI отключён (потому что кому нужна виртуализация, когда есть стиль?).
CreateFileW(L"\\.\RTCore64", ...) → Хватаем золотой билет. EnumDeviceDrivers() → Находим базу ntoskrnl.exe. Парсим PsInitialSystemProcess из диска → Получаем смещение. Читаем EPROCESS процесса SYSTEM → Крадём его маркер. Записываем маркер в свой процесс → Поздравляю, ты бог. CreateProcessW(L"beacon.exe", ...) → Запускаем полезную нагрузку как SYSTEM. Без шелл-кода. Без ROP-цепочек. Просто чистая, неразбавленная манипуляция объектами ядра.
del C:\Windows\Temp\RTCore64.sys
sc delete RTCore64
Пуф. Исчезло. Как призрак, который разогнал вашу RAM и испарился.
tasklist /m mimilib.dll
eventcreate /t INFORMATION /id 1 /l APPLICATION /d “sekurlsa::logonpasswords”
type C:\Windows\System32\mimilsa.log
→ Хэши Domain Admin? Есть. → Пароли в открытом виде? Есть. → Golden Tickets? Сейчас будут.
RTCore64.sys — не одиночка. Это узел в фреймворке LazyOwn RedTeam — модульной, расширяемой и слегка безумной экосистеме атакующих инструментов.
Представьте:
Генерируете шелл-код с помощью ShadowLink. Обфусцируете его с помощью LazyAddons. Доставляете через кражу маркера RTCore64.sys. Выполняете как SYSTEM через CreateProcessW. Всё это координируется с C2, который выглядит как загрузка Steam. И лучшая часть? Всё это с открытым исходным кодом. Потому что прозрачность — лучшая оперативная безопасность.
👉 Смотрите это в действии (мысленно, потому что я не снимаю это в 4 утра), шучу, берите попкорн и смотрите:
https://www.youtube.com/shorts/V2tqH53LRIw
Да. Это Windows beacon.exe:
Порожден через кражу маркера RTCore64.sys Работает как NT AUTHORITY\SYSTEM Отправляет данные обратно на ваш C2 И всё это, пока Диспетчер задач говорит «Выглядит нормально» И оно даже не запущено от администратора. Просто настолько хорошо.
Я не просто редтимер. Я ответственный редтимер. Так что вот бесплатная разведка:
yara
rule RTCore64_Based_Kernel_Exploit {
meta:
author = “LazyOwn BlueTeam”
description = “Detects RTCore64.sys exploitation via known IOCTLs and patterns”
license = “GPLv3”
strings:
$driver_name = “RTCore64.sys” ascii wide
$ioctl_read = { 80 00 20 48 } // 0x80002048
$ioctl_write = { 80 00 20 4C } // 0x8000204c
$create_device = “CreateFileW” ascii
$device_path = “\\.\RTCore64” ascii wide
$token_steal = “PsInitialSystemProcess” ascii
condition:
all of them
}
Ищите:
RTCore64.sys загружен вне C:\Program Files (x86)\MSI Afterburner
Вызовы DeviceIoControl с 0x80002048 или 0x8000204c
Изменения маркера процесса с низких привилегий на SYSTEM
sc create или sc start, нацеленные на RTCore64
Чтение PsInitialSystemProcess из памяти ядра
Если вы видите эту комбинацию?
Вас RTCore’нули.
Этот инструмент выпущен только для образовательного и этичного редтиминга.
Не используйте его на системах, которыми вы не владеете или на тестирование которых у вас нет явного разрешения.
Неправильное использование может привести к:
Увольнению Судебному иску Развитию у вашего GPU комплекса бога Отзыву подписи вашего драйвера Microsoft (снова) Вопросу от мамы, почему вы снова «взламываете правительство» Я не несу никакой ответственности. Вы сами по себе, ковбой.
Такие инструменты, как RTCore64.sys, существуют не для того, чтобы ломать системы — а чтобы показать их хрупкость.
Чтобы обучать защитников. Чтобы тестировать логику обнаружения. Чтобы сделать ваш игровой ПК самым опасным устройством в сети.
Так что вперёд. Учитесь. Тестируйте. Ломайте вещи (этично).
И помните:
Лучшая безопасность — это та, которая заставляет вас задуматься, не строит ли ваша видеокарта против вас заговор.
🔐 grisun0, подписываюсь — из отладчика ядра, вероятно, внутри VRAM вашего GPU.
BYOVD Олицетворение маркеров RTCore64.sys Эксплуатация ядра Редтиминг LazyOwn
P.S. Если ваш GPU начнёт разгоняться сам в 3 часа ночи… пожалуйста. 🚀
🔗 CVE-2022-22077 на NVD
🔗 https://www.loldrivers.io/drivers/e32bc3da-4db1-4858-a62c-6fbe4db6afbd/
🔗 https://github.com/grisuno/beacon