MSTICPy 开源项目教程
msticpy Microsoft Threat Intelligence Security Tools 项目地址: https://gitcode.com/gh_mirrors/ms/msticpy
1. 项目介绍
MSTICPy 是由微软开发的一个开源Python库,专为信息安全调查和狩猎设计。它为Jupyter笔记本提供了一套功能丰富的工具,可以帮助安全专家进行日志数据查询、数据丰富、安全分析和数据可视化。
MSTICPy 的主要特点包括:
- 支持从多个数据源查询日志数据,如 Azure Sentinel、Splunk、Microsoft Defender for Endpoint 以及 Microsoft Graph。
- 提供威胁情报、地理位置和Azure资源数据的丰富功能。
- 能够从日志中提取活动指标(IoA)并解包编码数据。
- 进行高级分析,如异常会话检测和时间序列分解。
- 使用交互式时间线、进程树和多维度Morph图表进行数据可视化。
2. 项目快速启动
首先,确保您已经安装了Python环境。接下来,使用pip命令安装MSTICPy:
pip install msticpy
如果您打算将MSTICPy与Azure Sentinel一起使用,建议安装带有azsentinel
额外包的版本:
pip install msticpy[azsentinel]
安装完成后,您可以在Jupyter笔记本中导入msticpy模块并开始使用。
import msticpy
为了更好地管理配置,建议将您的msticpyconfig.yaml
文件保存在msticpy文件夹外部,并通过环境变量引用它。
3. 应用案例和最佳实践
以下是一些使用MSTICPy的典型场景:
日志数据查询
使用QueryProvider
类从Azure Sentinel或其他支持的数据源查询日志数据。
from msticpy.dataProviders import QueryProvider
# 创建查询提供者实例
provider = QueryProvider()
# 执行查询
results = provider.query('AzureSentinel', 'SecurityEvent', 'ComputerName == "YourComputerName"')
数据丰富
使用TILookup
类对IoC进行威胁情报查询。
from msticpy.datamodel import TILookup
# 创建威胁情报查询实例
ti_lookup = TILookup()
# 对单个IoC进行查询
result = ti_lookup.get_ioc('192.168.1.1')
# 对DataFrame中的多个IoC进行查询
df['TI Results'] = df['IP Address'].apply(lambda ip: ti_lookup.get_ioc(ip))
数据分析
利用内置的分析工具对数据进行深入分析。
from msticpy.analysis import SecurityAlert
# 创建安全告警实例
alert = SecurityAlert(results)
# 分析告警
alert.analyze()
数据可视化
使用MSTICPy
的可视化工具来展示数据。
from msticpy.vis import timeline
# 创建时间线可视化
tl = timeline(results, start='2023-01-01', end='2023-01-31')
# 显示时间线
tl.show()
4. 典型生态项目
MSTICPy 可以与多种开源项目和安全工具集成,以下是一些典型的生态项目:
- Azure Sentinel:用于安全操作的统一平台。
- Splunk:强大的数据分析工具,用于收集、分析和报告来自各种来源的数据。
- Pandas:Python的数据分析库,用于数据处理和清洗。
通过这些工具和项目的结合使用,您可以构建一个强大的安全分析环境。
msticpy Microsoft Threat Intelligence Security Tools 项目地址: https://gitcode.com/gh_mirrors/ms/msticpy
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考