Sublime Text 仅作为SQLMap命令编写与管理工具,需确保Python环境、sqlmap安装路径与构建系统一致,并通过自定义Build System调用sqlmap;参数宜用文本文件分行列出后拼接,输出日志须在终端查看。

Sublime Text 本身不运行 SQLMap,也不能直接配置“SQLMap 数据库测试环境”——它只是个文本编辑器,不是渗透测试平台或数据库客户端。你真正需要的,是用 Sublime Text 高效编写、组织、调试 SQLMap 相关脚本和命令,同时避免因环境错配导致 sqlmap 命令根本跑不起来。
确认 Python 环境是否就绪(不是装了就行)
SQLMap 依赖 Python 2.7 或 Python 3.6+(推荐 3.8–3.11),但很多新手在 Sublime Text 里点运行后看到 ModuleNotFoundError: No module named 'requests' 或 command not found: sqlmap,其实问题不在编辑器,而在终端环境没对齐。
- 在终端执行
which python3和python3 -m pip list | grep sqlmap,确认sqlmap是通过pip install sqlmap安装的,且路径与 Sublime Text 调用的 Python 一致 - Sublime Text 默认调用系统 PATH 中的
python,如果你用 pyenv、conda 或双 Python 版本,必须显式配置构建系统(见下一条) - Windows 用户尤其注意:PowerShell 和 CMD 的 PATH 可能不同,
sqlmap --version要在 Sublime 的 Build System 所用 shell 中能直接执行
配置 Sublime Text 构建系统调用 sqlmap
Sublime Text 的 Build System 决定你按 Ctrl+B(macOS Cmd+B)时实际执行哪条命令。默认的 Python 构建只会运行 python *.py,对 sqlmap -u "http://..." 这类命令无效。
- 菜单栏 → Tools → Build System → New Build System…
- 粘贴以下内容并保存为
SQLMap.sublime-build(路径自动落在Packages/User/):
{
"shell_cmd": "sqlmap $file",
"file_regex": "^(.*?):([0-9]+):?([0-9]+)?:? (.*)$",
"working_dir": "$file_path",
"selector": "source.python"
}
说明:$file 指当前打开的 .py 或 .txt 文件;若你习惯把命令写在 scan.cmd 里,就把 "shell_cmd": "bash -c 'sqlmap -r $file'";Windows 用户把 bash -c 换成 cmd /c。
用 Sublime Text 管理 SQLMap 参数文件(比命令行更可靠)
复杂测试常需几十个参数(如 --level=5 --risk=3 --batch --technique=BU --dump),手敲易漏、难复用。Sublime Text 的多光标、正则替换、侧边栏项目管理刚好解决这个痛点。
- 新建一个
sqlmap-params.txt,把常用参数分行写好(每行一个):--url="http://test.com?id=1"--dbs--batch--threads=3 - 选中全部参数 →
Ctrl+Shift+P→ 输入 “Join Lines”,一键拼成单行命令 - 配合插件
External Tools或自定义快捷键,可一键复制整行到终端,避免 Shell 特殊字符(如引号、&)被截断 - 注意:SQLMap 对参数顺序敏感,
--data必须在--url后,--cookie必须在--headers前——Sublime Text 不会帮你校验逻辑,靠你自己排好序
别指望 Sublime Text 显示 sqlmap 实时输出
Sublime Text 的 Build 窗口是只读的,不支持交互式输入(比如 --os-shell 需要你手动输命令)、不支持 ANSI 颜色、无法滚动加载超长结果。一旦看到 [INFO] fetched data logged to text files in '/home/user/.sqlmap/output/...',就得立刻切到终端查 output/ 目录。
- SQLMap 输出默认存到
~/.sqlmap/output/(Linux/macOS)或%USERPROFILE%\AppData\Roaming\sqlmap\output\(Windows),Sublime Text 可以直接通过侧边栏 File → Open Folder… 打开该路径,用内置文件浏览器快速定位dump/或logs/ - 想看实时日志?用
tail -f ~/.sqlmap/output/*/session.sqlite(不推荐)或直接less ~/.sqlmap/output/*/log—— Sublime Text 不是终端替代品 - 最常被忽略的一点:
sqlmap在后台跑时,如果目标响应慢或 WAF 干扰,Sublime Text 的 Build 窗口可能卡住不动,你以为挂了,其实是 SQLMap 自己在重试。这时候看ps aux | grep sqlmap更靠谱


















