最简单的攻击过程(less-1)
1.测试是否有漏洞,用'或"等等
2.测试中,逻辑测试…
3.测试出结果后是',所以后面加个',然后加个--+(--表示注释,+表示空格)
4.用order by测试表有几列,超过最大列数会报错,这里4的时候报错了,3的时候没报错,说明有3列
5.用union联合查询,然后id改成一个不存在的,让查询结果不存在,从而空出位置输出我们想要的结果,然后有3列,所以select 1,2,3
6.因为只有2,3的位置会有输出,所以在2,3的地方修改sql语句输出我们想要的结果,这里尝试获取当前数据库名和版本号
7.通过sql语句查询数据库下存在的表名,并用group_concat全部输出
8.这次查询全部列名
9.这次查询users表里每一列的结果并输出
【总结:首先要测试出其是否存在漏洞,若有漏洞,则可以开始。先试出其有几列,然后union联合查询再输出结果就行,这种是最简单的,实际上可能还会遇到一些内容不会输出到网页之类的情况,这个时候就需要用到盲注等内容。重点要熟悉
information_schema
数据库下的几个表和列,然后会用order by
, union
, limit
, concat
等基础sql语句的使用】
网友评论