二阶sql注入
提示说需要admin用户登录才可以看到key,用户admin使用密码登录语句为
select * from user where name='admin' and pass='12345'
创建一个用户admin' #,密码为12345,登录语句
select * from user where name = 'admin' # ' and pass='12345'
由于注释符,后面的' and pass='12345'将被注释掉
sql语句变成select * from user where name = 'admin' 所以在这里只验证用户名为admin就可以登录

上传一张图片,查看图片存放路径:注意jpg后缀不能被解析

存放在根目录下面

用bp,测试会过滤那些字符,发现eval/assert都会被过滤


用prep_replace函数

上传成功,菜刀连接,key在www下

文件包含这一题很奇妙
直接用菜刀连接,配置密码为Hello就可以了

命令执行题
先查看当前目录

查看当前目录的文件

查看上一层目录的文件

看到key.php,cat一下

显示命令包含敏感字符,测试哪一个是敏感字符,经过测试发现cat为敏感字符被过滤了,想办法绕过