Защита от программ-вымогателей
PRX-SD включает выделенный движок RansomwareDetector, идентифицирующий поведение программ-вымогателей в реальном времени. В отличие от обнаружения на основе сигнатур, требующего известных образцов, детектор программ-вымогателей использует поведенческую эвристику для обнаружения zero-day вымогателей до того, как они закончат шифрование ваших файлов.
Принцип работы
Детектор программ-вымогателей работает как часть монитора реального времени и анализирует события файловой системы на паттерны, указывающие на активное шифрование. Он работает по трём осям обнаружения:
1. Обнаружение пакетного шифрования
Детектор отслеживает скорость изменения файлов на процесс и каталог. Когда один процесс изменяет аномально высокое число файлов за короткое временное окно, это вызывает оповещение.
| Параметр | По умолчанию | Описание |
|---|---|---|
batch_threshold | 20 | Количество изменений файлов для активации обнаружения |
batch_window_secs | 10 | Временное окно в секундах для подсчёта пакетов |
min_files_affected | 5 | Минимальное количество различных файлов перед оповещением |
[ransomware]
enabled = true
batch_threshold = 20
batch_window_secs = 10
min_files_affected = 52. Мониторинг изменений расширений
Программы-вымогатели обычно переименовывают файлы с новым расширением после шифрования. Детектор отслеживает массовые изменения расширений, особенно на известные расширения вымогателей:
.encrypted, .enc, .locked, .crypto, .crypt, .crypted,
.ransomware, .ransom, .rans, .pay, .pay2key,
.locky, .zepto, .cerber, .cerber3, .dharma, .wallet,
.onion, .wncry, .wcry, .wannacry, .petya, .notpetya,
.ryuk, .conti, .lockbit, .revil, .sodinokibi,
.maze, .egregor, .darkside, .blackmatter, .hive,
.deadbolt, .akira, .alphv, .blackcat, .royal,
.rhysida, .medusa, .bianlian, .clop, .8baseWARNING
Мониторинга расширений одного недостаточно — сложные программы-вымогатели могут использовать случайные или легитимно выглядящие расширения. PRX-SD сочетает изменения расширений с анализом энтропии для надёжного обнаружения.
3. Обнаружение высокой энтропии
Зашифрованные файлы имеют максимально высокую энтропию Шеннона (близкую к 8,0 при анализе на уровне байтов). Детектор сравнивает энтропию файла до и после изменения:
| Метрика | Порог | Значение |
|---|---|---|
| Энтропия файла | > 7,8 | Содержимое файла вероятно зашифровано или сжато |
| Дельта энтропии | > 3,0 | Файл изменился с низкой до высокой энтропии (шифрование) |
| Энтропия заголовка | > 7,5 | Первые 4 КБ имеют высокую энтропию (исходные магические байты уничтожены) |
Когда энтропия файла резко возрастает после изменения, и файл ранее был известным типом документа (PDF, DOCX, изображение), это является сильным индикатором шифрования.
Оценка обнаружения
Каждая ось обнаружения вносит вклад в составную оценку программы-вымогателя:
| Сигнал | Вес | Описание |
|---|---|---|
| Пакетное изменение файлов | 40 | Много файлов быстро изменены одним процессом |
| Изменение расширения на известное вымогателю | 30 | Файл переименован с расширением вымогателя |
| Изменение расширения на неизвестное | 15 | Файл переименован с необычным новым расширением |
| Высокая дельта энтропии | 25 | Энтропия файла резко возросла |
| Высокая абсолютная энтропия | 10 | Файл имеет почти максимальную энтропию |
| Создание записки о выкупе | 35 | Обнаружены файлы, соответствующие паттернам записок о выкупе |
| Удаление теневых копий | 50 | Попытка удалить теневые копии томов |
Составная оценка выше 60 вызывает вердикт MALICIOUS. Оценки 30-59 дают оповещение SUSPICIOUS.
Обнаружение записок о выкупе
Детектор отслеживает создание файлов, соответствующих распространённым паттернам записок о выкупе:
README_RESTORE_FILES.txt, HOW_TO_DECRYPT.txt,
DECRYPT_INSTRUCTIONS.html, YOUR_FILES_ARE_ENCRYPTED.txt,
RECOVER_YOUR_FILES.txt, !README!.txt, _readme.txt,
HELP_DECRYPT.html, RANSOM_NOTE.txt, #DECRYPT#.txtTIP
Обнаружение записок о выкупе основано на паттернах и не требует, чтобы сам файл записки был вредоносным. Само создание файла, соответствующего этим паттернам, в сочетании с другими сигналами вносит вклад в оценку вымогателя.
Автоматическое реагирование
При обнаружении программы-вымогателя реагирование зависит от настроенной политики:
| Действие | Описание |
|---|---|
| Alert | Записать событие и отправить уведомления (вебхук, email) |
| Block | Запретить файловую операцию (только в режиме блокировки fanotify Linux) |
| Kill | Завершить нарушающий процесс |
| Quarantine | Переместить затронутые файлы в зашифрованное хранилище карантина |
| Isolate | Заблокировать весь сетевой доступ для машины (аварийный режим) |
Настройте реагирование в config.toml:
[ransomware.response]
on_detection = "kill" # alert | block | kill | quarantine | isolate
quarantine_affected = true # поместить изменённые файлы в карантин как улики
notify_webhook = true # отправить вебхук-уведомление
notify_email = true # отправить email-оповещение
snapshot_process_tree = true # захватить дерево процессов для криминалистикиКонфигурация
Полная конфигурация детектора программ-вымогателей:
[ransomware]
enabled = true
batch_threshold = 20
batch_window_secs = 10
min_files_affected = 5
entropy_threshold = 7.8
entropy_delta_threshold = 3.0
score_threshold_malicious = 60
score_threshold_suspicious = 30
# Каталоги для защиты с повышенной чувствительностью
protected_dirs = [
"~/Documents",
"~/Pictures",
"~/Desktop",
"/var/www",
]
# Процессы, освобождённые от мониторинга (например, программное обеспечение резервного копирования)
exempt_processes = [
"borgbackup",
"restic",
"rsync",
]
[ransomware.response]
on_detection = "kill"
quarantine_affected = true
notify_webhook = true
notify_email = falseПримеры
# Запустить мониторинг с защитой от программ-вымогателей
sd monitor --auto-quarantine /home
# Детектор программ-вымогателей включён по умолчанию в режиме демона
sd daemon start
# Проверить статус детектора программ-вымогателей
sd status --verboseСледующие шаги
- Мониторинг файлов — настройка мониторинга в реальном времени
- Демон — запуск как фонового сервиса
- Реагирование на угрозы — полная настройка политики устранения угроз
- Вебхук-оповещения — получение мгновенных уведомлений