Краткий конспект мастер-класса Артёма Сычёва
Артём Сычёв
Руководитель направления отдела мониторинга ИБ в АльфаСтрахование
В ходе своего мастер-класса Артём Сычёв рассказал, как можно автоматизировать процесс реагирования на инциденты с помощью Jupyter Notebooks и проекта Apache Airflow.
Обратил внимание на следующие темы:
- создание плейбуков для реагирования на инциденты как ноутбук в Jupyter notebooks (почему это удобно и круто)
- как можно автоматизировать запуск ноутбуков при наступлении определенных событий с помощью open-source инструмента для создания пайпланов (оркестрации событий) Apache Airflow
- как можно искать похожие инциденты в базе инцидентов (например, thehive)
- использование машинного обучения для поиска похожих хостов/инцидентов в ноутбуке Jupyter Notebook
Слушатели познакомились с Jupyter notebooks, узнали как они применяются в машинном обучении и что с помощью них можно автоматически генерировать красивые отчеты для руководства в формате pdf, html, проводить анализ данных при выявлении инцидентов и др. Также, был показан пример использования машинного обучения для поиска похожих хостов при расследовании инцидента, что является очень полезным для многих слушателей.
Jupyter Notebooks — веб-приложение с открытым исходным кодом, которое позволяет вам создавать и обмениваться документами, которые содержат программный код, уравнения, визуализации и текст повествования.
Простой, но мощный. Так же просто, как открыть веб-страницу, с возможностями мощной, многоязычной среды разработки
Интерактивные виджеты могут использоваться для манипулирования и визуализации данных в режиме реального времени.
Jupyter Notebooks поддерживают более 50 языков программирования, включая популярные в Data Science Python, R, Julia и Scala.
BigDataинтеграция — используйте платформы больших данных, такие как ApacheSparkот Python, R и Scala. Исследуйте свои данные с помощью pandas, scikit-learn, matplotlibи др.
Ноутбуками можно поделиться с другими, используя электронную почту, Dropbox, GoogleDrive, GitHubи др.
Особенности:
Встроенная печать вывода в процессе EDA Протокол обмена сообщениями для анализа и выполнения кода вне зависимости от языка. Можно использовать Python, R, Scala, Pyspark и др. Использование библиотек машинного обучения
Формат файла с возможностью редактирования, для описания, отображения и выполнения кода, вывода и заметок markdown
Веб интерфейс для интерактивного написания, запуска кода, а также визуализации результатов
Встроенное кэширование на уровне ячейки
Для чего может использоваться?
Поиск аномальной авторизации по RDP
Jupyter Notebook – почему его круто применять в процессе реагирования на инциденты ИБ
Можно документировать каждый шаг, сделанный во время анализа, и сразу в ноутбук (документа) добавлять визуализации, чтобы рассказать историю, например, об инциденте более практичным способом. Также можно считать сколько аналитик работал за конкретным ноутбуком=инцидентом ИБ. Это пригодится для расчета метрик.
Можно делиться ноутбуками с другими аналитиками и воспроизводить анализ и получить аналогичные результаты. Также за счет встроенного кэширования можно вернуться к своим данным через месяц и также изменить/дополнить анализ. Представьте что аналитики SOC 1-й, 2-й и 3-й линии могли бы полностью работать с данными внутри одного ноутбука – это в том числе, позволит повысить уровень 1 и 2-х линий SOC.
Создание собственного набора Sigma-правил, конвертированных в Jupyter Notebook. Обязательно к прочтению - Jupyter Notebooks from SIGMA Rules to Query Elasticsearch (Roberto Rodriguez). Затем их можно запускать по расписанию по вашим данным с помощью Apache Airflow.
• Можно документировать каждый шаг, сделанный во время анализа, и сразу в ноутбук (документа) добавлять визуализации, чтобы рассказать историю, например, об инциденте более практичным способом. Также можно считать сколько аналитик работал за конкретным ноутбуком=инцидентом ИБ. Это пригодится для расчета метрик.
• Внутри ноутбука можно подключать другие внешние хранилища данных необходимых для расследования инцидента ИБ.
• Внутри ноутбука можно использовать сложные алгоритмы обработки данных, библиотеки машинного обучения и визуализации.
Рекомендации:
1. Прочитайте статью Джона Ламберта – Гитхабификация информационной езопасности
2. Подумайте какие сейчас у вас используются ETLпроцессы в повседневных SecurityOperatins. Может ли вам пригодиться ApacheAirflow?
3. Если вы ещё не опробовали SIGMA-правила на своих данных, то обязательно попробуйте – даже без автоматизации (например, с помощью онлайн-конвертера unicoder.io)
4. Разверните JupiterNotebooks
5. Зарегистрируйтесь в ODS, посмотрите платформу для соревнований по анализу данных Kaggle. Посмотрите последние соревнования. Как осуществляют EDAтоповые специалисты по анализу данных. Попробуйте поучаствовать в открытых соревнованиях для новеньких.
6. Попробуйте применить JupiterNotebooksв
своей работе, используя знания экспертов и сообщества (их ноутбуки).
Если вы хотите узнать подробности - можно посмотреть полную запись выступления.
Как можно автоматизировать реагирование на инциденты с помощью Jupyter Notebooks