Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
msticpy — 微软威胁情报安全工具 | Kitploit
工具/GitHubGitHub/microsoft/msticpy
危害指标 (IOC) 管理OSINT (开源情报)信息收集云安全威胁情报学习与教育事件响应异常检测日志分析
GitHubmicrosoft/msticpy

msticpy

微软威胁情报安全工具

查看仓库
2.0k3304712天前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
# MSTIC Jupyter 和 Python 安全工具

![GitHub Actions build](https://github.com/microsoft/msticpy/actions/workflows/python-package.yml/badge.svg?branch=main)
[![Azure Pipelines build](https://dev.azure.com/mstic-detections/mstic-jupyter/_apis/build/status/microsoft.msticpy?branchName=main)](https://dev.azure.com/mstic-detections/mstic-jupyter/_build/latest?definitionId=14&branchName=main)
[![Downloads](https://pepy.tech/badge/msticpy)](https://pepy.tech/project/msticpy)

Microsoft 威胁情报 Python 安全工具。

**msticpy** 是一个用于在 Jupyter Notebook 中进行信息安全调查和追捕的库。它提供以下功能:

- 从多个来源查询日志数据
- 使用威胁情报、地理位置和 Azure 资源数据丰富数据
- 从日志中提取活动指标 (IoA) 并解码编码数据
- 执行高级分析,例如异常会话检测和时间序列分解
- 使用交互式时间线、进程树和多维形态图可视化数据

它还包含一些节省时间的笔记本工具,例如用于设置查询时间边界、从列表中选择和显示项目以及配置笔记本环境的小部件。

<img src="https://assets.kitploit.com/production/public/readmes/4869/97c3e7b33ee7d0b34e5cb314f29bc107b50e55772d00da4422ad32e48b1d0b91.png"
alt="时间线" title="Msticpy 时间线控件" height="300" />

**msticpy** 包最初是为支持 [Microsoft Sentinel](https://www.microsoft.com/en-us/security/business/siem-and-xdr/microsoft-sentinel/) 的 [Jupyter Notebook](https://jupyter-notebook-beginner-guide.readthedocs.io/en/latest/) 编写而开发的。虽然 Azure Sentinel 仍然是我们工作的重点,但我们正在扩展数据查询/采集组件以从其他来源提取日志数据(目前支持 Splunk、Microsoft Defender for Endpoint 和 Microsoft Graph,但我们正在积极开发对其他 SIEM 平台数据的支持)。大多数组件也可以与任何来源的数据一起使用。Pandas DataFrames 被用作几乎所有组件的通用输入和输出格式。此外,还有一个数据提供程序,用于简化从本地 CSV 文件和 pickle 化 DataFrame 处理数据的过程。

该包满足安全调查人员和追捕者的三个核心需求:

- 获取和丰富数据
- 分析数据
- 可视化数据

我们欢迎反馈、错误报告、新功能建议和贡献。

## 安装

核心安装:

`pip install msticpy`

或者用于最新的开发版本:

`pip install git+https://github.com/microsoft/msticpy`

## 升级

要将 msticpy 升级到最新的公开发布的非 beta 版本,请运行:

`pip install --upgrade msticpy`

请注意,最佳实践是将您的 msticpyconfig.yaml 复制并存储在磁盘上(但在 msticpy 文件夹之外),并通过环境变量引用它。这可以防止您在每次更新 msticpy 安装时丢失配置。

## 文档

完整文档位于 [ReadTheDocs](https://msticpy.readthedocs.io/en/latest/)

许多模块的示例笔记本位于 [docs/notebooks](https://github.com/microsoft/msticpy/blob/master/docs/notebooks) 文件夹中以及附带的笔记本中。

您还可以浏览本文档末尾引用的示例笔记本,了解在上下文中使用的一些功能。您可以在 mybinder.org 上的交互式演示中体验一些包功能。

[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/Azure/Azure-Sentinel-Notebooks/master?filepath=A%20Tour%20of%20Cybersec%20notebook%20features.ipynb)

---

## 日志数据采集

QueryProvider 是一个可扩展的查询库,目标为 Microsoft Sentinel/Log Analytics、Microsoft XDR、Splunk、OData 和其他日志数据源。它还特别支持 [Mordor](https://github.com/OTRF/mordor) 数据集和使用本地数据。

内置参数化查询允许通过单个函数调用运行复杂查询。使用简单的 YAML 模式添加您自己的查询。

[数据查询笔记本](https://github.com/microsoft/msticpy/blob/master/docs/notebooks/Data_Queries.ipynb)

## 数据丰富

### 威胁情报提供程序

TILookup 类可以跨多个 TI 提供程序查找 IoC。内置提供程序包括 AlienVault OTX、IBM XForce、VirusTotal 和 Azure Sentinel。

输入可以是单个 IoC 可观察对象,也可以是包含多个可观察对象的 pandas DataFrame。根据提供程序的不同,您可能需要一个账户和一个 API 密钥。某些提供程序还会强制限制(尤其是免费层),这可能会影响批量查找。

[TIProviders](https://msticpy.readthedocs.io/en/latest/data_acquisition/TIProviders.html)
和
[TILookup 使用笔记本](https://github.com/microsoft/msticpy/blob/master/docs/notebooks/TIProviders.ipynb)

### 地理位置数据

GeoIP 查找类允许您匹配 IP 地址的地理位置,可使用以下之一:

- GeoLiteLookup - Maxmind Geolite(参见 <https://www.maxmind.com>)
- IPStackLookup - IPStack(参见 <https://ipstack.com>)

<img src="https://assets.kitploit.com/production/public/readmes/4869/cfda22181d7483aad3a5f9b26a66c0cdbac4b83d6d5b17ccc5ed230225785fe2.png"
  alt="Folium 地图"
  title="绘制地理 IP 位置" height="200" />

[GeoIP 查找](https://msticpy.readthedocs.io/en/latest/data_acquisition/GeoIPLookups.html)
和
[GeoIP 笔记本](https://github.com/microsoft/msticpy/blob/master/docs/notebooks/GeoIPLookups.ipynb)

### Azure 资源数据、存储和 Azure Sentinel API

AzureData 模块包含用于丰富有关 Azure 主机详细信息的函数,这些详细信息通过 Azure API 公开。AzureSentinel 模块允许您查询事件、检索检测器和追捕查询。AzureBlogStorage 让您能够读取和写入 blob 存储中的数据。

[Azure 资源 API](https://msticpy.readthedocs.io/en/latest/data_acquisition/AzureData.html),
[Azure Sentinel API](https://msticpy.readthedocs.io/en/latest/data_acquisition/Sentinel.html),
[Azure 存储](https://msticpy.readthedocs.io/en/latest/data_acquisition/AzureBlobStorage.html)

## 安全分析

此子包包含几个有助于安全调查和追捕的模块:

### 异常序列检测

检测 Office、Active Directory 或其他日志数据中的异常事件序列。您可以提取会话(例如,同一账户发起的活动),并识别和可视化异常的活动序列。例如,检测攻击者在某人的邮箱上设置邮件转发规则。

[异常会话](https://msticpy.readthedocs.io/en/latest/data_analysis/AnomalousSequence.html)
和
[异常序列笔记本](https://github.com/microsoft/msticpy/blob/master/docs/notebooks/AnomalousSequence.ipynb)

### 时间序列分析

时间序列分析允许您识别日志数据中的异常模式,同时考虑正常的季节性变化(例如,一天中的小时、一周中的天数等事件的常规起伏)。通过分析和可视化,可以突出显示任何数据集中异常的业务流量或事件活动。

<img src="https://assets.kitploit.com/production/public/readmes/4869/4fd2983bca85a193be350f49bdaeb72fc1d926a40242c044bda8701f0759b886.png"
alt="时间序列异常" title="时间序列异常" height="300" />

[时间序列](https://msticpy.readthedocs.io/en/latest/visualization/TimeSeriesAnomalies.html)

## 可视化

### 事件时间线

在交互式时间线上显示任何日志事件。使用 [Bokeh 可视化库](https://bokeh.org/),时间线控件使您能够可视化一个或多个事件流,交互式缩放到特定时间段,并查看绘制事件的详细信息。

<img src="https://assets.kitploit.com/production/public/readmes/4869/c045bd779bafa8ae992a1d2b3741f4a71c5adaf4466d37c870c51f1cb00ade10.png"
alt="时间线" title="Msticpy 时间线控件" height="300" />

[时间线](https://msticpy.readthedocs.io/en/latest/visualization/EventTimeline.html)
和
[时间线笔记本](https://github.com/microsoft/msticpy/blob/master/docs/notebooks/EventTimeline.ipynb)

### 进程树

进程树功能有两个主要组件:

- 进程树创建 - 从主机获取进程创建日志,并构建数据集中进程之间的父子关系。
- 进程树可视化 - 获取处理后的输出,使用 Bokeh 图显示交互式进程树。

还有一组实用函数,用于从处理后的数据集中提取单个和部分树。

<img src="https://assets.kitploit.com/production/public/readmes/4869/30c4a7e6484a64a4f9434396b7b26a442e0ab697e26e2bd6d00f0abe754df60b.png"
alt="进程树"
title="交互式进程树" height="400" />

[进程树](https://msticpy.readthedocs.io/en/latest/visualization/ProcessTree.html)
和
[进程树笔记本](https://github.com/microsoft/msticpy/blob/master/docs/notebooks/ProcessTree.ipynb)

## 数据处理和实用函数

### 枢轴函数

允许您以“以实体为中心”的方式使用 *MSTICPy* 功能。与特定实体类型(例如 Host、IpAddress、Url)相关的所有函数、查询和查找都汇集为该实体类的方法。因此,如果您想对 IP 地址进行操作,只需加载 IpAddress 实体并浏览其方法即可。

[枢轴函数](https://msticpy.readthedocs.io/en/latest/data_analysis/PivotFunctions.html)
和
[枢轴函数笔记本](https://github.com/microsoft/msticpy/blob/master/docs/notebooks/PivotFunctions.ipynb)

### base64unpack

Base64 和归档 (gz, zip, tar) 提取器。它将尝试识别任何 base64 编码的字符串并尝试解码。如果结果看起来像支持的归档类型之一,它将解包内容。每次解码/解包的结果将重新检查是否包含更多 base64 内容,直到达到指定的深度。

[Base64 解码](https://msticpy.readthedocs.io/en/latest/data_analysis/Base64Unpack.html)
和
[Base64Unpack 笔记本](https://github.com/microsoft/msticpy/blob/master/docs/notebooks/Base64Unpack.ipynb)

### iocextract

使用正则表达式查找入侵指标 (IoC) 模式 - IP 地址、URL、DNS 域名、哈希、文件路径。输入可以是单个字符串或 pandas DataFrame。

[IoC 提取](https://msticpy.readthedocs.io/en/latest/data_analysis/IoCExtract.html)
和
[IoCExtract 笔记本](https://github.com/microsoft/msticpy/blob/master/docs/notebooks/IoCExtract.ipynb)

### eventcluster(实验性)

此模块旨在将大量事件总结为不同模式的聚类。高容量重复事件通常会使查看独特和有趣的项目变得困难。

<img src="https://assets.kitploit.com/production/public/readmes/4869/ce85802e87219053d8ac425fd3fb3d07ba8f638bcbd0078756a9f4f0bcbb1d06.png"
  alt="聚类"
  title="基于命令行可变性的聚类" height="400" />

这是一个使用 SciKit Learn DBScan 实现的无监督学习模块。

[事件聚类](https://msticpy.readthedocs.io/en/latest/data_analysis/EventClustering.html)
和
[事件聚类笔记本](https://github.com/microsoft/msticpy/blob/master/docs/notebooks/EventClustering.ipynb)

### auditdextract

用于加载和解码 Linux 审计日志的模块。它将共享相同消息 ID 的消息合并为单个事件,解码十六进制编码的数据字段,并执行一些特定于事件的格式化和规范化(例如,对于进程启动事件,它将重新组装进程命令行参数为单个字符串)。

### syslog_utils

用于支持对仅启用 syslog 日志记录的 Linux 主机进行调查的模块。包括用于整理主机数据、聚类登录事件以及检测包含可疑活动的用户会话的函数。

### cmd_line

一个支持检测已知恶意命令行活动或可疑命令行活动模式的模块。

### domain_utils

一个支持调查域名和 URL 的模块,包含验证域名和截图 URL 的函数。

### 笔记本小部件

这些是基于 [Jupyter ipywidgets](https://ipywidgets.readthedocs.io/) 集合构建的,将信息安全工作中有用的常见功能(如列表选择器、查询时间边界设置和事件显示)分组为易于使用的格式。

<img src="https://assets.kitploit.com/production/public/readmes/4869/26d223a31e1750c7407e4e562689fbfb4c92243981b794d649f35d9dafd06836.png"
  alt="时间跨度小部件"
  title="查询时间设置器" height="100" />

<img src="https://assets.kitploit.com/production/public/readmes/4869/5491bab202c5644d32270ea256b0e6f9173346595cd7245120d35330dcfe2e8b.png"
  alt="警报浏览器"
  title="警报浏览器" height="300" />

---

## 示例 MSTICPy 笔记本

[MSTICPy 笔记本](https://github.com/microsoft/msticpy/blob/master/docs/notebooks/)

## Azure Sentinel 笔记本 GitHub 上的更多笔记本

[Azure Sentinel 笔记本](https://github.com/Azure/Azure-Sentinel-Notebooks)

示例笔记本:

- [MSTICPy 功能游览](https://github.com/Azure/Azure-Sentinel-Notebooks/blob/master/A%20Tour%20of%20Cybersec%20notebook%20features.ipynb)
- [账户浏览器](https://github.com/Azure/Azure-Sentinel-Notebooks/blob/master/Entity%20Explorer%20-%20Account.ipynb)
- [域名和 URL 浏览器](https://github.com/Azure/Azure-Sentinel-Notebooks/blob/master/Entity%20Explorer%20-%20Domain%20and%20URL.ipynb)
- [IP 浏览器](https://github.com/Azure/Azure-Sentinel-Notebooks/blob/master/Entity%20Explorer%20-%20IP%20Address.ipynb)
- [Linux 主机浏览器](https://github.com/Azure/Azure-Sentinel-Notebooks/blob/master/Entity%20Explorer%20-%20Linux%20Host.ipynb)
- [Windows 主机浏览器](https://github.com/Azure/Azure-Sentinel-Notebooks/blob/master/Entity%20Explorer%20-%20Windows%20Host.ipynb)
- [Azure Sentinel 笔记本入门指南](https://github.com/Azure/Azure-Sentinel-Notebooks/blob/master/A%20Getting%20Started%20Guide%20For%20Azure%20Sentinel%20ML%20Notebooks.ipynb)

直接在 GitHub 上查看,或将链接复制粘贴到 [nbviewer.org](https://nbviewer.jupyter.org/)

## 带有保存数据的笔记本示例

有关此包实际使用的更多示例,请参阅以下笔记本:

- [简单机器学习](https://github.com/Azure/Azure-Sentinel-Notebooks/blob/master/Machine%20Learning%20in%20Notebooks%20Examples.ipynb)

## 支持的平台和包

- msticpy 是操作系统无关的
- 需要 [Python 3.10 或更高版本](https://www.python.org/dev/peps/pep-0494/)
- 有关更多详细信息和版本要求,请参阅 [requirements.txt](https://github.com/microsoft/msticpy/blob/main/requirements.txt)

---

## 贡献

有关(简要)开发者指南,请参阅此维基文章
[贡献者指南](https://github.com/microsoft/msticpy/wiki/Contributor-guidelines)

本项目欢迎贡献和建议。大多数贡献要求您同意一份贡献者许可协议 (CLA),声明您有权授予我们使用您贡献的权利。有关详细信息,请访问 <https://cla.microsoft.com>。

当您提交拉取请求时,CLA 机器人会自动确定您是否需要提供 CLA,并以适当方式装饰 PR(例如,标签、评论)。只需按照机器人提供的说明操作即可。您只需要在我们使用 CLA 的所有仓库中执行此操作一次。

本项目已采用 [Microsoft 开源行为准则](https://opensource.microsoft.com/codeofconduct/)。有关更多信息,请参阅 [行为准则常见问题解答](https://opensource.microsoft.com/codeofconduct/faq/),或通过 [[email protected]](mailto:[email protected]) 联系提出任何其他问题或评论。
下载工具