
msticpy v3.0.2
Инструменты безопасности Microsoft Threat Intelligence
MSTIC Jupyter и инструменты безопасности Python
Инструменты безопасности Python Microsoft Threat Intelligence.
msticpy — это библиотека для исследования и охоты в сфере InfoSec в Jupyter Notebooks. Она включает функциональность для:
- запроса данных журналов из нескольких источников
- обогащения данных данными об угрозах, геолокациями и данными ресурсов Azure
- извлечения индикаторов активности (IoA) из журналов и распаковки закодированных данных
- выполнения сложного анализа, такого как обнаружение аномальных сессий и декомпозиция временных рядов
- визуализации данных с помощью интерактивных временных шкал, деревьев процессов и многомерных морф-диаграмм
Он также включает некоторые инструменты для экономии времени в блокнотах, такие как виджеты для установки временных границ запросов, выбора и отображения элементов из списков и настройки среды блокнота.

Пакет msticpy изначально был разработан для поддержки создания Jupyter Notebooks для Microsoft Sentinel. Хотя Azure Sentinel по-прежнему остается важной частью нашей работы, мы расширяем компоненты запроса/получения данных для извлечения данных журналов из других источников (в настоящее время поддерживаются Splunk, Microsoft Defender for Endpoint и Microsoft Graph, но мы активно работаем над поддержкой данных с других платформ SIEM). Большинство компонентов также можно использовать с данными из любого источника. Pandas DataFrames используются как универсальный формат ввода и вывода почти всех компонентов. Также есть провайдер данных, упрощающий обработку данных из локальных CSV-файлов и сериализованных DataFrame.
Пакет решает три основные потребности исследователей безопасности и охотников:
- Получение и обогащение данных
- Анализ данных
- Визуализация данных
Мы приветствуем отзывы, сообщения об ошибках, предложения по новым функциям и вклад.
Установка
Для базовой установки:
pip install msticpy
или для последней версии разработки
pip install git+https://github.com/microsoft/msticpy
Обновление
Чтобы обновить msticpy до последней публичной не-бета версии, выполните:
pip install --upgrade msticpy
Обратите внимание, что рекомендуется скопировать ваш msticpyconfig.yaml и хранить его на диске, но вне папки msticpy, ссылаясь на него через переменную окружения. Это предотвратит потерю ваших конфигураций при каждом обновлении установки msticpy.
Документация
Полная документация находится на ReadTheDocs
Примеры блокнотов для многих модулей находятся в папке docs/notebooks и сопутствующих блокнотах.
Вы также можете просмотреть примеры блокнотов, ссылки на которые приведены в конце этого документа, чтобы увидеть некоторые функции в контексте. Вы можете поиграть с некоторыми функциями пакета в этом интерактивном демо на mybinder.org.
Получение данных журналов
QueryProvider — это расширяемая библиотека запросов, ориентированная на Microsoft Sentinel/Log Analytics, Microsoft XDR, Splunk, OData и другие источники данных журналов. Она также имеет специальную поддержку наборов данных Mordor и использования локальных данных.
Встроенные параметризованные запросы позволяют выполнять сложные запросы одним вызовом функции. Добавляйте свои собственные запросы с помощью простой схемы YAML.
Обогащение данных
Провайдеры Threat Intelligence
Класс TILookup может выполнять поиск IoC по нескольким TI-провайдерам. Встроенные провайдеры включают AlienVault OTX, IBM XForce, VirusTotal и Azure Sentinel.
Входными данными может быть один наблюдаемый IoC или pandas DataFrame, содержащий несколько наблюдаемых. В зависимости от провайдера может потребоваться учетная запись и API-ключ. Некоторые провайдеры также применяют ограничение трафика (особенно для бесплатных уровней), что может повлиять на массовые поиски.
TIProviders и TILookup Usage Notebook
Данные геолокации
Классы поиска GeoIP позволяют сопоставлять геолокации IP-адресов, используя либо:
- GeoLiteLookup - Maxmind Geolite (см. https://www.maxmind.com)
- IPStackLookup - IPStack (см. https://ipstack.com)

Данные ресурсов Azure, хранилище и API Azure Sentinel
Модуль AzureData содержит функциональность для обогащения данных об узлах Azure дополнительными сведениями об узлах, доступными через API Azure. Модуль AzureSentinel позволяет запрашивать инциденты, получать запросы детекторов и охоты. AzureBlogStorage позволяет читать и записывать данные из блоб-хранилища.
Azure Resource APIs, Azure Sentinel APIs, Azure Storage
Анализ безопасности
Этот подпакет содержит несколько модулей, полезных для работы над расследованиями и охотой в области безопасности:
Обнаружение аномальных последовательностей
Обнаруживайте необычные последовательности событий в ваших данных Office, Active Directory или других журналах. Вы можете извлекать сессии (например, активность, инициированную одной учетной записью) и идентифицировать и визуализировать необычные последовательности активности. Например, обнаружение того, что злоумышленник устанавливает правило пересылки почты в чьем-то почтовом ящике.
Anomalous Sessions и Anomalous Sequence Notebook
Анализ временных рядов
Анализ временных рядов позволяет выявлять необычные закономерности в ваших данных журналов с учетом нормальных сезонных колебаний (например, регулярный прилив и отлив событий в течение часов дня, дней недели и т.д.). Использование как анализа, так и визуализации выделяет необычные потоки трафика или активность событий для любого набора данных.
