j3r1ch0123/Fang
GitHub: j3r1ch0123/Fang
一个模块化的Web应用渗透测试框架,支持SQL注入、SSTI、LFI、SSRF和XXE五种常见漏洞的检测与利用。
Stars: 0 | Forks: 0
# Fang
一个模块化的 Web 应用渗透测试框架,用于识别和验证常见漏洞。
## 功能
- **SQL 注入** — 基于布尔型和基于时间的盲注 SQLi 检测
- **服务端模板注入 (SSTI)** — 自动检测引擎 (Jinja2, Tornado, Django, ERB, Twig) 并进入交互式 shell
- **本地文件包含 (LFI)** — 文件读取、PHP filter base64 解码、SSH 日志投毒、密钥扫描、Tor 支持
- **服务端请求伪造 (SSRF)** — 基于回调的检测,支持普通、小数和十六进制 IP 编码模式
- **XML 外部实体注入器** - 检测 XXE 注入并读取文件
## 安装
```
git clone https://github.com/j3r1ch0123/Fang.git
cd Fang
pip install -r requirements.txt
```
### 依赖
```
requests
paramiko
pyfiglet
urllib3
```
## 使用方法
运行主菜单:
```
python3 fang.py
```
系统将提示您选择模块并交互式输入目标详细信息。
## 模块
### SQL 注入 (`SQLI/sqli.py`)
检测基于布尔型和基于时间的盲注 SQL 注入。
```
python3 sqli.py -u -p [-e ]
```
| 参数 | 描述 |
|---|---|
| `-u` | 目标 URL |
| `-p` | 存在漏洞的参数名 |
| `-e` | 编码方式:`none`、`url`、`double`、`base64`、`all` |
### SSTI (`SSTI/ssti.py`)
检测并利用服务端模板注入。自动识别模板引擎并打开交互式 shell 以执行命令。
```
python3 ssti.py [--login] [--username USER] [--password PASS] [--engine ENGINE] [--method GET|POST] [--encode none|url|double]
```
| 参数 | 描述 |
|---|---|
| `url` | 目标基础 URL |
| `parameter` | 可注入的参数 |
| `--login` | 测试前进行身份验证 |
| `--engine` | 强制指定引擎:`jinja2`、`tornado`、`django` |
| `--method` | HTTP 方法(默认:GET) |
| `--encode` | 编码方式 |
### LFI (`LFI/lfi.py`)
使用多种编码绕过技术和日志投毒支持测试本地文件包含漏洞。
```
python3 lfi.py [--method GET|POST] [--encode ENCODING] [--php-filter] [--ssh] [--secrets] [--tor]
```
| 参数 | 描述 |
|---|---|
| `url` | 目标 URL |
| `param` | 存在漏洞的参数 |
| `lfi_payload` | 要包含的文件路径(例如 `/etc/passwd`)|
| `--method` | HTTP 方法(默认:GET) |
| `--encode` | 编码方式:`none`、`url`、`double`、`base64`、`traversal`、`double_traversal`、`nullbyte`、`all` |
| `--php-filter` | 使用 PHP filter 包装器对源码进行 base64 解码 |
| `--ssh` | 执行 SSH 日志投毒 |
| `--secrets` | 扫描包含的文件以查找密钥/凭据 |
| `--outfile` | 发现的密钥输出文件(默认:`secrets.txt`)|
| `--tor` | 通过 Tor 路由流量 |
| `--cookie` | 用于身份验证测试的 PHPSESSID cookie |
### SSRF (`SSRF/ssrf.py`)
使用本地回调监听器和唯一令牌检测服务端请求伪造。
```
python3 ssrf.py [-e ENCODING] [-m MODE]
```
| 参数 | 描述 |
|---|---|
| `url` | 目标 URL |
| `param` | 存在漏洞的参数 |
| `public_ip` | 用于回调的您的公网 IP |
| `port` | 监听端口 |
| `-e` | 编码方式:`none`、`url`、`double` |
| `-m` | IP 模式:`normal`、`decimal`、`hex` |
## 示例
```
# 测试 SSRF
python3 ssrf.py http://target.com/fetch url 1.2.3.4 8080
# 测试 SSTI 并登录
python3 ssti.py http://target.com/ name --login --username admin --password admin
# LFI 与 PHP 过滤器
python3 lfi.py http://target.com/page.php file /etc/passwd --php-filter
# SQLi 与 URL 编码
python3 sqli.py -u http://target.com/item -p id -e url
```
## 许可证
MIT 许可证 — 详见 `LICENSE` 文件。
标签:CISA项目, DOE合作, LFI, meg, Python, SSRF, SSTI, Web安全, Web应用漏洞, XML外部实体, XXE, 云存储安全, 信息安全, 文件包含, 无后门, 无线安全, 模板注入, 渗透工具, 渗透测试框架, 盲注, 网络安全, 网络安全审计, 网络扫描, 蓝队分析, 逆向工具, 防御, 隐私保护