Nicholas-Kloster/VisorLog
GitHub: Nicholas-Kloster/VisorLog
面向 AI 基础设施 OSINT 的集中式发现账本,提供 ECS 规范化存储、生命周期追踪和告警能力,解决多工具扫描结果分散、披露流程缺乏统一管理的问题。
Stars: 1 | Forks: 1
[](https://claude.ai/code)
# VisorLog
**NuClide OSINT 生态系统的集中式发现账本。**
符合 ECS 规范、生命周期跟踪、仅追加的 SQLite 存储。所有 NuClide 工具(VisorGoose、aimap、ollama-recon)均将事件写入此处。每项发现都会经历一个定义明确的生命周期:`open → disclosed → acknowledged → remediated → verified`。
受 [CISA 的 Logging Made Easy](https://github.com/cisagov/LME) 理念启发 —— 专为 AI 基础设施 OSINT 跟踪而重新设计。
## 与 Claude Code 配合使用
Claude Code 可以查询 VisorLog、对发现进行分类,并直接从数据库生成披露报告。
```
Run `visorlog query --severity critical --status open` and triage the results. For each finding, identify whether it falls under a responsible disclosure safe harbor, draft a one-paragraph impact statement, and suggest the correct disclosure channel.
```
```
I have a visorlog.db with 168 nodes. Run `visorlog stats` and `visorlog alert`. For any stale-critical findings (open > 7 days), draft escalation notes and identify the correct CERT contact for each org_country.
```
## 为什么需要
NuClide 生态系统跨多个工具和领域生成发现结果。如果没有共享存储:
- 发现结果散落在各个领域零散的 JSON 状态文件中
- 披露状态在 SESSION.md 中手动跟踪
- 缺乏跨政府/大学/医疗保健发现结果的统一视图
- 当 CRITICAL(严重)发现结果持续开放一周时无任何告警
VisorLog 解决了所有这些问题。
## 安装
```
go install github.com/Nicholas-Kloster/visorlog@latest
```
## 命令
### 从现有工具导入发现结果
```
# 来自 VisorGoose 状态
visorlog ingest --from visorgoose-state.json --format visorgoose
# 来自 ollama-recon.py 状态
visorlog ingest --from ollama-gov-state.json --format ollama-recon
# 来自 VisorGoose 扫描的流
visorgoose scan | visorlog ingest
# NDJSON (通用)
visorlog ingest --from findings.ndjson
```
### 状态概览
```
visorlog status
```
```
=== OPEN FINDINGS ===
critical ██ 2
medium ██ 2
=== BY SECTOR / SEVERITY / STATUS ===
SECTOR SEVERITY STATUS COUNT
government critical open 2
government medium open 1
```
### 查询
```
visorlog query --tag TAKEOVER --status open
visorlog query --sector government --severity critical
visorlog query --country ID --json
```
### 更新生命周期状态
```
visorlog update 4 --status disclosed --note "emailed kominfo@jatengprov.go.id"
visorlog update 4 --status acknowledged
visorlog update 4 --status remediated
```
### 告警规则
```
visorlog alert
```
```
[new-takeover] TAKEOVER open: 103.107.245.11 (sijoli-11-245-107.jatengprov.go.id) [government]
[stale-critical] STALE critical: 16.64.116.67 open for >7 days — disclose?
```
内置规则:`new-takeover`、`new-critical`、`stale-critical` (>7d)、`stale-high` (>14d)
### 手动添加发现结果
```
visorlog add --ip 103.107.245.11 \
--hostname sijoli-11-245-107.jatengprov.go.id \
--org "Dinas Kominfo Jawa Tengah" \
--country ID --sector government --tld .go.id \
--severity critical --tags TAKEOVER,CLOUD,RAG \
--source manual
```
### 生成报告
```
visorlog report --out open-findings.md
visorlog report --status "" --out all-findings.md
```
## 生命周期阶段
```
open → disclosed → acknowledged → remediated → verified → archived
```
每一次状态转换都会记录时间戳并作为备注追加。记录永远不会被修改——完整的历史记录将被保留。
## 模式 (ECS 启发)
| 字段 | 描述 |
|-------|-------------|
| `event.category` | `discovery`、`disclosure`、`remediation`、`regression` |
| `event.severity` | `critical`、`high`、`medium`、`low`、`info` |
| `host.ip` / `host.hostname` | 目标标识 |
| `org.name` / `org.country` | 组织 |
| `nuclide.sector` | `government`、`university`、`healthcare`、`commercial`、`isp` |
| `nuclide.tags` | `TAKEOVER`、`CVE-2025-63389`、`CLOUD`、`RAG`、`DISTILLED` |
| `nuclide.source` | 发现该结果的工具 |
| `lifecycle.status` | 当前阶段 |
| `vuln.ids` | CVE ID |
## 生态系统
```
VisorGoose ──┐
aimap ──┼──► visorlog ingest ──► visorlog.db ──► query / alert / report
ollama-recon──┘
```
- [VisorGoose](https://github.com/Nicholas-Kloster/visorgoose) — 多源 AI 服务发现
- [aimap](https://github.com/Nicholas-Kloster/aimap) — 深度 AI 服务指纹识别
- [AI-LLM-Infrastructure-OSINT](https://github.com/Nicholas-Kloster/AI-LLM-Infrastructure-OSINT) — 案例研究库
_NuClide Research · [nuclide-research.com](https://nuclide-research.com)_
标签:AI基础设施, CERT, Claude Code, ECS, Elastic Common Schema, ESC4, EVTX分析, GitHub, Go语言, GPT, LLM扫描, NDJSON, NuClide, OISF, OSINT, SQLite, Terraform, VisorGoose, 人工智能, 仅追加数据库, 医疗安全, 占用监测, 大模型安全, 威胁情报, 安全合规, 安全状态监控, 安全通报, 实时处理, 开发者工具, 插件系统, 政府安全, 教育网络安全, 数据摄取, 无线安全, 日志审计, 日志管理, 漏洞披露, 漏洞管理, 生命周期管理, 用户模式Hook绕过, 程序破解, 网络代理, 网络安全审计, 自动化分类, 资产管理, 集中式存储