SherlockRen/openclaw-scanner

GitHub: SherlockRen/openclaw-scanner

面向 OpenClaw 环境的轻量级内网资产扫描器,集成端口探测、指纹识别、漏洞检查和敏感路径扫描功能。

Stars: 0 | Forks: 0

# clawscanner [中文文档](./README.zh-CN.md) `clawscanner` 是一个基于 Go 语言的 OpenClaw 环境内部资产扫描器。 它提供快速 TCP 端口探测、OpenClaw 指纹检测、基于版本的基础漏洞检查、敏感路径暴露检查以及 JSON 报告输出。 ## 功能特性 - **目标输入** - 单个主机/IP:`192.168.1.10` - CIDR:`192.168.1.0/24` - URL 输入规范化:`https://10.0.0.8`(自动提取主机名) - 多个目标:以逗号分隔 - **端口扫描** - 默认端口:`18789,19001,443,80,8080,8443` - 自定义端口列表/范围:`--ports 80,443,8080` 或 `--ports 8000-8100` - 可配置并发:`--threads`(默认:`100`) - 可配置 TCP 超时:`--timeout` 秒(默认:`30`) - **OpenClaw 指纹识别(仅限开放端口)** - HTML/正文标记 (`openclaw/moltbot/clawdbot`) - HTTP 头 (`Server` / `X-Powered-By`) - Health API (`/api/v1/health`) - Favicon mmh3 匹配(默认哈希:`-1172715710`) - 按 `target + port` 聚合,多次命中时提升置信度 - **漏洞/泄露检查(仅限开放端口)** - 通用产品的版本比较检查 - 敏感路径探测(`/.env`, `/.git/config` 等),具备基础的误报削减机制 - **报告与输出** - 彩色终端进度 + 汇总表 - JSON 报告输出到文件(`-o`)或标准输出(省略时) - 每个发现包含 `target`,可选 `port` 和可选 `accessUrl` ## 快速开始 ### 构建 ``` go build -o clawscanner ./cmd/clawscanner ``` ### 运行 ``` ./clawscanner 192.168.1.0/24 --ports 80,443,8080 -o results.json ``` ### 示例(URL 目标) ``` ./clawscanner https://137.184.38.179 --ports 443 -o results.json ``` ## 命令行用法 ``` clawscanner [--ports 18789,8080,3000] [--threads 100] [--timeout 30] [-o results.json] ``` ### 标志 - `--ports`:自定义端口列表/范围 - `--threads`:探测并发数(默认 `100`) - `--timeout`:TCP 拨号超时时间(秒)(默认 `30`) - `-o`:JSON 输出文件路径 - `--quiet`:禁用进度日志和美观的终端摘要 - `--requester`, `--scope`, `--time-window`, `--source`:授权元数据 ## 输出格式 (JSON) 顶层字段: - `schemaVersion` - `taskMeta`(`taskId`,时间戳,状态,`targetCount`,`portCount`) - `summary`(`findingCount`) - `findings[]` 发现(Finding)字段包括: - `findingId`, `findingType`, `severity`, `ruleId` - `target`,可选 `port`,可选 `accessUrl` - `evidencePattern`, `evidenceMasked` - `confidence`, `requiresManualReview`, `falsePositiveState`, `recommendation` ## 开发 ### 验证 ``` ./scripts/verify.sh ``` 此操作运行: 1. `gofmt -w ./cmd ./internal` 2. `go vet ./...` 3. `go test ./...` 4. `go build ./...` ## 项目结构 - `cmd/clawscanner/main.go` — CLI 入口和终端输出 - `internal/discovery/` — 目标解析和 TCP/HTTP 服务发现 - `internal/vulnscan/` — 指纹识别、版本检查、路径泄露检查 - `internal/models/result.go` — 报告数据模型 - `internal/output/json.go` — JSON 报告写入器 ## 注意事项 - 指纹/漏洞检查**仅针对扫描返回的开放端口**执行。 - TLS 探测当前使用宽松验证模式,以提高实际资产识别覆盖率。
标签:C2日志可视化, favicon哈希, Go语言, Homebrew安装, HTTP安全, JSON报告, OpenClaw, TCP探测, 内网资产扫描, 实时处理, 密码管理, 指纹识别, 插件系统, 敏感路径扫描, 数据统计, 日志审计, 版本比对, 程序破解, 端口扫描, 网络安全, 网络安全审计, 隐私保护