Repolode
Rurik

Rurik/Noriben

一个基于 Python 的便携脚本,配合 Sysinternals Procmon 记录并生成程序运行时行为报告,用于恶意软件分析。

Star
1,322
Fork
224
未关闭 Issue
9
最近提交
4天前

这是什么?

Noriben 是一个运行在 Windows 上的 Python 脚本,与 Sysinternals Procmon 配合使用,在程序运行期间捕获系统事件。使用时启动脚本、运行可疑样本、按一次键即可得到一份纯文本报告,其中包含文件、注册表和进程相关的活动。脚本内置了常见系统活动的白名单,以减少报告中的无关噪音,不过在 Procmon 中预先过滤仍然会有帮助。

由于样本可以手动运行,Noriben 适合全自动沙箱处理不好的场景,例如需要特定命令行参数或用户交互的程序,或者在调试器中逐步执行、同时记录系统行为。它也可以重新分析已有的 Procmon CSV 或 PML 文件,并曾被用于审计普通软件。

项目还提供可选功能,包括对新建文件进行 YARA 扫描、提交文件哈希到 VirusTotal、使用哈希白名单,以及将绝对路径泛化为 Windows 环境变量,便于提取 IOC。配套脚本 NoribenSandbox.py 可在虚拟机中自动执行样本并回收结果。

核心功能

  • 01通过驱动 Sysinternals Procmon 记录文件、注册表和进程活动。
  • 02在可配置的采集时间后生成简单的文本报告。
  • 03使用一组 YARA 规则扫描新建的文件。
  • 04可将文件哈希提交到 VirusTotal,并通过哈希白名单忽略已知文件。
  • 05将绝对路径替换为 %AppData% 等 Windows 环境变量。
  • 06可重新分析已有的 Procmon CSV 或 PML 文件。

适用场景

  • 在一次性虚拟机中观察可疑 Windows 可执行文件的行为。
  • 运行需要手动交互或特定命令行参数的样本。
  • 在调试器中逐步执行程序,同时记录其系统活动。
  • 审计普通 Windows 软件的运行时行为。

快速上手

  1. 1

    下载 Sysinternals Procmon,并将 procmon.exe 或 procmon64.exe 与 Noriben.py 放在同一目录

  2. 2

    使用超时参数并指定要分析的程序运行 Noriben

    python.exe Noriben.py -t 60 --cmd "path\exe"

使用前须知

  • 需要 Sysinternals Procmon,且仅适用于 Windows。
  • 其设计用于恶意软件分析,运行样本存在风险,应在隔离的虚拟机中进行。
  • 自动化脚本 NoribenSandbox 目前仅在 OSX 上运行,尚未完全移植。

收录于专题

标签

常见问题

Noriben 是什么?
一个基于 Python 的便携脚本,配合 Sysinternals Procmon 记录并生成程序运行时行为报告,用于恶意软件分析。 Noriben 是一个运行在 Windows 上的 Python 脚本,与 Sysinternals Procmon 配合使用,在程序运行期间捕获系统事件。使用时启动脚本、运行可疑样本、按一次键即可得到一份纯文本报告,其中包含文件、注册表和进程相关的活动。脚本内置了常见系统活动的白名单,以减少报告中的无关噪音,不过在 Procmon 中预先过滤仍然会有帮助。
Noriben 可以免费使用吗?用的什么许可证?
Noriben 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
Noriben 还在维护吗?
活跃维护中。Noriben 最近一次提交是在 2026年11月3日。
Noriben 适合用来做什么?
在一次性虚拟机中观察可疑 Windows 可执行文件的行为。 运行需要手动交互或特定命令行参数的样本。 在调试器中逐步执行程序,同时记录其系统活动。 审计普通 Windows 软件的运行时行为。
Noriben 怎么安装和运行?
下载 Sysinternals Procmon,并将 procmon.exe 或 procmon64.exe 与 Noriben.py 放在同一目录 使用超时参数并指定要分析的程序运行 Noriben: python.exe Noriben.py -t 60 --cmd "path\exe"
在哪里获取 Noriben?
源代码和安装说明在 GitHub 上:https://github.com/Rurik/Noriben

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目