annithehunter/APIFuzz
GitHub: annithehunter/APIFuzz
一款轻量级 Python API 端点模糊测试工具,能够在终端直接展示有效端点的路径、状态码及响应内容,省去手动逐个访问的麻烦。
Stars: 0 | Forks: 0
# APIFuzz 🚀
一个基于 Python 的轻量级 API endpoint 模糊测试工具,能够发现有效的 API endpoint 并直接在终端中显示其响应内容。
## 📌 动机
在使用像 **ffuf** 这样的工具进行 endpoint 枚举时,我注意到,尽管它们能高效地识别出有效的 endpoint,但我仍然需要在浏览器中手动访问每个 endpoint,或者使用其他工具来检查响应。
为了简化这个过程,我创建了 **APIFuzz**。
APIFuzz 不仅能识别有效的 endpoint,还会直接显示:
* Endpoint 路径
* HTTP 状态码
* 响应内容
并且全部直接在终端中展示。
## ✨ 功能
* 使用自定义字典进行 endpoint 枚举
* 显示有效的 endpoint
* 显示 HTTP 状态码
* 打印 API 响应内容
* 终端彩色输出
* 简单轻量
## 🛠 环境要求
* Python 3.x
* requests
* termcolor
安装依赖:
```
pip install requests termcolor
```
## 📂 用法
```
python3 apifuzz.py
```
### 示例
```
python3 apifuzz.py http://target-api.com/ wordlist.txt
```
## 📸 示例输出
```
[*] checking for endpoints...
[+] Endpoint: /users Status Code: 200
{'id': 1, 'name': 'admin'}
[+] Endpoint: /products Status Code: 200
{'items': ['item1', 'item2']}
```
## ⚙️ 工作原理
1. 接收目标 API URL。
2. 从字典中读取 endpoint。
3. 向每个 endpoint 发送 GET 请求。
4. 忽略 404 响应。
5. 打印有效的 endpoint 及其响应内容。
## 📁 项目结构
```
APIFuzz/
│
├── apifuzz.py
├── wordlist.txt
└── README.md
```
## 🚀 未来改进
* 多线程支持
* 自定义 headers
* 身份验证支持
* 速率限制
* JSON/CSV 输出
* POST 请求支持
* 响应过滤
## 👨💻 作者
**Aniruddh Kumar Yadav**
GitHub: https://github.com/annithehunter
LinkedIn: https://linkedin.com/in/annithehunter
## ⚠️ 免责声明
本工具仅供教育目的和授权的安全测试使用。在对任何目标进行测试之前,请务必获得适当的许可。
标签:API, Python, Web安全, 无后门, 蓝队分析, 逆向工具