Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2024-51324 — Исследование для магистерской диссертации по CVE-2024-51324 (BYOVD). Продвинутый эксплойт с 4 режимами работы (SCANNER, LOADER, KILLER, CLEANUP), верификацией драйвера по SHA-256 и полной академической документацией. Портфолио-проект охватывает безопасность драйверов ядра Windows, реверс-инжиниринг IOCTL и эксплуатацию Bring Your Own Vulnerable Driver. | Kitploit
Инструменты/GitHubGitHub/devianntsec/cve-2024-51324
Оборонительные ИнструментыАнализ уязвимостейЭксплуатацияОбратная инженерияФорензикаТестирование на ПроникновениеСтатьи и ИсследованияОбучение и ОбразованиеRed Teaming

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Эксплуатация Бинарных Файлов
GitHubdevianntsec/cve-2024-51324

CVE-2024-51324

Репозиторий
1255 месяцев назадЕщё не проверено

Описание

Исследование для магистерской диссертации по CVE-2024-51324 (BYOVD). Продвинутый эксплойт с 4 режимами работы (SCANNER, LOADER, KILLER, CLEANUP), верификацией драйвера по SHA-256 и полной академической документацией. Портфолио-проект охватывает безопасность драйверов ядра Windows, реверс-инжиниринг IOCTL и эксплуатацию Bring Your Own Vulnerable Driver.

Поделиться

CVE-2024-51324 — BYOVD: BdApiUtil64.sys · Исследование в рамках магистерской диссертации

Platform Language License: MIT Research CVSS

Bring Your Own Vulnerable Driver (BYOVD) — антивирус Baidu, BdApiUtil64.sys
Три недокументированных примитива ядра: завершение процессов, произвольное удаление файлов и удаление используемых файлов в обход SectionObjectPointer
Затрагиваемое ПО: Baidu Antivirus v5.2.3.116083 (BdApiUtil64.sys)


Загрузка уязвимого драйвера в ядро (режим LOADER)

Описание

Этот репозиторий содержит моё исследование в рамках магистерской диссертации по CVE-2024-51324 — уязвимости класса Bring Your Own Vulnerable Driver (BYOVD) в драйвере ядра BdApiUtil64.sys антивируса Baidu.

Запись NVD присваивает базовую оценку CVSS v3.1 3.8 (Low) с вектором AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:N и CWE-269 (Improper Privilege Management). Эта оценка не отражает реальную картину локальной атаки, задокументированную в данном исследовании: после того как драйвер загружен администратором (одноразовый шаг, достижимый с помощью социальной инженерии или любой локальной эскалации привилегий), любой последующий процесс — включая процессы в песочнице или процессы стандартного пользователя — может отправлять IOCTL без дополнительных проверок прав. Оценка CVSS v3.1, присвоенная исследователем, — 7.8 (High) с вектором AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H — более точно отражает реальность эксплуатации после загрузки драйвера. Обе оценки обсуждаются в технической документации.

Драйвер создаёт объект устройства \Device\BdApiUtil с SecurityDescriptor = NULL, что позволяет любому процессу независимо от уровня целостности открыть дескриптор и отправлять IOCTL. Статический анализ с помощью Ghidra 11.0.3 показывает, что внутренний механизм более серьёзен, чем описано ранее: драйвер использует PsLookupProcessByProcessId + ObOpenObjectByPointer(KernelMode) вместо ZwOpenProcess, полностью обходя SeAccessCheck. Были полностью охарактеризованы три IOCTL-примитива, два из которых не имеют предшествующей публичной документации.

Мой вклад

АспектОписание
Техническая корректировкаZwOpenProcess отсутствует в таблице импорта; фактический механизм — PsLookupProcessByProcessId + ObOpenObjectByPointer(KernelMode), что безусловно обходит SeAccessCheck
Три задокументированных примитиваЗавершение процессов (0x800024B4), произвольное удаление файлов (0x80002648) и удаление используемых файлов в обход SectionObjectPointer (0x8000264C) — последние два не имеют предшествующей публичной документации
Четыре режима работыLOADER, KILLER, SCANNER и CLEANUP — управление полным жизненным циклом
Проверка SHA-256Хэш драйвера проверяется перед любой попыткой загрузки
Эмпирическое тестирование PPL10 попыток на каждую категорию процессов, подтверждающих, что PPL — единственное средство защиты времени выполнения
Криминалистический анализСобытие с ID 7045 сохраняется после очистки; событие с ID 1102 — самоизобличающий артефакт очистки журналов
Правила обнаруженияSigma-правило и конфигурация Sysmon (событие с ID 6 по хэшу + событие с ID 13 по ключу реестра)
Пересмотр CVSSЗадокументированное расхождение между официальной оценкой NVD (3.8 Low) и оценкой серьёзности локальной эксплуатации, присвоенной исследователем (7.8 High)

Структура репозитория

CVE-2024-51324/
├── README.md
├── LICENSE
│
├── drivers/
│   └── BdApiUtil64.sys              # Driver (not distributed)
│
├── exploit/
│   ├── exploit-explanation.md
│   └── byovd_killer.py              # Main exploit — 4 operational modes
│
└── docs/
    ├── screenshots/
    │   ├── 01-byovd-scan.png
    │   ├── 02-byovd-scan-target.png
    │   ├── 03-byovd-load.png
    │   ├── 04-byovd-load-custom.png
    │   ├── 05-kill-name.gif
    │   ├── 06-kill-pid.gif
    │   ├── 07-kill-limit.gif
    │   ├── 08-dry-run.gif
    │   └── 09-byovd-cleanup.png
    │
    └── analysis/
        ├── 01-root-cause.md
        ├── 02-driver-analysis.md    # Full Ghidra RE, three primitives, PPL testing
        └── 03-timeline.md

Быстрый старт

Предварительные требования

  • Windows 10/11 (любая сборка)
  • Python 3.6+
  • BdApiUtil64.sys (SHA-256: 47EC51B5F0EDE1E70BD66F3F0152F9EB536D534565DBB7FCC3A05F542DBE4428)
  • Учётная запись администратора (только для режимов LOADER и CLEANUP)
  • Для режима KILLER достаточно учётной записи стандартного пользователя после загрузки драйвера

Шаг 1 — Сканирование системы

python exploit/byovd_killer.py --scan
python exploit/byovd_killer.py --scan --target lsass.exe

Шаг 2 — Загрузка драйвера (требуются права администратора)

python exploit/byovd_killer.py --load
python exploit/byovd_killer.py --load --driver C:\path\to\BdApiUtil64.sys
python exploit/byovd_killer.py --load --service-name MyService

Шаг 3 — Завершение процессов (права администратора не требуются)

python exploit/byovd_killer.py --kill notepad.exe
python exploit/byovd_killer.py --pid 1234
python exploit/byovd_killer.py --kill notepad.exe --max-instances 2
python exploit/byovd_killer.py --kill notepad.exe --dry-run

Шаг 4 — Очистка (требуются права администратора)

python exploit/byovd_killer.py --cleanup
python exploit/byovd_killer.py --cleanup --service-name MyService

Режимы работы

РежимКомандаПраваОписание
SCANNER--scanЛюбой пользовательИнформация о состоянии системы и драйвера
LOADER--loadАдминистраторЗагрузка драйвера через создание сервиса ядра
KILLER--kill / --pidЛюбой пользовательЗавершение процессов через IOCTL
CLEANUP--cleanupАдминистраторОстановка и удаление сервиса драйвера

Демонстрации

Режим SCANNER — Информация о системе

Режим SCANNER

Режим SCANNER — Поиск целевого процесса

SCANNER: целевой процесс

Режим LOADER — Загрузка драйвера

Режим LOADER

Режим LOADER — Пользовательский путь и имя сервиса

LOADER: пользовательские параметры

Режим KILLER — Завершение по имени процесса

Завершение по имени

Режим KILLER — Завершение по PID

Завершение по PID

Режим KILLER — Ограничение количества экземпляров

Ограничение экземпляров

Скачать инструмент