EDR с ML: детекция за пределами сигнатур
Антивирус не детектирует fileless атаки — сигнатуры устаревают через час после выхода эксплойта. Наши EDR/XDR, построенные на поведенческом ML и графовых нейронных сетях (GNN), находят аномалии в реальном времени. Мы разработали и внедрили такие системы для компаний с 500–5000 хостов. Каждая атака, которую мы остановили, начиналась с того, что антивирус промолчал.
Fileless malware, living-off-the-land, credential theft — эти техники обходят сигнатуры. Как отмечено в отчёте SANS по endpoint security, среднее время обнаружения без ML превышает 200 дней. Средняя стоимость инцидента безопасности по отраслевым данным — $4.45 млн, а для малого бизнеса — от $100 000. EDR с ML анализирует не файлы, а поведение: графы процессов, последовательности Win32 API, аномалии памяти. Результат: детекция zero-day атак за секунды. Latency p99 детекции — 200 мс, точность моделей превышает 99%.
Техники, детектируемые EDR с ML
- Fileless malware. Код выполняется в памяти — на диск ничего не пишется: PowerShell с encoded command, reflective DLL injection, process hollowing. AV не видит файла для сканирования. EDR видит аномальные вызовы VirtualAllocEx, WriteProcessMemory, CreateRemoteThread. (Подробнее: Fileless malware).
- Living-off-the-land. Атакующий использует легитимные системные инструменты: certutil для скачивания payload, regsvr32 для выполнения скрипта, wmic для lateral movement. ML-модель на поведении процессов замечает нетипичные паттерны — например, certutil, запущенный из Excel. (См. Living off the land (cybersecurity)).
- Process injection. Вредоносный код инжектируется в легитимный процесс (explorer.exe, svchost.exe). EDR анализирует цепочку API-вызовов: VirtualAllocEx + WriteProcessMemory + CreateRemoteThread — классический DLL injection.
- Credential theft. Mimikatz и его аналоги делают LSASS memory dump. EDR детектирует: OpenProcess к lsass.exe из нестандартного процесса, чтение памяти с определёнными патчами.
Как ML анализирует поведение endpoint?
Process graph analysis
Каждый процесс — узел в графе, рёбра — spawn, network connections, file operations. GNN классифицирует подграф как нормальный или подозрительный. Пример подозрительного подграфа:
outlook.exe → cmd.exe → powershell.exe -enc [base64] → curl.exe → evil.com Phishing email → выполнение вложения → PowerShell загрузка payload — классический kill chain, видимый через process tree.
API call sequences
Последовательности Win32 API вызовов — характерная «подпись» малварных техник. Наши модели LSTM или Transformer на последовательностях syscall/API log: учатся различать нормальное ПО от эксплоит-паттернов. Точность превышает 99% в наших тестах при p99 latency 200 мс.
Memory forensics
Анализ memory dumps: энтропия регионов памяти (высокая = упакованный код), наличие PE headers в неожиданных местах, unsigned code execution.
Почему XDR эффективнее EDR?
XDR расширяет EDR, объединяя сигналы из endpoint, network, cloud и email в единый detection pipeline. По отдельности каждый сигнал — алерт средней важности, но корреляция превращает их в инцидент HIGH.
| Источник | Сигнал | Контекст |
|---|---|---|
| Endpoint | PowerShell spawned from Word | Document-based attack |
| Network | DNS query to DGA domain | C2 communication |
| Phishing email received 10 min earlier | Attack vector | |
| Cloud | AAD: impossible travel login | Credential compromise |
Сравним: EDR детектирует аномальный PowerShell, но без Network-сигнала C2 не понимает, что это часть атаки. XDR коррелирует четыре события за 2 секунды и помечает инцидент как критический.
Как работает автоматическое реагирование?
EDR позволяет реагировать с endpoint: изоляция хоста, kill process, collect forensic dump, snapshot памяти. Автоматизация:
class AutomatedResponse: def respond(self, incident: Incident) -> None: if incident.severity == "CRITICAL" and incident.confidence > 0.9: self.edr_api.isolate_host(incident.host_id) self.create_jira_ticket(incident, priority="P1") self.notify_soc(incident, channel="critical-incidents") elif incident.severity == "HIGH": self.edr_api.collect_forensic_dump(incident.host_id) self.create_jira_ticket(incident, priority="P2") Что входит в работу
| Этап | Результат |
|---|---|
| Аудит инфраструктуры | Отчёт с выявленными пробелами и рекомендациями |
| Проектирование архитектуры | Документация: схемы, спецификации, выбор стека |
| Разработка ML-моделей | Обученные модели поведенческого анализа и UEBA с метриками |
| Интеграция с SIEM/SOAR | Настроенные корреляции, дашборды, алерты |
| Настройка playbooks | Автоматическое реагирование: изоляция, сбор форензики, оповещение |
| Тестирование пентестом | Отчёт о проникновении с фиксацией детекции |
| Документация и обучение | Инструкции, видеоуроки, workshop для команды |
| Техническая поддержка | 3 месяца сопровождения после внедрения |
Процесс внедрения AI-EDR за 6 шагов
- Аудит инфраструктуры: инвентаризация, оценка текущих средств защиты.
- Проектирование архитектуры: выбор стека, схемы интеграции.
- Разработка ML-моделей: обучение на ваших данных, настройка по вашим сценариям.
- Интеграция: связка с SIEM/SOAR, настройка валидации алертов.
- Тестирование: пентест, валидация детекции на тестовых атаках.
- Деплой и обучение: rollout на все хосты, workshop для вашей команды.
Практический кейс: как мы отразили атаку за 8 минут
Из нашей практики: фармацевтическая компания, 800 Windows-хостов. Использовали Wazuh + кастомный ML-слой. Атакующий получил доступ через valid credentials, начал lateral movement через PsExec.
Детекция через 8 минут:
- PsExec запуск с сервисного аккаунта к хостам, которые ранее не контактировали.
- Аномальный паттерн parent-child: services.exe → cmd.exe → whoami, net user, net group.
- UEBA: сервисный аккаунт первый раз за 6 месяцев работает в 2:17 ночи.
Автоматический ответ: изоляция 3 хостов. Атакующий потерял foothold. Forensic dump собран. Потери от утечки R&D данных оцениваются в миллионы долларов — наш клиент сэкономил за счёт быстрой реакции (экономия превысила $500 000). Инвестиции в систему окупаются за 6–12 месяцев.
Без EDR атака продолжалась бы к критическим серверам. Опыт показывает: среднее время обнаружения без ML — 206 дней. Наша система сокращает его до минут. Получите консультацию инженера — опишите свою инфраструктуру, и мы предложим оптимальное решение.
Сроки и доставка
| Этап | Срок |
|---|---|
| Аудит и проектирование | 1–2 недели |
| Разработка ML-моделей | 3–6 недель |
| Интеграция и донастройка | 2–4 недели |
| Тестирование и деплой | 1–2 недели |
Полный цикл под ключ — от 7 до 14 недель в зависимости от сложности. Стоимость рассчитывается индивидуально. Свяжитесь с нами для консультации.







