Carlwyne-Dev/viper
GitHub: Carlwyne-Dev/viper
Viper 是一款以精准和低噪音为核心理念的安全侦察工具包,集成了端口扫描、子域名枚举、Web 指纹、哈希破解等能力并支持扫描结果的持久化与差异对比。
Stars: 1 | Forks: 0
```
██╗ ██╗██╗██████╗ ███████╗██████╗
██║ ██║██║██╔══██╗██╔════╝██╔══██╗
██║ ██║██║██████╔╝█████╗ ██████╔╝
╚██╗ ██╔╝██║██╔═══╝ ██╔══╝ ██╔══██╗
╚████╔╝ ██║██║ ███████╗██║ ██║
╚═══╝ ╚═╝╚═╝ ╚══════╝╚═╝ ╚═╝
```
**我们咬人。**
一个精准的侦察与安全工具包。




## 理念
Viper 是**侦察优先**的。它做的事比大多数工具都少,但做得更好。
- **注重信号,而非噪音。** 每一行输出都有其价值。
- **天生极速。** 根据测量的延迟自动调整扫描超时。
- **自以为是。** `viper bite` 会做正确的事。无需任何 flag。
- **精准胜过轰炸。** `CRIT` 就是 CRIT。
- **记忆功能。** Viper 记得每一次扫描。`viper diff` 会显示发生了什么变化。
## 安装
```
git clone https://github.com/yourusername/viper.git
cd viper
pip install -e .
# 可选:更丰富的 DNS + WHOIS 支持
pip install -e ".[full]"
```
## Docker
在容器中运行 Viper —— 没有依赖地狱,保证能在任何系统上运行:
```
# 构建镜像
docker build -t viper:latest .
# 运行 Viper
docker run -it viper:latest
```
在 Windows、Mac 和 Linux 上的运行效果完全相同。没有 Python 版本冲突,也没有缺失的依赖。
## 毒牙
| 命令 | 功能说明 |
|---------|-------------|
| `viper bite target.com` | 快速侦察:扫描 + DNS + 子域名 + 漏洞提示 |
| `viper bite target.com --all` | + Web毒牙:技术栈、路径、SSL、headers |
| `viper venom target.com` | 全面攻击,自动保存 HTML + JSON 报告 |
| `viper web target.com` | Web 指纹、敏感路径、SSL 审计 |
| `viper fang target.com` | 针对性端口扫描 |
| `viper recon target.com` | DNS 记录 + 子域名枚举 |
| `viper osint johndoe --social` | 社交媒体足迹 |
| `viper crack
` | 识别 + 破解密码哈希 |
| `viper diff target.com` | 对比最近两次扫描 —— 有什么变化? |
| `viper history target.com` | 完整的扫描历史 |
| `viper report scan.json` | 生成 HTML 报告 |
## 运行效果
```
── BITE FANG google.com ──────────────────────────────────
[VIPER] Target locked → google.com
[INFO] Latency tuned timeout → 0.30s per port
── PORT FANG google.com ──────────────────────────────────
[SCAN] Scanning 1-1024...
PORT STATE SERVICE
────── ────── ────────────
80 OPEN HTTP
443 OPEN HTTPS
2 open ports · 1.2s
── DNS FANG google.com ───────────────────────────────────
A 142.250.80.46
MX 10 smtp.google.com.
NS ns1.google.com.
TXT "v=spf1 include:_spf.google.com ~all"
11 records · 0.4s
── DNS FANG subdomains · google.com ──────────────────────
[FOUND] admin.google.com 172.217.26.78
[FOUND] vault.google.com 74.125.204.118
[FOUND] api.google.com 142.251.8.106
15 subdomains found · 1.8s
```
```
viper diff google.com
── DIFF google.com ────────────────────────────────────────
prev 2026-05-21
curr 2026-05-28
delta +40 risk
── NEW FINDINGS ───────────────────────────────────────────
+ [HIGH] Port 8080 open HTTP-Alt
+ [MED] Missing CSP port 80
── CLOSED ─────────────────────────────────────────────────
- [LOW] Port 21 open FTP
+2 new -1 closed ~0 changed 47 stable
```
## 用法
### 默认操作
```
viper bite google.com
viper bite google.com --all # includes web analysis
viper bite google.com --save out.json
viper bite google.com --silent --json | jq .ports
```
### 全面攻击
```
viper venom google.com
viper venom google.com --out ./reports
```
### Web 情报
```
viper web google.com
viper web google.com --save web.json
```
### 端口扫描
```
viper fang 10.0.0.1
viper fang 10.0.0.1 -p 1-65535
viper fang 10.0.0.1 -p 22,80,443 --threads 300
```
### DNS + 子域名
```
viper recon google.com
viper recon google.com --whois
```
### OSINT
```
viper osint johndoe --social
viper osint t --email john doe company.com
```
### 哈希破解
```
viper crack 5f4dcc3b5aa765d61d8327deb882cf99
viper crack -w /usr/share/wordlists/rockyou.txt
viper crack --identify
```
### 情报(扫描历史 + diff)
```
viper bite google.com # auto-saves to ~/.viper/history/
viper bite google.com # scan again later
viper diff google.com # what changed?
viper history google.com # all past scans
viper targets # all tracked targets
```
### 报告
```
viper bite google.com --save scan.json
viper report scan.json -o report.html
```
### 配置
```
viper config --show
viper config --init
viper config --set scan.threads 200
viper config --set scan.timeout 0.3
viper config --set scan.ports 1-65535
```
## 架构
```
viper/
├── cli.py # Commands — voice of the tool
├── core/
│ ├── models.py # Unified Finding + ScanResult
│ ├── history.py # Scan persistence (~/.viper/history/)
│ ├── diff.py # Comparison engine
│ ├── latency.py # Network-aware timeout tuning
│ ├── config.py # Typed config (~/.viper/config.json)
│ └── errors.py # Graceful failures, no tracebacks
├── bite/
│ ├── quick.py # viper bite — fast default flow
│ └── deep.py # viper venom — full assault
├── modules/ # Raw capability. No rendering.
│ ├── scanner.py # Threaded port scanner
│ ├── recon.py # DNS + concurrent subdomain enum
│ ├── vuln.py # Banner grab + CVE signatures
│ ├── web.py # Web fingerprint + path check
│ ├── osint.py # Email + social footprint
│ └── crack.py # Hash ID + wordlist crack
└── output/
├── terminal.py # All rendering. One place.
└── report.py # HTML + JSON export
```
**核心规则:** `modules/` 绝不输出任何内容。`output/terminal.py` 掌控屏幕上显示的每一行。修改设计,只需改动一个文件。
## 工作流程
```
# 侦察目标
viper bite target.com --all --save $(date +%F)-target.json
# 生成报告
viper report $(date +%F)-target.json -o report.html
# 下周回来
viper bite target.com
# 查看变更
viper diff target.com
```
## 环境要求
- Python 3.10+
- `click>=8.0`
- `rich>=13.0`
- 可选:`dnspython`, `python-whois`
## 免责声明
*一个真正名副其实的安静工具。*
标签:GitHub, Python, 实时处理, 密码管理, 无后门, 请求拦截, 逆向工具