honeynet/ochi
GitHub: honeynet/ochi
Ochi 是一个用于实时展示和过滤 Glutton 蜜罐捕获事件的 Web 可视化界面。
Stars: 37 | Forks: 25
# Ochi
用于展示来自 [Glutton](https://github.com/mushorg/glutton) 事件的 UI,事件由开发实例[实时](https://ochi.mushmush.org/)流式传输。
## 动机
任何公开可用的 IP 地址都处于持续的攻击轰炸之下。我们希望识别出对蜜罐开发有意义的发展趋势和攻击行为。大多数事件只是互联网的背景噪声,因此我们需要能够识别出值得调查的全新事件。
威胁正在实时发生,而且我们并没有通过扩展来保留历史记录。我们基于实时流进行工作,这就要求能够轻松地过滤和分类出有意义的事件。
最终,我们希望能够快速响应新的趋势,改进我们的传感器以收集有价值的信息。
## 开发要求
1. [Golang 版本 > 1.17](https://go.dev/doc/install)
2. [Node.js 26 或更高版本](https://nodejs.org/en/download/)
#### 对于 Windows 系统,需要进行一些额外的设置(仅在开发后端时需要)
1. 请按照[此处](https://github.com/mattn/go-sqlite3#windows)提到的步骤操作
2. 进入你下载的 `ochi` 文件夹,运行 `go env` 命令,检查你的 go 环境是否设置了 `CGO_ENABLED="1"`,如果没有,请在你的系统中进行适当的修改以确保 `CGO_ENABLED="1"`。
### 开发步骤
1. 克隆仓库 `git clone https://github.com/honeynet/ochi.git`
2. 运行 `cd ochi`
3. 运行 `npm install`
##### 仅限前端开发
1. `在 src/App.svelte 中注释掉 dial() 并取消 test() 的注释`
2. 运行 `npm run dev`
3. 在浏览器中访问 `http://localhost:8080`。
##### 前端和后端开发
1. 要构建项目,请运行 `make build`
2. 要启动本地服务器,请运行 `make local`
3. 在浏览器中访问 `localhost:3000`
4. 要生成模拟事件,请按照前端开发步骤的第 1 步操作。
##### 在本地将 Ochi 用作 Glutton 事件的存储
1. 使用 `make build && make local` 启动 Ochi 服务器
2. 构建 Glutton 服务器
3. 更新 Glutton 配置以包含:
1. 将 `producers.enabled` 设为 `true` [此处](https://github.com/mushorg/glutton/blob/305a9d23a58d065f49ac25edeaeb374f4fe9c59b/config/config.yaml#L9)
2. 将 `producers.http.enabled` 设为 `true` [此处](https://github.com/mushorg/glutton/blob/305a9d23a58d065f49ac25edeaeb374f4fe9c59b/config/config.yaml#L11)
3. 将 `producers.http.remote` 设为 `http://localhost:3000/publish?token=token`
4. 启动 Glutton 服务器。
5. 打开 http://localhost:3000,如果一切按预期工作,你应该能看到 Glutton 事件。
### 注意事项
1. 如果你取消了 `test()` 的注释并注释了 `dial()`,请在提交 PR 之前将其恢复为原始状态。
2. 如果你在设置过程中遇到任何问题,请随时在[讨论区](https://github.com/honeynet/ochi/discussions)提问。
标签:EVTX分析, Go, MITM代理, Ruby工具, SBOM分析, Svelte, 事件管理, 威胁监控, 安全事件可视化, 日志审计, 蜜罐, 证书利用