简介

WBCE CMS v1.5.2 /language/install.php 文件存在漏洞,攻击者可精心构造文件上传造成RCE。

本人使用春秋云境免费靶场在线搭建。

详解

  1. 打开首页什么也没有,地址后面加/admin路径跳转到后台登录页面。

2023-06-23T13:27:05.png

  1. 简单尝试两个用户密码,发现是admin:123456。成功进入到后台后,找提示的路径/language/install.php

2023-06-23T13:30:13.png

  1. 从官网搜索到了这个语言文件具体是什么。

语言文件是一个php文件,里面也是php代码。放在安装包里的languages目录,安装是需要将后缀名改成txt即可。
官网相关链接:https://help.wbce-cms.org/pages/the-backend/add-ons/languages.php

  1. github上阅读install.php源码。

github链接:https://github.com/WBCE/WBCE_CMS/blob/1.5.2/wbce/admin/languages/install.php
问了一下chatgpt解释源码:
2023-06-23T14:05:59.png
判断了语言文件内容是否是php代码,然后执行了代码。
2023-06-23T14:07:20.png

  1. 会执行上传文件的代码,产生了命令注入漏洞,构造payload。
<?php
echo system('cat /flag');
  1. 成功获取flag,但是输出两次,应该不需要echo,直接system('cat /flag')

2023-06-23T14:24:10.png