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

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

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

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

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

Категории

Все категории
Loading categories
kratosminifilter — Kratos — это высокопроизводительный драйвер минифильтра файловой системы Windows, предназначенный для обнаружения, блокировки и постоянной иммунизации. | Kitploit
Инструменты/GitHubGitHub/mukendi/kratosminifilter
Оборонительные ИнструментыАнализ вредоносных программРазведка угрозРеагирование на ИнцидентыОбнаружение Аномалий
GitHubmukendi/kratosminifilter

kratosminifilter

Kratos — это высокопроизводительный драйвер минифильтра файловой системы Windows, предназначенный для обнаружения, блокировки и постоянной иммунизации.

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

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться

🛡️ Kratos Minifilter — Драйвер ядра Windows для защиты от программ-вымогателей

Проект исследовательской работы в области защитной безопасности — драйвер-минифильтр Windows, разработанный на C++ для обнаружения и нейтрализации программ-вымогателей в реальном времени на уровне ядра (Ring 0).


📋 Содержание

  • Обзор
  • Архитектура
  • Механизмы обнаружения
  • Черный список по отпечатку
  • Установка
  • Конфигурация
  • Ограничения
  • Правовые предупреждения

Обзор

Kratos (Kratos.sys) — драйвер-минифильтр Windows, работающий на высоте 425342 (уровень Anti-Virus) через Filter Manager (fltmgr.sys). В отличие от статических сигнатурных антивирусных решений, Kratos использует чисто поведенческий подход:

  • Без базы сигнатур — обнаруживает неизвестные программы-вымогатели
  • Режим ядра — атомарное перехватывание до проверки на диске
  • Многоуровневый — поведенческий + энтропийный + структурный
  • Постоянный — черный список по хешу для блокировки повторных запусков

Цели

| Цель | Результат |

|----------|---------|

| Затронутые файлы (первый запуск) | < 5 |

| Затронутые файлы (повторные запуски) | 0 |

| Уровень ложных срабатываний | 0% (После настройки) |

| Совместимость | NTFS / ReFS |


Архитектура

root@kitploit:~
User-Mode
    │
    ▼
Filter Manager (fltmgr.sys) ← Altitude 425342
    │
    ▼
┌─────────────────────────────────────────────────────┐
│                  KRATOS.SYS                         │
│                                                     │
│  IRP_MJ_CREATE      → Инициализация контекстов      │
│  IRP_MJ_WRITE       → Энтропийный анализ            │
│  IRP_MJ_READ        → Подсчет соотношения R/W       │
│  IRP_MJ_SET_INFORMATION → Обнаружение удаления/переименования │
│                                                     │
│  RTL_AVL_TABLE  → KS_PROCESS_CONTEXT на PID          │
│  FLT_FILE_CONTEXT → Энтропия + состояние на файл     │
└─────────────────────────────────────────────────────┘
    │
    ▼
NTFS / ReFS

Механизмы обнаружения

Уровень 1 — Поведенческий

Kratos различает удаление ценных файлов (.docx, .pdf, .jpg...) и удаление системных/кэш-файлов с помощью KS_IsValuableFile():

  • ValuableDeleteCount — удаления за пределами системных каталогов
  • RenameToSuspicious — переименование в неизвестное расширение
  • HighEntropyWrites — обнаружено увеличение энтропии

Уровень 2 — Энтропия

Вычисление через предварительно рассчитанную LUT (KratosEntropyLUT512) — избегает использования log2(), недоступного в режиме ядра. Выборка 512 байт на каждую операцию записи.

  • Дельта: существующий файл с низкой энтропией → зашифрованные данные
  • Абсолютная: новый .tmp файл с энтропией ≥ 7,5/8 бит

Уровень 3 — Структурный (Обратный белый список)

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

root@kitploit:~
Исходное расширение ценно? ДА
Новое расширение распознано? НЕТ
→ ПОДОЗРИТЕЛЬНО — независимо от выбранного расширения

Этот подход может обнаружить LockBit 3.0 (.xmjzh8q), BlackCat/ALPHV (случайные) и любые будущие программы-вымогатели с неизвестным расширением.

Формула оценки

root@kitploit:~
ValuableDeleteCount > 10 → +10 баллов
RenameToSuspicious > 2 → +40 баллов
HighEntropyWrites > 3 → +40 баллов
RansomNoteCreated → +60 баллов
ShadowCopyDeleted → +75 баллов

Оценка ≥ 60 → ПРЕДУПРЕЖДЕНИЕ
Оценка ≥ 80 → КРИТИЧЕСКИЙ + Завершение + Черный список

Черный список по цифровому отпечатку

После обнаружения программы-вымогателя Kratos вычисляет ее 64-битный хеш FNV-1a по первым 4096 байтам исполняемого файла (заголовок PE + начало кода) и сохраняет его в реестре:

root@kitploit:~
\Registry\Machine\SOFTWARE\Kratos\Blacklist
  └── 1F81F13004B5B920 = "C:\Users\...\Hercule.exe"

При каждом создании процесса ProcessNotifyCallback проверяет черный список до любого выполнения. Процесс блокируется через CreationStatus = STATUS_ACCESS_DENIED.

Устойчивость к переименованию: хеш FNV-1a идентичен независимо от имени файла (Hercule-AES.exe, HERCUL~1.EXE, chrome.exe...).

Защита от подмены: процессы из белого списка проверяются по Ожидаемому имени + пути:

root@kitploit:~
chrome.exe + \Program Files\Google\Chrome\Application\ → Легитимный
chrome.exe + C:\Users\...\Desktop\                    → ПОДДЕЛЬНЫЙ

Установка

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

  • Windows 10/11 (x64)
  • Visual Studio 2022 с WDK (Windows Driver Kit)
  • ВМ с отключенным Secure Boot ** (или включенной тестовой подписью)

Компиляция

root@kitploit:~
# Откройте KratosMinifilter.sln в Visual Studio
# Конфигурация: Debug или Release / x64
# Build → Build Solution

Развертывание (тестовая ВМ)

root@kitploit:~
# На целевой ВМ — включите тестовый режим
bcdedit /set testsigning on

# Скопируйте Kratos.sys и Kratos.inf
# Установите через Device Manager или sc.exe
sc create Kratos type= kernel start= boot binPath= "C:\Kratos\Kratos.sys"
sc start Kratos

Конфигурация

Отслеживаемые расширения (Обратный белый список)

Измените g_LegitExtensions[] в KratosDetection.cpp, чтобы настроить расширения, считающиеся легитимными после переименования.

Процессы из белого списка

Измените g_TrustedProcesses[], чтобы добавить легитимные процессы с ожидаемым путем:

root@kitploit:~
{ "myapp.exe", L"\\Program Files\\MyApp\\" },

Пороги оценки

Измените KS_EvaluateThreatScore() в KratosDetection.cpp, чтобы настроить пороги ПРЕДУПРЕЖДЕНИЕ/КРИТИЧЕСКИЙ в соответствии с вашей средой.


Ограничения

  • От 1 до 3 файлов могут быть затронуты во время первого запуска
  • Нет автоматического механизма восстановления зашифрованных файлов
  • FNV-1a не устойчив к преднамеренному созданию коллизий (для production рекомендуется SHA-256)

Texte alternatif

Правовые предупреждения

⚠️ Этот драйвер разработан в рамках исследовательской работы в области защитной безопасности.

  • Использование строго ограничено изолированными тестовыми средами (ВМ без доступа к сети)
  • Любое развертывание на рабочей системе осуществляется под исключительную ответственность пользователя
  • Автор снимает с себя всякую ответственность за любой ущерб, возникший в результате неправильного использования
  • Изменение этого драйвера для обхода систем безопасности без разрешения является незаконным

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