wolfcms

wolfcms安装:

1.将wolfcms下载后放到www目录下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-u3x40Gli-1584242756029)(F:\图片\素材\wolfcms2.png)]

2.再浏览器中输入wolf文件路径,访问该文件

3.点击 Continue to install,进行下一步

输入数据库用户名和密码,点击下一步。

4.进行登录。用户名和密码如下。登录后自己修改密码。

5.登录成功如下

#7

若输入4中的用户名和密码后未显示登录成功页面,未提示密码错误,没有反应。

可以将和wolf在同一目录下的_.htaccess改名为.htaccess.

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HQgERP6v-1584242756030)(F:\图片\素材\wolfcms.png)]

wolf漏洞复现:

1.登录后直接上传文件

2.上传一句话木马

也可以直接编辑修改

3.连接

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-21pP1Jj1-1584242756031)(F:\图片\素材\wolfcms5.png)]

原因:

    public function upload() {
        if (!AuthUser::hasPermission('file_manager_upload')) {
            Flash::set('error', __('You do not have sufficient permissions to upload a file.'));
            redirect(get_url('plugin/file_manager/browse/'));
        }
        
        // CSRF checks
        if (isset($_POST['csrf_token'])) {
            $csrf_token = $_POST['csrf_token'];
            if (!SecureToken::validateToken($csrf_token, BASE_URL.'plugin/file_manager/upload')) {
                Flash::set('error', __('Invalid CSRF token found!'));
                redirect(get_url('plugin/file_manager/browse/'));
            }
        }
        else {
            Flash::set('error', __('No CSRF token found!'));
            redirect(get_url('plugin/file_manager/browse/'));
        }
        
        $mask = Plugin::getSetting('umask', 'file_manager');
        umask(octdec($mask));

        $data = $_POST['upload'];
        $path = str_replace('..', '', $data['path']);//将..替换为空格,可以防止一些win系统解析漏洞绕过
        $overwrite = isset($data['overwrite']) ? true : false;

        // Clean filenames
        $filename = preg_replace('/ /', '_', $_FILES['upload_file']['name']);//将'/'替换为'_'
        $filename = preg_replace('/[^a-z0-9_\-\.]/i', '', $filename);//只保留小写字母,数字,下划线,'-', '.' 

        if (isset($_FILES)) {
            $file = $this->_upload_file($filename, FILES_DIR . '/' . $path . '/', $_FILES['upload_file']['tmp_name'], $overwrite);

            if ($file === false)
                Flash::set('error', __('File has not been uploaded!'));
        }
        redirect(get_url('plugin/file_manager/browse/' . $path));
    }

对上传文件检查不够严格造成漏洞。

redirect(get_url(‘plugin/file_manager/browse/’ . $path));
}


对上传文件检查不够严格造成漏洞。

对上传的文件要进行类型验证,二次渲染,重命名等检查。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晨灰ash2

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值