Nicholas-Kloster/VisorSD
GitHub: Nicholas-Kloster/VisorSD
基于 Shodan 的 AI/LLM 基础设施暴露面扫描器,内置按严重程度分类的查询,帮助快速发现组织中 AI 服务的攻击面。
Stars: 1 | Forks: 0
[](https://claude.ai/code)
[](https://goreportcard.com/report/github.com/Nicholas-Kloster/VisorSD)
[](https://opensource.org/licenses/MIT)
# VisorSD
Shodan 暴露面扫描器 + 对抗性 RAG 安全测试工具包。
VisorSD 内置约 20 个按严重程度分类的 AI/LLM 基础设施暴露硬编码查询。只需指定一个 Shodan API 密钥,它就能映射任何组织、ASN 或网段的 AI 攻击面——按 CRITICAL 到 LOW 进行排名,无需手动编写 dork。
## 安装
```
git clone https://github.com/Nicholas-Kloster/VisorSD.git
cd VisorSD
go build -o visorsd ./cmd/shodan-audit
```
**需要:** Go 1.21+,Shodan API 密钥
## 快速开始
```
export SHODAN_API_KEY="your_key_here"
# 查看所有内置查询 — 零 credit 消耗
./visorsd -dry-run
# 运行全面扫描(全局,所有分类)
./visorsd
# 限定到特定目标
./visorsd -org "Acme Corp"
./visorsd -asn AS48090
./visorsd -net 93.123.0.0/16
```
## 初学者 AI/LLM 技术栈
VisorSD 的内置查询目录涵盖了初次接触 AI 的开发者通常会暴露的内容。这就是**初学者技术栈** —— 通常与默认(无身份验证)配置一起部署的五个组件:
| # | 组件 | 默认端口 | 风险 |
|---|-----------|-------------|------|
| 1 | **Ollama** — LLM runtime | 11434 | 未经身份验证的 model API,计算资源消耗 |
| 2 | **Open WebUI** — 聊天前端 | 3000 / 8080 | 首位用户自动成为管理员注册 |
| 3 | **ChromaDB** — 向量存储 | 8000 | 默认无身份验证,完全数据读取 |
| 4 | **n8n** — 工作流/agent 构建器 | 5678 | 工作流中的凭据暴露 |
| 5 | **Cloudflared / ngrok** — 隧道 | 不定 | 将上述所有组件暴露给互联网 |
运行 `./visorsd -dry-run` 以查看 VisorSD 用于查找每个组件的确切 Shodan 查询。
## 猎捕初学者技术栈 —— 逐步指南
**步骤 1 — 预览查询(免费,不消耗积分)**
```
./visorsd -dry-run
```
**步骤 2 — 运行完整扫描**
```
SHODAN_API_KEY=$(cat ~/.config/nuclide/shodan.key) ./visorsd
```
结果按严重程度排名:
- `CRITICAL` — 未经身份验证的管理面板、开放的 model API、暴露的密钥
- `HIGH` — 需要身份验证但通常配置错误
- `MEDIUM` — 版本信息泄露、影子 IT 指标
- `LOW` — 仅指纹识别
**步骤 3 — 范围限定至特定目标**
```
# 按组织名称
./visorsd -org "Target Org Name"
# 按 ASN
./visorsd -asn AS12345
# 按 IP 范围
./visorsd -net 192.168.1.0/24
```
**步骤 4 — 导出结果**
```
./visorsd -format json -out results.json # machine-readable
./visorsd -format csv -out results.csv # spreadsheet-friendly
./visorsd -fail-on critical # exit non-zero on CRITICAL (CI/CD)
```
**步骤 5 — 导入 JAXEN 进行深度扩展**
VisorSD 负责查找和评分。[JAXEN](https://github.com/Nicholas-Kloster/JAXEN) 负责持久化和深化 —— 导入 VisorSD 结果以进行完整的 Shodan 扩展、empire.db 跟踪和枢纽点分析:
```
cd ~/Tools/JAXEN
SHODAN_API_KEY=$(cat ~/.config/nuclide/shodan.key) ./jaxen import results.csv
```
## 完整参数参考
| 参数 | 描述 | 示例 |
|------|-------------|---------|
| `-key` | Shodan API 密钥(或使用 `SHODAN_API_KEY` 环境变量) | `-key abc123` |
| `-org` | 按组织名称过滤 | `-org "Cloudflare"` |
| `-asn` | 按 ASN 过滤 | `-asn AS13335` |
| `-net` | 按 CIDR 过滤 | `-net 1.1.1.0/24` |
| `-limit` | 每次查询的最大结果数(默认为 10) | `-limit 50` |
| `-dry-run` | 打印限定范围后的查询,不进行 API 调用 | `-dry-run` |
| `-fail-on` | 如果严重程度 ≥ 阈值,则以非零状态退出 | `-fail-on high` |
| `-format` | 输出格式:`text`、`json`、`csv` | `-format json` |
| `-out` | 写入文件(默认为 stdout) | `-out results.json` |
## 结合 Claude Code 使用
Claude Code 可以运行 VisorSD 扫描,解析按严重程度排名的 JSON 输出,并将结果链接到 VisorAgent 或 aimap 工作流中进行更深层次的验证。
```
Run `./visorsd -org "Target Org" -format json -out visorsd.json` with SHODAN_API_KEY set, then analyze visorsd.json: list every CRITICAL and HIGH finding with IP, port, service, and a one-line description of the exposure. Flag any that are direct inputs for VisorAgent (exposed Ollama or Open WebUI endpoints).
```
```
I have visorsd.json from a scan. Extract all CRITICAL findings, format them as a findings table (IP | Port | Service | Severity | Evidence), and suggest which three findings to validate first with aimap active probes and why.
```
## 相关工具
VisorSD 是 Nuclide 侦察生态系统的一部分:
- **[JAXEN](https://github.com/Nicholas-Kloster/JAXEN)** — 具有 empire.db 持久化功能的有状态 Shodan 侦察引擎
- **[aimap](https://github.com/Nicholas-Kloster/aimap)** — 主动 AI/ML 服务枚举器(36 种服务类型,26 种深度探测)
- **[BARE](https://github.com/Nicholas-Kloster/BARE)** — 针对 Metasploit 语料库的语义漏洞匹配
- **[VisorCorpus](https://github.com/Nicholas-Kloster/VisorCorpus)** — 对抗性 LLM 提示词语料库生成器
- **[AI-LLM-Infrastructure-OSINT](https://github.com/Nicholas-Kloster/AI-LLM-Infrastructure-OSINT)** — 经过验证的 Shodan dork 目录,包含 15 个类别
## 许可证
MIT — 详见 [LICENSE](LICENSE)
标签:AI基础设施安全, ChromaDB, DNS枚举, EVTX分析, GitHub, Go语言, HTTP/HTTPS抓包, LLM, LLM评估, MIT许可, Ollama, Open WebUI, RAG安全测试, Unmanaged PE, 向量数据库安全, 大语言模型安全, 威胁情报, 实时处理, 密码管理, 开发者工具, 态势感知, 插件系统, 文档结构分析, 日志审计, 机密管理, 程序破解, 红队评估, 网络安全, 网络安全工具, 资产暴露面检测, 隐私保护