ciphertechsolutions/yara-registry
GitHub: ciphertechsolutions/yara-registry
一个用于集中注册和管理YARA规则的Python库,支持从多个Python包或外部来源聚合规则并通过统一接口进行程序化访问和匹配。
Stars: 0 | Forks: 0
用于集中注册 yara 规则,以便通过编程方式访问来自各种 Python 包的规则语料库。
1. 使用 `pip install yara-registry` 安装
* 它不附带 yara 或 yara-x,因此您可以安装所需的任何版本,或仅安装选择的引擎。版本兼容性取决于其 API 是否发生变化,因此并非所有版本都受支持。
* 安装捆绑的 yara-python 请使用 `pip install yara-registry[yara]`,安装 yara-x 请使用 `pip install yara-registry[yara-x]`,或者两者都安装使用 `pip install yara-registry[yara,yara-x]`
2. 注册您的规则
a. 对于 Python 包:将 yara registry 注册为您项目规则的入口点 (entry point)
示例:
[project.entry-points."yara_registry.rules"]
rules = ".path.to.rules"
b. 通过 registry CLI 注册非 Python 项目
示例:
yara_registry add --namespace <项目或来源的名称> --path
使用 CLI 注册规则时,命名空间对于 Python 包名和 CLI 规则来说应该是唯一的。例如,如果有一个名为 "my_yara_rules" 的包含规则的 Python 包,则不要使用 "--namespace my_yara_rules" 通过 CLI 添加规则。
3. 使用 `yara_registry list` 或 `yara_registry list --source <命名空间/包名>` 验证规则安装
4. 通过编程方式访问规则
* 直接通过 `yara_registry.YaraCorpus` 或 `yara_registry.YaraXCorpus` 访问所有规则
* 通过 `Corpus.get_source()` 访问特定来源
* 使用 `Corpus.match` 对规则进行匹配
有关如何从 Python 项目添加规则的示例,请查看[此处](tests/sample)
标签:Python, YAML, YARA, yara-python, 中央化配置, 云资产可视化, 分页抓取, 包管理, 威胁情报, 安全库, 开发者工具, 无后门, 规则注册, 规则管理, 逆向工具, 默认DNS解析器