AnotherWayIn/AI_Hardware_Hacking_Platform
GitHub: AnotherWayIn/AI_Hardware_Hacking_Platform
集成 AI 辅助分析的硬件安全测试平台,支持逻辑分析仪信号采集与嵌入式设备安全评估。
Stars: 0 | Forks: 0
# AI 硬件黑客平台
## Kingst LA1010 逻辑分析仪 + 嵌入式设备安全测试
一个集成了 Web 控制界面的综合性硬件黑客、串口分析和嵌入式设备安全评估工具包。
## 🎯 概述
本平台提供:
- **基于 Web 的控制**,用于 Kingst LA1010 逻辑分析仪
- **实时信号可视化**,带有实时通道数据流
- **嵌入式设备安全评估**工具
- **MCP (Model Context Protocol) 集成**,用于 AI 辅助硬件分析
- **自动数据收集**和存储
## 📦 前置条件
### 系统要求
- macOS 12+ (Intel 或 Apple Silicon)
- Python 3.9+
- 用于设备连接的 USB 端口
- 至少 4GB RAM(推荐 8GB)
### 硬件要求
- **Kingst LA1010** 逻辑分析仪(16 通道,100MHz)
- **目标设备**(路由器、嵌入式系统等)
- 用于连接的 **USB 线缆**
- **跳线**(推荐 Dupont 线)
## 🔧 安装说明
### 步骤 1:安装系统依赖
```
# 安装 Homebrew (如未安装)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# 安装所需软件包
brew install git cmake libusb libftdi libtool autoconf automake \
pkg-config glib libzip check doxygen
# 安装 sigrok-cli
brew install sigrok-cli
# 安装 Python 依赖
pip3 install -r requirements.txt
```
### 步骤 2:编译 Kingst LA1010 驱动
```
# 克隆支持 Kingst 的 libsigrok
cd /tmp
git clone https://github.com/AlexUg/libsigrok.git libsigrok-kingst
cd libsigrok-kingst
# 构建并安装
./autogen.sh
./configure --prefix=/opt/homebrew
make -j4
sudo make install
```
### 步骤 3:提取固件
```
# 从 KingstVIS 提取固件
python3 fwextractor.py /Applications/KingstVIS.app/Contents/MacOS/KingstVIS
# 验证固件安装
ls ~/.local/share/sigrok-firmware/kingst/
```
### 步骤 4:验证安装
```
# 测试设备检测
DYLD_LIBRARY_PATH=/opt/homebrew/lib sigrok-cli --driver kingst-la1010 --scan
# 预期输出:
# kingst-la1010:conn=0.3 - Kingst LA1010A with 16 channels
```
## 🚀 快速入门
### 启动 Web 界面
```
# 选项 1:使用启动脚本
./start_web.sh
# 选项 2:手动启动
python3 web_interface.py
# 访问地址:http://localhost:31337
```
### 连接硬件
1. 通过 USB **插入 Kingst LA1010**
2. **连接目标设备**:
- LA1010 通道 0 → 设备 TX
- LA1010 通道 1 → 设备 RX(可选)
- LA1010 GND → 设备 GND
3. 在 Web 界面中点击 **“Check Connection”**
### 采集信号
1. 在 Web 界面中点击 **“Start Capture”**
2. 观察 **实时通道数据流**
3. 数据自动保存到 `data/captures/`
## 📚 Wiki / 使用指南
### 目录
1. [硬件设置](#hardware-setup)
2. [Web 界面](#web-interface)
3. [信号采集](#signal-capture)
4. [数据分析](#data-analysis)
5. [安全评估](#security-assessment)
6. [MCP 集成](#mcp-integration)
7. [故障排除](#troubleshooting)
## 硬件设置
### Kingst LA1010 引脚分布
```
Channel 0-15: Digital inputs (3.3V/5V tolerant)
GND: Common ground
VCC: Not used (logic analyzer is USB-powered)
```
### 连接示例
**UART/串口连接:**
```
LA1010 Channel 0 → Target TX
LA1010 Channel 1 → Target RX (optional)
LA1010 GND → Target GND
```
**SPI 连接:**
```
LA1010 Channel 0 → MOSI
LA1010 Channel 1 → MISO
LA1010 Channel 2 → SCK
LA1010 Channel 3 → CS
LA1010 GND → GND
```
**I2C 连接:**
```
LA1010 Channel 0 → SDA
LA1010 Channel 1 → SCL
LA1010 GND → GND
```
## Web 界面
### 仪表板概览
```
┌─────────────────────────────────────────────────────────┐
│ 🔌 Kingst LA1010 Logic Analyzer │
├─────────────────────────────────────────────────────────┤
│ Device Status: [🟢 Connected] │
│ Channels: 16 | Sample Rate: 100MHz | Captures: 5 │
├─────────────────────────────────────────────────────────┤
│ Controls: [▶️ Start] [⏹️ Stop] [📈 Live View] │
├─────────────────────────────────────────────────────────┤
│ Channel Feed: │
│ CH0: ━━━━━━━━━━━━━━━━━━━━━━━━ HIGH │
│ CH1: ━━━━━━━━━━━━━━━━━━━━━━━━ LOW │
│ CH2: ▂▃▅▂▃▅▂▃▅▂▃▅▂▃▅▂▃▅ WAVEFORM │
│ ... │
└─────────────────────────────────────────────────────────┘
```
### 功能特性
- **实时监控**:每 100ms 更新一次
- **通道可视化**:所有 16 个通道的波形显示
- **采集控制**:开始/停止并自动保存文件
- **设备检测**:自动检测 LA1010 连接
## 信号采集
### UART 采集
**命令行:**
```
DYLD_LIBRARY_PATH=/opt/homebrew/lib sigrok-cli \
--driver kingst-la1010 \
--config samplerate=5m \
--samples 10m \
--channels D0,D1 \
-P uart:baudrate=115200:parity=none:stopbits=1:data_bits=8 \
-A uart=rx:tx \
-o uart_capture.sr
```
**Web 界面:**
1. 将采样率设置为 5MHz(足以满足 115200 波特率)
2. 启用通道 0 和 1
3. 选择 UART 解码器(115200 波特率)
4. 开始采集
### SPI 采集
```
DYLD_LIBRARY_PATH=/opt/homebrew/lib sigrok-cli \
--driver kingst-la1010 \
--config samplerate=20m \
--samples 5m \
--channels D0,D1,D2,D3 \
-P spi:clk=D2:mosi=D0:miso=D1:cs=D3 \
-o spi_capture.sr
```
### I2C 采集
```
DYLD_LIBRARY_PATH=/opt/homebrew/lib sigrok-cli \
--driver kingst-la1010 \
--config samplerate=5m \
--samples 10m \
--channels D0,D1 \
-P i2c:sda=D0:scl=D1 \
-o i2c_capture.sr
```
## 数据分析
### 查看采集数据
**PulseView (GUI):**
```
pulseview data/captures/capture_20250301_143022.sr
```
**命令行解码:**
```
# 解码 UART
sigrok-cli -i data/captures/capture.sr \
-P uart:baudrate=115200 \
-A uart=rx:tx
# 解码 SPI
sigrok-cli -i data/captures/capture.sr \
-P spi:clk=D2:mosi=D0:miso=D1:cs=D3 \
-A spi=mosi:miso
# 导出为 CSV
sigrok-cli -i data/captures/capture.sr \
-O csv > data/captures/output.csv
```
### 使用 Python 分析
```
import subprocess
# 解码采集数据为文本
result = subprocess.run([
'sigrok-cli', '-i', 'data/captures/capture.sr',
'-P', 'uart:baudrate=115200',
'-A', 'uart=rx:tx'
], capture_output=True, text=True)
print(result.stdout)
```
## 安全评估
### 路由器安全测试
**连接到串口控制台:**
```
minicom -D /dev/tty.usbserial-0001 -b 115200
```
**检查安全漏洞:**
```
# 检查默认凭据
cat /etc/passwd
# 查找配置文件
find /etc -name "*.conf" -o -name "*.cfg"
# 检查运行中的服务
ps aux
netstat -tulpn
```
**自动化安全扫描:**
```
python3 serial_mcp_simple.py
# 通过 MCP 使用 "check_security" 工具
```
## MCP 集成
### 配置 MCP 服务器
添加到您的 MCP 配置:
```
{
"mcpServers": {
"kingst-logic-analyzer": {
"command": "python3",
"args": ["kingst_mcp_simple.py"]
},
"serial-broadcom-router": {
"command": "python3",
"args": ["serial_mcp_simple.py"]
}
}
}
```
### 可用工具
**Kingst MCP:**
- `check_device` - 检测 LA1010
- `start_capture` - 开始采集
- `measure_frequency` - 计算波特率
**Serial MCP:**
- `check_device` - 检测串口适配器
- `scan_baud_rates` - 测试常见波特率
- `check_security` - 安全评估
- `get_cracked_passwords` - 密码分析
## 故障排除
### 设备未检测到
**现象:** LA1010 未显示在 Web 界面中
**解决方案:**
```
# 1. 检查 USB 连接
ioreg -p IOUSB -w0 | grep -i kingst
# 2. 验证驱动安装
DYLD_LIBRARY_PATH=/opt/homebrew/lib sigrok-cli --driver kingst-la1010 --scan
# 3. 检查固件
ls ~/.local/share/sigrok-firmware/kingst/
# 4. 重新连接设备并重试
python3 usb_monitor.py
```
### 库路径问题
**现象:** `Library not loaded` 错误
**解决方案:**
```
export DYLD_LIBRARY_PATH=/opt/homebrew/lib
# 或添加到 ~/.zshrc:
echo 'export DYLD_LIBRARY_PATH=/opt/homebrew/lib' >> ~/.zshrc
```
### 权限被拒绝
**现象:** 无法访问 USB 设备
**解决方案:**
```
# 将用户添加到相应的组 (Linux)
sudo usermod -a -G dialout $USER
# 或使用 sudo 运行 (生产环境不推荐)
sudo ./start_web.sh
```
### Web 界面无法启动
**现象:** 端口 8080 已被占用
**解决方案:**
```
# 查找并占用端口 8080 的进程
lsof -ti:8080 | xargs kill -9
# 或使用不同的端口
python3 web_interface.py --port 8081
```
## 📁 项目结构
```
.
├── README.md # This file
├── requirements.txt # Python dependencies
├── .gitignore # Git exclusions
│
├── web_interface.py # Main web server
├── start_web.sh # Startup script
│
├── data/ # Data storage
│ ├── captures/ # Signal captures (.sr)
│ ├── firmware/ # Device firmware
│ └── logs/ # Session logs
│
├── kingst/ # Kingst LA1010 tools
│ ├── kingst_mcp_server.py
│ ├── kingst_mcp_simple.py
│ ├── install_kingst_sigrok.sh
│ ├── fwextractor.py
│ ├── usb_monitor.py
│ └── capture_router_boot.sh
│
└── mcp_servers/ # MCP implementations
├── serial_mcp_server.py
└── serial_mcp_simple.py
```
## 🤝 贡献指南
1. Fork 本仓库
2. 创建功能分支 (`git checkout -b feature/amazing-feature`)
3. 提交更改 (`git commit -m 'Add amazing feature'`)
4. 推送到分支 (`git push origin feature/amazing-feature`)
5. 发起 Pull Request
## 📄 许可证
MIT 许可证 - 详见 [LICENSE](LICENSE) 文件
## 🔗 资源
- **Kingst Electronics:** https://www.qdkingst.com/en
- **sigrok Project:** https://sigrok.org/
- **Kingst sigrok Fork:** https://github.com/AlexUg/sigrok
- **PulseView:** https://sigrok.org/wiki/PulseView
- **MCP Documentation:** https://modelcontextprotocol.io/
## 🆘 支持
**遇到问题?** 请检查:
1. [故障排除](#troubleshooting) 章节
2. GitHub Issues: https://github.com/AnotherWayIn/AI_Hardware_Hacking_Platform/issues
3. sigrok Wiki: https://sigrok.org/wiki/
**作者:** AnotherWayIn
**项目:** AI 硬件黑客平台
**版本:** 1.0.0
**最后更新:** 2026 年 3 月
### 🔧 硬件组件
- **Kingst LA1010** - 16 通道 USB 逻辑分析仪 (100MHz)
- **Broadcom BCM63167GWV_004R** - ADSL/VDSL 路由器
- **USB 串口适配器** - 基于 FT232 的串口接口
### 🚀 功能特性
#### 1. Kingst LA1010 终端控制
- 原生 sigrok 驱动支持
- 基于终端的采集控制
- 实时 UART/SPI/I2C 解码
- 无需 GUI
#### 2. Broadcom 路由器安全评估
- 通过 CFE bootloader 访问串口控制台
- 从 NAND flash 提取固件
- 密码破解(MD5 哈希已破解)
- 安全漏洞分析
#### 3. MCP 服务器 (Model Context Protocol)
- `kingst_mcp_server.py` - 逻辑分析仪控制
- `serial_mcp_server.py` - 路由器串口访问
### 📁 项目结构
```
.
├── README.md # This file
├── .gitignore # Git exclusions
├── requirements.txt # Python dependencies
│
├── kingst/ # Kingst LA1010 Logic Analyzer
│ ├── kingst_mcp_server.py # MCP server for LA1010
│ ├── kingst_mcp_simple.py # Simplified MCP server
│ ├── install_kingst_sigrok.sh # Install terminal driver
│ ├── fwextractor.py # Firmware extraction
│ ├── usb_monitor.py # USB device monitor
│ └── capture_router_boot.sh # Router boot log capture
│
├── router/ # Broadcom Router Security
│ ├── security_findings.txt # Security assessment results
│ ├── cracked_passwords.py # Password cracker
│ ├── capture_router_boot.sh # Boot log capture script
│ └── ...
│
├── mcp_servers/ # MCP Server Implementations
│ ├── kingst_mcp_server.py
│ └── serial_mcp_server.py
│
└── docs/ # Documentation
├── MCP_README.md
└── kingst_capture_config.py
```
### 🛠️ 安装说明
#### 前置条件
```
brew install git cmake libusb libftdi libtool autoconf automake pkg-config glib libzip check doxygen
```
#### Kingst LA1010 终端驱动
```
chmod +x kingst/install_kingst_sigrok.sh
./kingst/install_kingst_sigrok.sh
```
#### 提取固件
```
python3 kingst/fwextractor.py /Applications/KingstVIS.app/Contents/MacOS/KingstVIS
```
### 🎯 快速入门
#### 1. 测试 Kingst LA1010 检测
```
DYLD_LIBRARY_PATH=/opt/homebrew/lib sigrok-cli --driver kingst-la1010 --scan
```
#### 2. 采集路由器启动日志
```
DYLD_LIBRARY_PATH=/opt/homebrew/lib sigrok-cli \
--driver kingst-la1010 \
--config samplerate=5m \
--samples 10m \
--channels D0,D1 \
-P uart:baudrate=115200:parity=none:stopbits=1:data_bits=8 \
-A uart=rx:tx \
-o router_boot_log.sr
```
#### 3. 分析采集数据
```
# 在 PulseView 中查看
pulseview router_boot_log.sr
# 解码为文本
sigrok-cli -i router_boot_log.sr -P uart:baudrate=115200 -A uart=rx:tx
```
### 🔓 安全发现
**Broadcom 路由器漏洞:**
- 默认凭据:`admin/admin`、`support/support`
- 所有用户均拥有 root 权限 (UID 0)
- 弱 MD5 密码哈希
- NAND flash 老化(存在坏块)
- **安全评分:2/10 - 严重**
### 📊 MCP 集成
添加到您的 MCP 配置:
```
{
"mcpServers": {
"kingst-logic-analyzer": {
"command": "python3",
"args": ["kingst/kingst_mcp_simple.py"]
},
"serial-broadcom-router": {
"command": "python3",
"args": ["mcp_servers/serial_mcp_simple.py"]
}
}
}
```
### 📝 命令参考
#### Kingst LA1010
```
# 扫描设备
sigrok-cli --driver kingst-la1010 --scan
# 采集样本
sigrok-cli --driver kingst-la1010 --samples 1m -o capture.sr
# UART 解码
sigrok-cli --driver kingst-la1010 -P uart:baudrate=115200 --samples 5m
# 连续采集
sigrok-cli --driver kingst-la1010 --continuous -o live.sr
```
#### 串口路由器访问
```
# 连接到路由器
minicom -D /dev/tty.usbserial-0001 -b 115200
# 检查安全性
python3 router/cracked_passwords.py
```
### 🔗 资源
- **Kingst LA1010**: https://www.qdkingst.com/en
- **sigrok**: https://sigrok.org/
- **Kingst sigrok fork**: https://github.com/AlexUg/sigrok
- **MCP SDK**: https://github.com/modelcontextprotocol/python-sdk
### 📄 许可证
MIT 许可证 - 详见 LICENSE 文件
### 🤝 贡献指南
1. Fork 本仓库
2. 创建您的功能分支
3. 提交您的更改
4. 推送到分支
5. 发起 Pull Request
### 🐛 故障排除
#### 设备未检测到
```
# 检查 USB 连接
ioreg -p IOUSB -w0 | grep -i kingst
# 监听 USB 事件
python3 kingst/usb_monitor.py
```
#### 固件问题
```
# 重新从 KingstVIS 提取固件
python3 kingst/fwextractor.py /Applications/KingstVIS.app/Contents/MacOS/KingstVIS
```
#### 库路径问题
```
# 设置库路径
export DYLD_LIBRARY_PATH=/opt/homebrew/lib
```
**作者**: seang
**项目**: 硬件黑客与安全评估
**日期**: 2026 年 3 月
标签:AI辅助分析, DNS枚举, Kingst LA1010, MCP协议, Sigrok, Web控制界面, 串口通信, 人工智能, 代码生成, 侧信道分析, 信号分析, 协议解码, 命令控制, 固件提取, 实时处理, 嵌入式设备安全, 数据采集, 文档安全, 渗透测试工具, 物联网安全, 用户模式Hook绕过, 硬件安全测试, 硬件黑客, 网络安全工具, 逆向工具, 逻辑分析仪