SigmaHQ/pySigma

GitHub: SigmaHQ/pySigma

用于解析 Sigma 安全检测规则并将其转换为多种 SIEM 查询语言的 Python 库,是旧版 sigmac 工具链的现代化替代方案。

Stars: 535 | Forks: 138

# pySigma ![Tests](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/c33d4f6cbf001745.svg) ![Coverage Badge](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/thomaspatzke/11b31b4f709b6dc54a30d5203e8fe0ee/raw/SigmaHQ-pySigma-coverage.json) ![Status](https://img.shields.io/badge/Status-pre--release-orange) `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` ## 概览 转换概览 ![Conversion Graph](/docs/images/conversion.png) 管道 ![Conversion Graph](/docs/images/pipelines.png) 更多细节在 [文档](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发现, 威胁情报, 威胁检测, 安全检测, 安全规则引擎, 安全运营, 开发者工具, 扫描框架, 无后门, 日志查询, 查询生成, 网络安全, 规则转换, 隐私保护