|
直接去 sqlmap 的安装 GitHub 仓库下。地址是包下 github.com/sqlmap/sqlmap。别在搜索引擎里翻那些所谓“中文版”“一键安装包”的安装下载站,十个里有八个捆了挖矿脚本或者后门,包下我见过有人从某下载站拿了个 sqlmap.zip,安装解压出来 sqlmap.py 只有 2KB,包下打开一看是安装 base64 编码的 PowerShell 下载器。正规渠道就这一个,包下记住。安装 GitHub 页面右侧有个绿色的包下 Code 按钮,点开选 Download ZIP。安装文件不大,包下几 MB 的安装事。下下来是包下个 sqlmap-master.zip,解压到任意目录就能用。安装Windows 上需要 Python 环境,建议 3.8 以上,2.7 也能跑但没必要折腾自己。装 Python 的时候记得勾选 “Add Python to PATH”,不然命令行里敲 python 会提示找不到命令。 解压完的目录结构大致是这样:根目录下有个 sqlmap.py,这是主入口。还有 data、plugins、tamper 几个文件夹。tamper 目录值得留意,里面是各种绕过 WAF 的脚本,后续实战里会经常用到。lib 目录是核心代码,一般不用动。 跑起来很简单。打开终端,cd 到 sqlmap 目录,执行 python sqlmap.py -u "http://target.com/page?id=1"。第一次运行会问你要不要继续,因为 sqlmap 默认认为未授权测试有法律风险,输入 y 回车。看到那个 ASCII 艺术字的 banner 就算成功了。 Linux 和 macOS 用户更省事。Kali 系统自带 sqlmap,终端直接敲 sqlmap 就能用。macOS 可以用 Homebrew:brew install sqlmap。不过 Homebrew 版本有时会落后于 GitHub master 分支,想用最新功能还是建议手动 clone。git clone 的好处是更新方便,git pull 一条命令就同步了,不用每次重新下载 ZIP。 有个细节容易踩坑。Windows 下如果同时装了 Python 2 和 Python 3,命令行里 python 可能指向 Python 2。这时候用 py -3 sqlmap.py 来明确指定版本。或者干脆把 Python 3 的路径加到环境变量最前面。我自己的习惯是在 sqlmap 目录下建个 bat 文件,内容就一行 py -3 sqlmap.py %*,以后直接敲这个 bat 名字加参数,省事。 还有人问要不要装 sqlmap 的依赖库。标准功能不需要额外装东西,Python 自带的库就够了。但如果你想用某些高级特性,比如连接 MySQL 时走特定驱动,或者用 icmpsh 做 DNS 外带,那就得按需装。sqlmap 启动时会自己检查,缺什么会提示你 pip install。 最后说一嘴版本问题。GitHub 上的 master 分支更新很频繁,有时候一天好几个 commit。生产环境用的话,建议下 release 页面里的稳定版。地址是 github.com/sqlmap/sqlmap/releases。写这篇文章时最新稳定版是 1.8.2,但你看的时候可能已经更新了。自己核对一下。 别去下那些来路不明的“汉化版”。sqlmap 的英文提示就那么几十个常用词,查两次就记住了。为了省这点事把机器搭进去,不值。 |