highoncomputers/BugFinder
GitHub: highoncomputers/BugFinder
BugFinder 是一个 AI 驱动的自主漏洞赏金助手与安全评估平台,可自动检测目标类型并执行智能化安全扫描与报告生成。
Stars: 0 | Forks: 0
# BugFinder
[](LICENSE)
[](https://github.com/highoncomputers/BugFinder/actions/workflows/ci.yml)
[](pyproject.toml)
[](Dockerfile)
[](https://github.com/highoncomputers/BugFinder/actions/workflows/codeql.yml)
[](https://github.com/highoncomputers/BugFinder)
AI 驱动的自主漏洞赏金助手和安全评估平台。
BugFinder 会自动确定目标类型,选择合适的评估模块,执行安全的扫描,关联发现的漏洞,并生成专业的报告——同时使用通俗易懂的语言解释每一个发现。
```
bf scan https://example.com
bf scan app.apk
bf scan 10.0.0.0/24
bf tui # Launch the terminal dashboard
```
## 快速开始
```
# 安装
pip install bugfinder
# 设置您的 NVIDIA API key(AI 功能必需)
export BF_NVIDIA_API_KEY="your-key-here"
# 运行您的首次扫描
bf scan https://example.com
# 启动 TUI dashboard
bf tui
```
## 功能
- **自动检测**:自动识别目标类型(网站、API、APK、IP、Docker 等)
- **AI 驱动**:集成 NVIDIA API,用于智能规划、解释和生成报告
- **零配置**:开箱即用——标准扫描无需手动配置
- **双模式**:初学者模式(引导式、教育性)和专家模式(完全控制)
- **知识图谱**:维护已发现资产之间的关系,以实现更智能的分析
- **插件系统**:可通过插件扩展,以支持自定义技术和工作流
- **丰富的 TUI**:基于终端的控制台,具有实时进度、发现资源管理器和报告预览功能
- **多格式报告**:支持 Markdown、HTML、PDF、JSON、CSV 导出
- **范围感知**:内置范围限制和速率控制,以确保测试的安全性
## 架构
```
┌─────────────────────────────────────────────────────────┐
│ CLI (typer) │
│ bf scan | bf tui | bf report │
└──────────┬──────────────────────────────────┬────────────┘
│ │
▼ ▼
┌─────────────────────┐ ┌─────────────────────────┐
│ Target Detection │ │ Textual TUI Dashboard │
│ (web / api / apk / │ │ (live progress, find- │
│ ip / cloud / ...) │ │ ings, report preview) │
└──────────┬───────────┘ └─────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────┐
│ Planner (AI + Rules) │
│ Selects agents, orders operations, sets scope │
└──────────┬──────────────────────────────────┬────────────┘
│ │
▼ ▼
┌─────────────────────┐ ┌─────────────────────────┐
│ Assessment Agents │ │ Engine │
│ ┌─────────────────┐ │ │ Scheduler + Executor │
│ │ Web │ API │ │ │ (async task queue, │
│ ├─────────────────┤ │ │ concurrency control, │
│ │ Android │ Cloud │ │ │ rate limiting) │
│ ├─────────────────┤ │ └──────────┬──────────────┘
│ │ Infra │ Secrets││ │
│ ├─────────────────┤ │ │
│ │ Recon │ │ │
│ └─────────────────┘ │ │
└───────────────────────┘ │
│ │
└──────────┬───────────────────────┘
▼
┌─────────────────────────────────────────────────────────┐
│ Knowledge Graph │
│ (asset relationships via NetworkX) │
└──────────┬──────────────────────────────────┬────────────┘
│ │
▼ ▼
┌─────────────────────┐ ┌─────────────────────────┐
│ Database │ │ AI (NVIDIA API) │
│ SQLAlchemy + Alembic│ │ Planning, explanations,│
│ (SQLite / Postgres) │ │ report generation │
└───────────────────────┘ └─────────────────────────┘
│ │
└──────────┬───────────────────────┘
▼
┌─────────────────────────────────────────────────────────┐
│ Reporting │
│ Markdown │ HTML │ PDF │ JSON │ CSV │
└─────────────────────────────────────────────────────────┘
```
## 项目结构
```
bugfinder/
├── cli/ # CLI commands + Textual TUI
├── core/ # Config, types, exceptions
├── target/ # Target auto-detection
├── planner/ # AI + rule-based planner
├── agents/ # Assessment agents
│ ├── web/ # Web app scanners
│ ├── api/ # API testing
│ ├── android/ # APK analysis
│ ├── cloud/ # Cloud config review
│ ├── infra/ # Network/infrastructure
│ ├── secrets/ # Secret detection
│ └── recon/ # Reconnaissance
├── engine/ # Scheduler + executor
├── knowledge_graph/ # Asset relationship graph
├── database/ # SQLAlchemy models
├── ai/ # NVIDIA API client
├── reporting/ # Report generators
├── plugins/ # Plugin system
├── security/ # Scope + rate limiting
└── learning/ # Educational resources
```
## CLI 参考
| 命令 | 描述 |
|---|---|
| `bf scan ` | 自动检测并扫描 |
| `bf scan --quick` | 轻量级扫描 |
| `bf scan --deep` | 最大覆盖率 |
| `bf scan --expert` | 完全配置控制 |
| `bf tui` | 启动 Textual 终端 UI |
| `bf report ` | 生成报告 |
| `bf config ` | 设置配置 |
| `bf list-agents` | 显示可用的 agent |
| `bf plugin install ` | 安装插件 |
## 配置
通过环境变量(以 `BF_` 为前缀)、`.env` 文件或 `bf config` 进行配置:
```
# AI 功能必需
BF_NVIDIA_API_KEY=your_key_here
BF_NVIDIA_MODEL=minimax-m3
# Scope 强制执行(逗号分隔)
BF_ALLOWED_DOMAINS=example.com,api.example.com
# 扫描设置
BF_MAX_CONCURRENT_TASKS=10
BF_RATE_LIMIT_PER_SECOND=50
# 模式
BF_BEGINNER_MODE=true
BF_EDUCATIONAL_MODE=true
```
## 开发
```
# Clone 和 setup
git clone https://github.com/highoncomputers/BugFinder.git
cd BugFinder
make install
# 运行测试
make test
# Lint 和 format
make lint
make format
# Type check
make typecheck
# 运行 TUI
make dev
```
## 常见问题
### BugFinder 可以扫描哪种类型的目标?
BugFinder 可自动检测网站(HTTP/HTTPS)、REST/GraphQL API、Android APK、IP 范围/子网、Docker 容器/镜像以及云提供商配置(AWS、GCP、Azure)。它会自动选择合适的评估模块。
### BugFinder 需要网络连接吗?
是的,需要通过网络使用 NVIDIA API 来实现 AI 驱动的功能(规划、解释、生成报告)。离线扫描可以运行,但缺乏智能分析。某些 agent(例如,子域名枚举、OSINT)也需要访问互联网。
### 在生产环境的目标上运行 BugFinder 安全吗?
BugFinder 将安全性放在首位,内置了范围限制、速率控制和只读检查。但是,请务必使用 `BF_ALLOWED_DOMAINS` 和明确的范围配置。初学者模式会在执行每个操作之前添加确认提示。
### 我可以在 Docker 中运行 BugFinder 吗?
可以。请参阅 [Dockerfile](Dockerfile)。使用 `docker build -t bugfinder .` 进行构建,并使用 `docker run bugfinder scan https://example.com` 运行。
### BugFinder 支持哪些 AI 模型?
目前支持通过 NVIDIA API (NIM) 使用 `minimax-m3` 模型。计划支持更多提供商。
### 没有 AI API 密钥可以使用 BugFinder 吗?
可以。在没有 AI 的情况下,基本扫描、范围限制和报告功能均可正常工作。AI 用于增强规划、解释和生成报告。
### 如何添加新的评估 agent?
有关 agent 开发指南,请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。Agent 是 `BaseAgent` 的 Python 子类。
### BugFinder 会存储扫描结果吗?
是的,默认情况下存储在本地 SQLite 数据库(`bugfinder.db`)中。在生产环境部署中,请配置 `BF_DATABASE_URL` 以使用 Postgres。
## 故障排除
### “No module named bugfinder”
确保您处于虚拟环境中,或者已经安装了该包:
```
uv sync
# 或
pip install -e .
```
### “NVIDIA API key not found”
设置 `BF_NVIDIA_API_KEY` 环境变量,或者将其添加到工作目录下的 `.env` 文件中。
### 速率限制错误
如果扫描高容量目标,请增加 `BF_RATE_LIMIT_PER_SECOND`。如果您的请求被阻止,请将其减小。
### 测试失败并出现导入错误
首先运行 `make install` 以安装所有依赖项,包括开发附加组件。
### Docker 容器立即退出
请使用命令运行容器,例如:
```
docker run bugfinder scan https://example.com
```
默认入口点是附带 `--help` 参数的 `bf`。
### "Database is locked" 错误
BugFinder 默认使用 SQLite,其并发性有限。对于并发扫描,请通过 `BF_DATABASE_URL` 切换到 Postgres。
### TUI 没有响应
确保您的终端支持 24 位颜色,并且至少为 80×24 字符。尝试使用 `export TERM=xterm-256color`。
## 安全
将安全漏洞报告至 security@bugfinder.dev。有关我们的安全政策和披露流程,请参阅 [SECURITY.md](SECURITY.md)。
## 更新日志
有关版本历史和发布说明,请参阅 [CHANGELOG.md](CHANGELOG.md)。
## 许可证
MIT — 有关详细信息,请参阅 [LICENSE](LICENSE)。
标签:Bug Bounty, Python, 人工智能, 反取证, 可自定义解析器, 安全评估, 实时处理, 密码管理, 插件系统, 无后门, 特权检测, 用户模式Hook绕过, 网络调试, 自动化, 请求拦截, 调试插件, 逆向工具