ݺߣ

ݺߣShare a Scribd company logo
Роботы среди нас!
Роботы среди нас!
ML на первой линии SOC
Сергей Солдатов
Лаборатория Касперского
Руководитель SOC
Проблемы SOC:
обнаружение и триаж
FP против FN
Рост скрытности действий атакующего
Снижение FN, Рост FP
Рост FN, Снижение FP
Типовое применение МашОбуча –
автоматическое обнаружение
• Профилирование à поиск отклонения
• Машинное обучение без учителя
• Обработка известного à поиск похожего
• Машинное обучение с учителем
Другое применение МашОбуча – Триаж
• Принять решение: прилетевший Алерт - это
• Ложное срабатывание (False Positive, FP)
• Свидетельство реального инцидента (True Positive, TP)
• ~ Работа Первой линии «классического» SOC
• Автоаналитик (a.k.a SkyNet)!
Упрощенная
архитектура MDR
8
Телеметрия
ü Детекты
сенсоров
ü Поведение
процессов
ü События ОС
Микро-корреляция на уровне сенсора:
ü Все технологии обнаружения на сенсоре
ü Репутация (Облако)
Макро-корреляция, обнаружение ТТР:
ü Знания ТТР:
ü Внутренние исследования
ü MITRE ATT&CK
ü Анализ защищенности/Red teaming
ü Практика расследования инцидентов
ü Практика мониторинга
Адаптация
Аналитик SOC, Threat hunting:
ü Проверка поведенческих гипотез
ü Контекст
ü Расследование пограничных случаев
ü Общее совершенствование
Сенсоры
(Источники событий)
Облако
Продукты
Человек
Managed Detection and Response (MDR)
https://support.kaspersky.com/MDR/ru-RU/all-in-one.htm
Этапы пайплайна MDR
Инциденты
Вердикт: True/False
Кейсы (Cases)
Алерты
Связанные Алерты и События
События
Совокупность событий
Числовые характеристики
• Сервис обслуживает сотни тысяч EDR-сенсоров
• Миллиарды событий телеметрии в день
• Тысячи алертов
• 30-70% алертов закрываются аналитиками как FP без импорта в
Case
• 1-10% алертов – свидетельства реальных инцидентов (TP)
Мечты…, превращенные в Цели!
• Сервис обслуживает сотни тысяч EDR-сенсоров
• Миллиарды событий телеметрии
• Тысячи алертов
• 30-70% алертов закрываются аналитиками как FP без импорта в
Case – эту часть не выдавать на триаж Аналитикам => повысить
эффективность работы людей
• 1-5% алертов – свидетельства реальных инцидентов (TP) –
повысить совокупную конверсию автоматического анализа
ML-реализация
Автоаналитика
https://www.youtube.com/watch?v=DPzdb9Uivwc&ab_channel=ODSAIGlobal
Daniil Udimov: How to improve SOC analysts efficiency using ML
Обучение
• Автоаналитик обучается на размеченных
Аналитиками SOC исторических данных с
целью «научиться» предсказывать
решение Аналитика SOC (TP – 1, FP - 0)
• Автоаналитик выдает решение в виде
числа в диапазоне (0; 1) - Score
• Ввиду сильной разбалансированности
классов, мы не можем полностью
заменить Аналитика SOC Автоаналитиком
• Но мы можем снизить нагрузку на
Аналитика SOC
Варианты применения
• Подсказка Аналитику SOC
• Приоритезация в очереди Алертов
• Подавление Алертов, являющихся FP по мнению Модели (Score
меньше заданного Порог)
• На практике вполне возможна и комбинация
• пока нет необходимости
Этапы пайплайна MDR
Инциденты
Вердикт: True/False
Кейсы (Cases)
Алерты
Связанные Алерты и События
События
Совокупность событий
Этапы пайплайна MDR + ML
Инциденты
Вердикт: True/False
Кейсы (Cases)
Автоаналитик
Подавление части FP
Алерты
Связанные Алерты и События
События
Совокупность событий
Автоматическое
обнаружение
Решает
проблему FN
Решает
проблему FP
Текущее качество работы
Автоаналитика
• Анализируем треть поступающих алертов
• И это не предел!
• Вероятность ошибки не превышает 2%
Данные для Модели
Входные данные
[
{
'processfilepath': 'c:windowssystem32cmd.exe',
'creation_time': ‘2011-03-09T20:57:53.527617Z',
'file_size': 179712,
'hunts': ['process_installing_itself_as_scheduled_task_using_schtasks’,
'using_schtasks_or_at_to_create_shutdown_or_reboot_task'],
'eventtype': 2,
'file_md5': '0x2003E9B15E1C502B146DAD2E383AC1E3',
…
},
…
]
Событие
Алерт
Входные данные
• Решение хотим принимать решение на основе данных из
Алерта
• Требуется агрегация признаков из разных Событий
Текущая агрегация
• Пусть событие имеет 3 поля f1, f2, f3, каждое может принимать
значение a или b
• Также мы знаем, что в целом по выборке значение a встречается
чаще значения b для каждого поля
• Анализируем, какие значения каждого поля попадались в событиях
в составе алерта и выбираем наиболее популярное в целом по
выборке
• Тогда алерт [ {f1:a}, {f1:b, f2:a, f3:b} ] превращается в вектор
признаков [a, a, b]
Метрики и контроль
качества
Метрики
• Выбрали Долю фильтрации – сколько алертов должен обработать
Автоаналитик
• Выбрали Порог, с которым будем сравнивать Score
• Алерты, для которых Модель выдала значение Score выше Порога
– TP, ниже порога – FP
• TP – передали в обработку Аналитикам SOC, FP – отфильтровали
• Метрики качества
• FPR – доля не отфильтрованных Моделью FP
• TPR – доля корректно классифицированных Моделью TP
FPR и TPR
Истинные классы
True False
Предсказание
True TP FP
False FN TN
FPR =
FP
FP + TN
TPR =
TP
TP + FN
ROC-кривая
TP FP
FN TN
Порог
TN TP
FN
FP
P(TP)
P(FP)0%
100%
100%
TPR = 1
FPR = 1
TPR = 0
FPR = 0
TPR = 0
FPR = 0
TPR = 1
FPR = 1
Что контролируется
При обучении Модели, и мониторинге качества постоянный
контроль:
• TPR для разных порогов фильтрации
• не должен быть ниже 98%
• Площадь под ROC-кривой
• ROC-AUC – чем больше тем лучше
Процессы контроля
качества
Общие подходы
• FP Автоаналитика, как и Аналитика SOC, перепроверяются
другими Аналитиками SOC (<10% от объема работы)
• Приоритет перепроверки Автоаналитика регулируется Score (в первую
очередь перепроверяются наиболее спорные)
• Приоритет перепроверки Аналитиков SOC регулируется метриками работы
• Перепроверка максимально прозрачна, не напрягает
• По всем ошибкам обязательно Post-mortem и план мероприятий
Схема потока алертов
Аналитики SOCАвтоаналитик
100% 65%
<10%
~3% ~5%
Пайплайн MDR Внутренняя IRP Клиентский Портал MDR
Послесловие
• Снижение False Negative неизбежно приводит к росту False Positive
• MDR реализует два подхода:
• Alerting – расследование результатов автоматического обнаружение
• Повышать качество обнаружения (снижать False Negative)
• Повышать качество триажа (снижать False Positive)
• Threat hunting – всегда работа Человека
• МашОбуч позволяет снижать рутину с Человека (в т.ч. и по False Positive)
• Человек сможет больше времени выделить там, где он незаменим
(например, Threat hunting)
СПАСИБО ЗА ВНИМАНИЕ!!!
Сергей Солдатов, Руководитель Центра мониторинга кибер безопасности
@svsoldatov

More Related Content

Роботы среди нас!

  • 2. Роботы среди нас! ML на первой линии SOC Сергей Солдатов Лаборатория Касперского Руководитель SOC
  • 4. FP против FN Рост скрытности действий атакующего Снижение FN, Рост FP Рост FN, Снижение FP
  • 5. Типовое применение МашОбуча – автоматическое обнаружение • Профилирование à поиск отклонения • Машинное обучение без учителя • Обработка известного à поиск похожего • Машинное обучение с учителем
  • 6. Другое применение МашОбуча – Триаж • Принять решение: прилетевший Алерт - это • Ложное срабатывание (False Positive, FP) • Свидетельство реального инцидента (True Positive, TP) • ~ Работа Первой линии «классического» SOC • Автоаналитик (a.k.a SkyNet)!
  • 8. 8 Телеметрия ü Детекты сенсоров ü Поведение процессов ü События ОС Микро-корреляция на уровне сенсора: ü Все технологии обнаружения на сенсоре ü Репутация (Облако) Макро-корреляция, обнаружение ТТР: ü Знания ТТР: ü Внутренние исследования ü MITRE ATT&CK ü Анализ защищенности/Red teaming ü Практика расследования инцидентов ü Практика мониторинга Адаптация Аналитик SOC, Threat hunting: ü Проверка поведенческих гипотез ü Контекст ü Расследование пограничных случаев ü Общее совершенствование Сенсоры (Источники событий) Облако Продукты Человек Managed Detection and Response (MDR) https://support.kaspersky.com/MDR/ru-RU/all-in-one.htm
  • 9. Этапы пайплайна MDR Инциденты Вердикт: True/False Кейсы (Cases) Алерты Связанные Алерты и События События Совокупность событий
  • 10. Числовые характеристики • Сервис обслуживает сотни тысяч EDR-сенсоров • Миллиарды событий телеметрии в день • Тысячи алертов • 30-70% алертов закрываются аналитиками как FP без импорта в Case • 1-10% алертов – свидетельства реальных инцидентов (TP)
  • 11. Мечты…, превращенные в Цели! • Сервис обслуживает сотни тысяч EDR-сенсоров • Миллиарды событий телеметрии • Тысячи алертов • 30-70% алертов закрываются аналитиками как FP без импорта в Case – эту часть не выдавать на триаж Аналитикам => повысить эффективность работы людей • 1-5% алертов – свидетельства реальных инцидентов (TP) – повысить совокупную конверсию автоматического анализа
  • 13. Обучение • Автоаналитик обучается на размеченных Аналитиками SOC исторических данных с целью «научиться» предсказывать решение Аналитика SOC (TP – 1, FP - 0) • Автоаналитик выдает решение в виде числа в диапазоне (0; 1) - Score • Ввиду сильной разбалансированности классов, мы не можем полностью заменить Аналитика SOC Автоаналитиком • Но мы можем снизить нагрузку на Аналитика SOC
  • 14. Варианты применения • Подсказка Аналитику SOC • Приоритезация в очереди Алертов • Подавление Алертов, являющихся FP по мнению Модели (Score меньше заданного Порог) • На практике вполне возможна и комбинация • пока нет необходимости
  • 15. Этапы пайплайна MDR Инциденты Вердикт: True/False Кейсы (Cases) Алерты Связанные Алерты и События События Совокупность событий
  • 16. Этапы пайплайна MDR + ML Инциденты Вердикт: True/False Кейсы (Cases) Автоаналитик Подавление части FP Алерты Связанные Алерты и События События Совокупность событий Автоматическое обнаружение Решает проблему FN Решает проблему FP
  • 17. Текущее качество работы Автоаналитика • Анализируем треть поступающих алертов • И это не предел! • Вероятность ошибки не превышает 2%
  • 19. Входные данные [ { 'processfilepath': 'c:windowssystem32cmd.exe', 'creation_time': ‘2011-03-09T20:57:53.527617Z', 'file_size': 179712, 'hunts': ['process_installing_itself_as_scheduled_task_using_schtasks’, 'using_schtasks_or_at_to_create_shutdown_or_reboot_task'], 'eventtype': 2, 'file_md5': '0x2003E9B15E1C502B146DAD2E383AC1E3', … }, … ] Событие Алерт
  • 20. Входные данные • Решение хотим принимать решение на основе данных из Алерта • Требуется агрегация признаков из разных Событий
  • 21. Текущая агрегация • Пусть событие имеет 3 поля f1, f2, f3, каждое может принимать значение a или b • Также мы знаем, что в целом по выборке значение a встречается чаще значения b для каждого поля • Анализируем, какие значения каждого поля попадались в событиях в составе алерта и выбираем наиболее популярное в целом по выборке • Тогда алерт [ {f1:a}, {f1:b, f2:a, f3:b} ] превращается в вектор признаков [a, a, b]
  • 23. Метрики • Выбрали Долю фильтрации – сколько алертов должен обработать Автоаналитик • Выбрали Порог, с которым будем сравнивать Score • Алерты, для которых Модель выдала значение Score выше Порога – TP, ниже порога – FP • TP – передали в обработку Аналитикам SOC, FP – отфильтровали • Метрики качества • FPR – доля не отфильтрованных Моделью FP • TPR – доля корректно классифицированных Моделью TP
  • 24. FPR и TPR Истинные классы True False Предсказание True TP FP False FN TN FPR = FP FP + TN TPR = TP TP + FN
  • 25. ROC-кривая TP FP FN TN Порог TN TP FN FP P(TP) P(FP)0% 100% 100% TPR = 1 FPR = 1 TPR = 0 FPR = 0 TPR = 0 FPR = 0 TPR = 1 FPR = 1
  • 26. Что контролируется При обучении Модели, и мониторинге качества постоянный контроль: • TPR для разных порогов фильтрации • не должен быть ниже 98% • Площадь под ROC-кривой • ROC-AUC – чем больше тем лучше
  • 28. Общие подходы • FP Автоаналитика, как и Аналитика SOC, перепроверяются другими Аналитиками SOC (<10% от объема работы) • Приоритет перепроверки Автоаналитика регулируется Score (в первую очередь перепроверяются наиболее спорные) • Приоритет перепроверки Аналитиков SOC регулируется метриками работы • Перепроверка максимально прозрачна, не напрягает • По всем ошибкам обязательно Post-mortem и план мероприятий
  • 29. Схема потока алертов Аналитики SOCАвтоаналитик 100% 65% <10% ~3% ~5% Пайплайн MDR Внутренняя IRP Клиентский Портал MDR
  • 30. Послесловие • Снижение False Negative неизбежно приводит к росту False Positive • MDR реализует два подхода: • Alerting – расследование результатов автоматического обнаружение • Повышать качество обнаружения (снижать False Negative) • Повышать качество триажа (снижать False Positive) • Threat hunting – всегда работа Человека • МашОбуч позволяет снижать рутину с Человека (в т.ч. и по False Positive) • Человек сможет больше времени выделить там, где он незаменим (например, Threat hunting)
  • 31. СПАСИБО ЗА ВНИМАНИЕ!!! Сергей Солдатов, Руководитель Центра мониторинга кибер безопасности @svsoldatov