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安全, 无后门, 蓝队分析, 逆向工具