roxdavirox/techprobe
GitHub: roxdavirox/techprobe
一款基于 Rust 的高性能 Web 技术栈检测工具,通过分析多种网站特征来识别目标站点使用的框架、CMS、服务器等技术,兼容 Wappalyzer 指纹格式。
Stars: 1 | Forks: 0
# techprobe
高性能 Web 技术检测器 —— Wappalyzer 的 Rust 替代方案。
通过分析 HTTP headers、HTML 内容、meta 标签、cookies、JavaScript 文件等来检测网站使用的技术。
## 功能
- **快速**:使用 Rust 编写,采用异步 I/O 实现高性能扫描
- **Chrome 扩展**:用于实时检测的浏览器扩展
- **兼容**:使用与 Wappalyzer 相同的指纹格式
- **多种输出格式**:Text、JSON 和 CSV
- **并发扫描**:同时扫描多个 URL
- **可扩展**:轻松添加新技术指纹
## 安装
### CLI (Rust)
```
cargo build --release
```
二进制文件将位于 `target/release/techprobe`。
### Chrome 扩展
1. 打开 `chrome://extensions/`
2. 启用“开发者模式”
3. 点击“加载已解压的扩展程序”
4. 选择 `extension/` 文件夹
该扩展程序将检测您访问的任何网站上的技术,并显示一个带有计数的徽章。
## 用法
### 扫描网站
```
# 扫描单个网站
techprobe scan example.com
# 扫描多个网站
techprobe scan site1.com site2.com site3.com
# 输出为 JSON
techprobe scan -F json example.com
# 保存结果到文件
techprobe scan -o results.json example.com
# 跟随重定向
techprobe scan --follow-redirects example.com
```
### 列出技术
```
# 列出所有技术
techprobe list
# 按类别过滤
techprobe list -c cms
# 搜索技术
techprobe list -s wordpress
```
## 输出格式
### Text(默认)
```
Target: https://example.com
────────────────────────────────────────────────────────────
● WordPress v6.4 — CMS, Blogs
● PHP v8.2 — Programming Languages
● Nginx v1.24 — Web Servers
→ 3 technologies detected
```
### JSON
```
[
{
"url": "https://example.com",
"technologies": [
{
"name": "WordPress",
"version": "6.4",
"confidence": 100,
"categories": ["CMS", "Blogs"]
}
],
"headers": {...},
"status": 200,
"elapsed_ms": 245
}
]
```
### CSV
```
url,technology,version,confidence,categories
https://example.com,WordPress,6.4,100,CMS;Blogs
```
## 检测方法
- **HTTP Headers**:Server、X-Powered-By、Set-Cookie 等。
- **HTML 内容**:Script 标签、link 标签、CSS 类
- **Meta 标签**:Generator、其他 meta 信息
- **Cookies**:Session cookies、tracking cookies
- **JavaScript**:通过全局变量进行库检测
- **URL 模式**:基于域名的检测
## 指纹数据库
指纹数据库位于 `data/technologies.json` 中,并遵循 Wappalyzer 格式。每个技术条目可以包含:
- `description`:简短描述
- `cats`:类别 ID
- `website`:官方网站 URL
- `headers`:HTTP header 模式
- `meta`:meta 标签模式
- `cookies`:Cookie 模式
- `scriptSrc`:Script URL 模式
- `scripts`:内联 script 模式
- `html`:HTML 内容模式
- `js`:JavaScript 属性模式
- `implies`:暗示的其他技术
- `requires`:必须优先检测的技术
## 添加新技术
编辑 `data/technologies.json` 并添加一个新条目:
```
{
"MyFramework": {
"description": "A cool web framework",
"cats": [18],
"website": "https://myframework.dev",
"headers": {
"x-powered-by": "MyFramework"
},
"scriptSrc": [
"myframework\\.js"
]
}
}
```
## 与 Wappalyzer 的对比
| 功能 | techprobe | Wappalyzer |
|---------|-----------|------------|
| 语言 | Rust + JS | JavaScript |
| 性能 | 高 | 中 |
| CLI | 原生 | Node.js |
| 浏览器扩展 | 是 | 是 |
| API | 基于 CLI | Web API |
| 指纹格式 | 兼容 | 原始 |
| 开源 | MIT | GPL-3.0 |
## 许可证
MIT
标签:C2日志可视化, Rust, Wappalyzer替代, Web技术栈识别, 可视化界面, 指纹识别, 数据可视化, 网络流量审计, 自定义脚本