# sqlmap_gui **Repository Path**: wclnb/sqlmap_gui ## Basic Information - **Project Name**: sqlmap_gui - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-23 - **Last Updated**: 2025-12-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SQLMap GUI 一个基于 PyQt6 的 SQLMap 图形用户界面,旨在简化 SQLMap 的使用,使安全测试人员能够更直观地配置和执行 SQL 注入测试。 ![image-20250804162011231](https://dikkksi-wiki-pic.oss-cn-chengdu.aliyuncs.com/wiki_img_2/20250804162016704.png) ## 功能特性 * **直观的图形界面**: 提供选项卡式布局,将 SQLMap 的众多选项分类管理,易于使用。 * **基本选项配置**: 轻松设置目标 URL、HTTP 请求文件、POST 数据、Cookie、Headers 以及基本的注入选项(技术、DBMS、级别、风险)和枚举目标(数据库、表、列、数据)。 * **高级选项配置**: 支持配置线程数、超时、延迟、重试、详细程度、WAF 识别/绕过、Tor 网络、操作系统、代理以及自定义参数等高级功能。 * **Tamper 脚本管理**: 自动加载并列出 `sqlmap/tamper/` 目录下的所有篡改脚本,支持搜索、查看详情和多选启用,方便绕过 WAF/IPS。 * **HTTP 请求文件处理**: 可以浏览、查看和编辑 HTTP 请求文件,确保格式正确性。 * **命令预览与执行**: * 实时预览将要执行的 SQLMap 命令。 * 对于 GET 请求,可以直接在 GUI 内启动 SQLMap 并查看实时输出。 * 对于 POST 请求或复杂场景,生成命令并提示用户复制到终端执行,以确保最佳兼容性。 * **结果展示与保存**: * 在 GUI 内实时显示 SQLMap 的输出结果。 * 对输出进行语法高亮,便于识别警告、错误、Payload 和数据库相关信息。 * 可将执行结果(文本或 HTML 格式)和生成的命令保存到本地文件。 * **内置使用说明**: 集成 SQLMap 官方使用手册,方便随时查阅。 ## 界面概览 1. **基本选项**: 配置核心目标和注入参数。 2. **高级选项**: 调整性能、检测和网络相关设置。 3. **Tamper 脚本**: 选择和管理用于绕过防护的篡改脚本。 4. **结果**: 查看生成的命令、实时输出和历史结果。 ## 安装 ### 先决条件 * **Python 3.6+**: 确保您的系统已安装 Python 3.6 或更高版本。 * **SQLMap**: 需要安装 SQLMap。推荐使用 git 克隆最新开发版: ```bash git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git sqlmap-dev ``` * **PyQt6**: 用于构建图形界面。 ### 安装步骤 1. **克隆或下载此 GUI 项目**: 将 `sqlmap_gui.py` 和 `gui_settings.py` 文件放置在 SQLMap 的根目录下(即 `sqlmap.py` 所在的目录)。 2. **安装依赖**: ```sh pip install PyQt6 ``` 3. **确保 SQLMap 可执行**: 确认您可以通过 `python sqlmap.py --version` 在 SQLMap 根目录下运行 SQLMap。 ## 使用方法 1. **启动 GUI**: 在 SQLMap 根目录下,通过终端运行: ```sh python sqlmap_gui.py ``` 2. **配置选项**: * 切换到 **基本选项** 选项卡,填写目标 URL 或加载 HTTP 请求文件,设置注入技术和枚举目标。 * 在 **高级选项** 选项卡中,根据需要调整线程、超时、代理等高级设置。 * 在 **Tamper 脚本** 选项卡中,搜索、浏览脚本详情,并选择需要的脚本。 3. **运行 SQLMap**: * 点击主界面底部的 **"运行 SQLMap"** 按钮。 * 如果配置了 GET 请求,GUI 将尝试直接执行并显示结果。 * 如果配置了 POST 请求或 HTTP 请求文件,GUI 会生成命令,提示您复制并在系统终端中执行,以避免潜在的兼容性问题。 4. **查看结果**: 执行过程和结果将在 **结果** 选项卡的 "执行结果" 区域显示。 5. **保存**: 可以使用 **结果** 选项卡中的 "保存结果" 按钮保存输出,或使用 **保存命令** 按钮保存生成的命令行。 ## 使用流程 1. 选择注入类型(POST/GET) ![image-20250804163300410](https://dikkksi-wiki-pic.oss-cn-chengdu.aliyuncs.com/wiki_img_2/20250804163300442.png) ![image-20250804163459669](https://dikkksi-wiki-pic.oss-cn-chengdu.aliyuncs.com/wiki_img_2/20250804163459706.png) 其中GET型注入只需要填写URL地址即可,POST注入可以预览文件进行加载,加载后可以对请求进行查看/编辑,在点击运行后,程序会对请求文件格式进行检查,并提出修复选项 ![image-20250804163631686](https://dikkksi-wiki-pic.oss-cn-chengdu.aliyuncs.com/wiki_img_2/20250804163631711.png) 2. 选择基础选项 ![image-20250804174008066](https://dikkksi-wiki-pic.oss-cn-chengdu.aliyuncs.com/wiki_img_2/20250804174008102.png) 3. 可选的高级选项配置 ![image-20250804174606384](https://dikkksi-wiki-pic.oss-cn-chengdu.aliyuncs.com/wiki_img_2/20250804174606406.png) 随机UA头可以规避一些sqlmap特征检测,请求延迟配置等可以防止被封IP 4. 配置tamper(可选) ![image-20250804174742375](https://dikkksi-wiki-pic.oss-cn-chengdu.aliyuncs.com/wiki_img_2/20250804174742404.png) 左侧列表点击tamper可以查看对应的tamper详情,右侧可以选择要使用的tamper,左下角会显示已选择的tamper脚本个数 5. 运行sqlmap ![image-20250804175057030](https://dikkksi-wiki-pic.oss-cn-chengdu.aliyuncs.com/wiki_img_2/20250804175057057.png) 会显示扫描结果,用户也可以点击复制命令,自行在命令行执行 6. 保存结果 ![image-20250804175242899](https://dikkksi-wiki-pic.oss-cn-chengdu.aliyuncs.com/wiki_img_2/20250804175242924.png) 用户可以选择保存为txt文件或html文档 ![image-20250804175348915](https://dikkksi-wiki-pic.oss-cn-chengdu.aliyuncs.com/wiki_img_2/20250804175348938.png) ## 注意事项 * **合法性**: 仅在您拥有明确授权的系统上使用此工具进行测试。未经授权的使用是非法的。 * **兼容性**: 对于复杂的 HTTP 请求(特别是 POST),GUI 会提示在终端执行以确保稳定性。 * **环境**: GUI 启动的 SQLMap 进程会设置一些环境变量(如 `SQLMAP_NOCOLOR=1`)以优化输出。 ## 项目结构 * `sqlmap_gui.py`: 主程序文件,包含 GUI 逻辑和 SQLMap 执行器。 * `gui_settings.py`: 包含界面主题、字体、样式表和 SQLMap 使用说明的配置文件。 ## 免责声明 本工具旨在用于合法的安全测试和研究目的。用户有责任确保其使用符合所有适用的法律法规。开发者不对任何滥用或由此程序造成的损害负责。 ## 许可证 该 GUI 项目遵循**Apache License 2.0** 协议。请注意,SQLMap 本身是根据 GNU General Public License v2.0 或更高版本许可的。 ## 致谢 在此特别感谢优秀的开源项目:[sqlmapproject/sqlmap: Automatic SQL injection and database takeover tool](https://github.com/sqlmapproject/sqlmap)