游客发表
SQL注入这玩意儿,安装说白了就是教程往数据库里塞恶意指令。sqlmap干的安装就是自动化这件事——你给它一个URL,它帮你把注入点、教程数据库类型、安装表结构甚至数据全扒出来。教程我第一次用的安装时候盯着终端里滚出来的表名和字段,感觉像开了后门。教程
装sqlmap的安装路子不止一条,选哪个取决于你系统环境和个人习惯。教程下面按实际操作的安装顺序来。
Kali Linux自带sqlmap,打开终端敲 sqlmap -h 就能看到帮助信息。安装如果你用的教程是Ubuntu或者Debian,直接apt装也行:
sudo apt update sudo apt install sqlmap 但apt源里的安装版本有时候偏旧。想用最新版,从GitHub拉:
git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git sqlmap-dev cd sqlmap-dev python3 sqlmap.py -h --depth 1 只拉最新一次提交,省时间。克隆完不需要编译,Python脚本直接跑。
Homebrew能装,但我不太推荐——brew的sqlmap配方更新慢,偶尔还会因为Python版本依赖出问题。直接git clone更干净。macOS自带Python3,克隆完进目录执行 python3 sqlmap.py 就行。
有个坑注意一下:如果你用zsh,PATH里没有当前目录,别想着直接敲 sqlmap.py,老老实实带路径或者做个alias。
Windows没有预装Python的话,先去python.org下个3.x版本,安装时勾上“Add Python to PATH”——这一步忘了后面全是麻烦。
然后去sqlmap官网(sqlmap.org)下载zip包,解压到任意目录,比如 C:\tools\sqlmap。打开cmd或者PowerShell,cd进去:
cd C:\tools\sqlmap python sqlmap.py -h 能看到帮助信息就说明成了。如果报“python不是内部或外部命令”,回去检查PATH。
Windows下还有个选择是用WSL,装法和Linux一样。我个人倾向WSL,因为sqlmap很多高级功能在Linux环境下更顺,比如 --os-shell 拿系统shell的时候,Linux的交互体验比cmd好太多。
不管哪个平台,跑一条最简单的命令确认能用:
sqlmap -u "http://testphp.vulnweb.com/artists.php?artist=1" --dbs 这是acunetix提供的公开测试站点,合法可打。如果返回了数据库列表,说明环境没问题。第一次跑可能会问你要不要跳过某些启发式检测,选默认就行。
Python版本冲突是最常见的。sqlmap现在要求Python 3.x,如果你系统里同时有2.7和3.x,确认 python --version 输出的是3开头的。Ubuntu某些老版本默认还是Python2,得用 python3 sqlmap.py。
另一个是权限问题。Linux下如果装在 /opt 之类的地方,普通用户可能没写权限,sqlmap运行时需要写临时文件到 ~/.sqlmap 目录,这个一般不会有问题,但如果你改了默认配置路径就要留意。
代理和证书错误也常碰到。公司网络走代理的话,加 --proxy="http://127.0.0.1:8080"。遇到SSL证书验证失败,临时加 --force-ssl 或者检查系统CA证书。
装好只是第一步。sqlmap的参数多到离谱,-h 看完得花不少时间。建议先从 -u 加 --dbs、--tables、--dump 这几个基础组合练手,熟悉了再碰 --tamper 脚本和 --os-pwn 那些进阶操作。
友情链接