corelight/zeekjs
GitHub: corelight/zeekjs
为 Zeek 提供实验性的 JavaScript 支持,扩展其事件驱动的实时流量分析能力。
Stars: 8 | Forks: 7
# ZeekJS
JavaScript 对 Zeek 的实验性支持。
```
$ cat hello.js
zeek.on('zeek_init', function() {
console.log('Hello, Zeek!');
});
$ zeek ./hello.js
Hello, Zeek!
```
## 构建
要构建插件,你需要将 Node.js 作为共享库使用。在 Fedora
上,你可以安装 `nodejs-devel` 和 `v8-devel` 包。在 Ubuntu
(从 Kinetic Kudo 22.10 开始)和 Debian(测试版/bookworm)中,安装
`libnode-dev` 包就足够了。
在其他或更旧的 Linux 发行版,或 MacOSX 上,你需要使用 `--shared` 自行编译
Node.js。例如,可以参考 `docker` 目录中的 [debian.Dockerfile](./docker/debian.Dockerfile)。
否则,ZeekJS 的构建和安装方式与普通 Zeek 插件相同。
从版本 0.4.2 开始,也可以通过 `zkg` 安装 ZeekJS:
```
zkg install zeekjs
```
## 文档
要为 ZeekJS 构建在线文档,请进入 `docs` 目录
并运行 `make html`(如果本地有 sphinx/jsdoc),或者运行
`make container-html` 使用 Docker 容器。
[API 文档](https://zeekjs.readthedocs.io/en/latest/#api-reference) 也可在 Read the Docs 上获取。
现有的 [测试](./tests) 也是文档来源之一,
还有几个 [示例](./examples) 也在仓库中。
## 支持的 Node.js 版本
ZeekJS 定期在与以下系统自带的 Node.js 版本上进行测试:
Debian Bullseye、Ubuntu 24.04 和 Fedora。
目前测试的最旧版本是 Debian Bullseye 的 18.19.0。旧版本
可能也能工作。我们致力于支持最新的 Node.js LTS 版本。
标签:API 文档, console.log, Debian, DNS解析, Fedora, GNU通用公共许可证, JavaScript 支持, MITM代理, Node.js, Node.js 插件, npm, V8 引擎, zeek_init, ZeekJS, Zeek 插件, Zeek 框架, zkg, 事件驱动, 共享库, 开源框架, 开源项目, 持续集成, 数据可视化, 文档生成, 测试, 示例代码, 钩子机制