SigmaHQ/pySigma
GitHub: SigmaHQ/pySigma
用于解析 Sigma 安全检测规则并将其转换为多种 SIEM 查询语言的 Python 库,是旧版 sigmac 工具链的现代化替代方案。
Stars: 535 | Forks: 138
# pySigma



`pySigma` 是一个 python 库,用于解析 Sigma 规则并将其转换为查询语句。它是旧版 Sigma 工具链 的替代品,拥有更简洁的设计,并且几乎经过了全面测试。
用于支持转换为查询语言的后端,以及用于将规则转换为日志数据模型的处理管道,都被分离到专门的项目中,以保持 pySigma 本身的轻量化和供应商中立性。请参阅下文的 *相关项目* 部分以获取概览。
## 入门指南
要开始使用 `pySigma`,你需要 Python 3.10 或更高版本。使用你选择的 python 包管理器进行安装。示例:
```
pip install pysigma
pipenv install pysigma
poetry add pysigma
```
包含一些使用示例的文档可以在 [这里](https://sigmahq-pysigma.readthedocs.io/) 找到。
## 为 pySigma 创建你自己的后端
使用 pySigma,创建后端变得更加容易。我们建议使用 "Cookie Cutter Template" 并查看本 README 中 "相关项目" 部分列出的现有后端。
[pySigma Cookie Cutter Template](https://github.com/SigmaHQ/cookiecutter-pySigma-backend)
## 功能特性
与一体化的 `sigmac` 相比,`pySigma` 带来了许多额外的功能以及一些变化。
[sigma-cli](https://github.com/SigmaHQ/sigma-cli) 是用于命令行转换的 sigmac 等效工具
### 修饰符
使用 `sigma list modifiers`
### 后端
使用 `sigma plugin list --plugin-type backend`
## 概览
转换概览

管道

更多细节在 [文档](https://sigmahq-pysigma.readthedocs.io/) 中进行了描述。
## 测试
pySigma 使用 pytest 作为测试框架。只需运行 `pytest` 即可运行所有测试。运行 `pytest --cov=sigma` 以获取覆盖率报告。
## 构建
要构建你自己的包,请运行 `poetry build`。
## 代码检查
要检查代码格式,请运行 `poetry run black`。要检查是否存在格式错误,请运行 `poetry run black --check`。
本项目还使用了 [pre-commit](https://pre-commit.com/),它作为开发依赖项的一部分由 poetry 安装。在克隆仓库并安装依赖项后,运行 `poetry run pre-commit install` 来安装 git hooks。
## 贡献
欢迎提交 Pull requests。请随时提交任何 issues/PRs 作为讨论点。
Micah Babinski 写的这篇 [博客文章](https://medium.com/@micahbabinski/creating-a-sigma-backend-for-fun-and-no-profit-ed16d20da142) 从开发者的角度解释了这一过程。
## 维护者
该项目目前由以下人员维护:
- Thomas Patzke
- [François Hubaut](https://github.com/frack113)
## 相关项目
pySigma 不是一个试图支持除核心功能外所有功能的单体库。对目标查询语言和日志数据模型的支持由扩展 pySigma 的附加包提供:
* [sigma-cli](https://github.com/SigmaHQ/sigma-cli): 一个基于 pySigma 的用于转换 Sigma 规则的命令行接口。
* [pySigma-backend-splunk](https://github.com/SigmaHQ/pySigma-backend-splunk)
* [pySigma-pipeline-sysmon](https://github.com/SigmaHQ/pySigma-pipeline-sysmon)
* [pySigma-pipeline-crowdstrike](https://github.com/SigmaHQ/pySigma-pipeline-crowdstrike)
* [pySigma-backend-netwitness](https://github.com/marcelkwaschny/pySigma-backend-netwitness)
* [pySigma-backend-panther](https://github.com/panther-labs/pySigma-backend-panther)
除非另有说明,所有软件包也可以通过你选择的 Python 包管理器从 PyPI 安装。
## 许可证
GNU Lesser General Public License v2.1。详情请参阅 [位于此处](https://github.com/SigmaHQ/pySigma/blob/main/LICENSE) 的完整许可证文件。
标签:AMSI绕过, pySigma, Python, sigmac替代, URL发现, 威胁情报, 威胁检测, 安全检测, 安全规则引擎, 安全运营, 开发者工具, 扫描框架, 无后门, 日志查询, 查询生成, 网络安全, 规则转换, 隐私保护