mfscpayload-690/bt-sec-analyzer
GitHub: mfscpayload-690/bt-sec-analyzer
一个企业级蓝牙安全测试框架,集设备发现、服务枚举、流量拦截、攻击模拟和AI驱动的分析报告于一体,专为授权渗透测试设计。
Stars: 5 | Forks: 0
# bt-sec-analyzer
**企业级蓝牙安全测试框架**
## ⚠️ 道德使用声明
本工具**专用于授权的安全测试、研究和教育目的**。用户必须:
- 在测试任何蓝牙设备之前获得明确的书面授权
- 遵守所有适用的法律和法规(计算机欺诈和滥用法、GDPR 等)
- 仅在您拥有或有权测试的设备上使用此工具
- 对所有操作启用审计日志
- 不得将此工具用于恶意目的、未经授权的监视或骚扰
**未经授权使用此工具可能属于非法和不道德行为。作者对滥用行为不承担任何责任。**
## 🎯 功能特性
### 核心能力
- **设备发现**:扫描蓝牙经典 (BR/EDR) 和 BLE 设备
- **服务枚举**:识别支持的配置文件(A2DP、HFP、GATT 服务)
- **流量拦截**:被动嗅探蓝牙通信
- **安全模拟**:
- 拒绝服务(洪水攻击、干扰)
- 连接中断(反认证)
- 连接劫持和替换
- 中间人攻击场景
- **AI 驱动分析**:本地 LLM 日志和捕获摘要
- **专业报告**:生成详细的 PDF 评估报告
### 技术亮点
- 多线程/多进程架构以实现高性能
- 结构化 JSON 日志记录与实时 UI 显示
- 容器化工具隔离(支持 Podman)
- 权限提升保护措施(polkit 集成)
- 具备离线能力(无外部依赖)
- 跨平台支持(Linux 为主,Windows/macOS 部分支持)
## 🛠️ 技术栈
- **后端**:Python 3.12+, PyBluez, Bleak, asyncio
- **前端**:Tauri (Rust) 配合 Svelte/React UI
- **蓝牙工具**:BlueZ, Bettercap, Wireshark/tshark, Btlejack
- **AI 集成**:Ollama 配合 Qwen Coder 7B(本地 LLM)
- **打包**:Poetry, PyInstaller/Nuitka
## 📦 安装说明
### 前置条件 (Arch Linux)
```
# 系统依赖
sudo pacman -S bluez bluez-utils python python-pip poetry \
wireshark-cli bettercap podman git
# 可选:用于高级嗅探的 Ubertooth
yay -S ubertooth
# 启用 Bluetooth 服务
sudo systemctl enable bluetooth.service
sudo systemctl start bluetooth.service
```
### 设置
```
# 克隆 repository
git clone https://github.com/mfscpayload-690/bt-sec-analyzer.git
cd bt-sec-analyzer
# 安装 Python 依赖
poetry install
# 可选:安装 PyBluez 以支持 Classic Bluetooth(仅限 Linux)
# 注意:PyBluez 与 Poetry 存在依赖冲突,必须单独安装
pip install pybluez # or: poetry run pip install pybluez
# 设置 Ollama(用于 AI 功能)
curl -fsSL https://ollama.com/install.sh | sh
ollama pull qwen2.5-coder:7b
# 构建 UI (Tauri)
cd ui && npm install && npm run build
# 运行 setup 脚本
poetry run python scripts/setup.py
```
## 🚀 使用方法
### GUI 模式
```
poetry run python -m bt_sectester
```
### CLI 模式
```
# 扫描设备
poetry run python -m bt_sectester.cli scan --duration 10
# 枚举设备服务
poetry run python -m bt_sectester.cli enumerate --mac AA:BB:CC:DD:EE:FF
# 运行安全模拟(需要授权)
poetry run python -m bt_sectester.cli simulate dos --target AA:BB:CC:DD:EE:FF --duration 30
# 生成报告
poetry run python -m bt_sectester.cli report --session session_20260217_123456
```
## 🏗️ 架构
```
bt_sectester/
├── core/ # Core engine and coordinator
├── modules/
│ ├── scanning/ # Device discovery (PyBluez, Bleak)
│ ├── attacks/ # Security simulation logic
│ ├── reporting/ # PDF report generation
│ └── ai/ # Ollama integration for summarization
├── ui/ # Tauri frontend
├── utils/ # Logging, privilege handling, config
└── tests/ # Unit and integration tests
```
## 🧪 测试
```
# 运行所有测试
poetry run pytest
# 运行 coverage
poetry run pytest --cov=bt_sectester --cov-report=html
# 运行特定 test suite
poetry run pytest tests/test_scanning.py
```
## 🔒 安全功能
- **道德模式**:强制执行审计日志,防止无人值守执行
- **用户确认**:在执行破坏性操作前进行提示
- **权限隔离**:以所需的最低权限运行
- **审计日志**:记录所有操作及时间戳的完整日志
- **容器化**:在 Podman 容器中隔离高风险工具
## 📝 法律与合规
用户有责任遵守相关法律法规,包括但不限于:
- 计算机欺诈和滥用法 (CFAA) - 美国
- 滥用计算机法 - 英国
- 欧盟打击信息系统攻击指令
- GDPR(涉及处理个人数据时)
- 当地电信法规
**在进行安全评估之前,请务必获得适当的授权。**
## 🤝 贡献指南
欢迎贡献!请:
1. Fork 本仓库
2. 创建一个功能分支 (`git checkout -b feature/amazing-feature`)
3. 遵循 PEP8 代码风格指南
4. 为新功能添加测试
5. 提交 Pull Request
## 📄 许可证
MIT 许可证 - 详情请参阅 LICENSE 文件
## 📧 联系方式
如有问题、疑问或想负责任地披露漏洞:
- GitHub Issues: [github.com/mfscpayload-690/bt-sec-analyzer](https://github.com/mfscpayload-690/bt-sec-analyzer)
**请记住:能力越大,责任越大。请在法律和道德允许的范围内使用此工具。**
标签:A2DP, AI分析, AI风险缓解, Arch Linux, Bettercap, BLE, Bleak, BlueZ, Btlejack, DoS攻击, GATT, Linux工具, PyBluez, Python, Rust, SBOM分析, Svelte, Tauri, Wireshark, 中间人攻击, 句柄查看, 可视化界面, 多语言支持, 安全测试框架, 审计报告, 密码管理, 无后门, 服务枚举, 本地LLM, 本地模型, 流量拦截, 白盒测试, 端口探测, 网络安全, 网络流量审计, 蓝牙低功耗, 蓝牙安全, 计算机取证, 设备发现, 连接劫持, 防御绕过, 隐私保护