某decms v5.7 sp2 后台 getshell
字数 776 2025-08-29 08:32:00
Dedecms V5.7 SP2 后台Getshell漏洞分析与利用
漏洞概述
本漏洞存在于Dedecms V5.7 SP2版本中,允许后台管理员通过模板管理功能将恶意代码写入网站首页(index.php),实现getshell。
受影响版本
- Dedecms V5.7 SP2 (UTF-8版本)
漏洞利用步骤
1. 准备工作
- 获取后台管理员权限
- 下载受影响版本:DedeCMS-V5.7-UTF8-SP2.tar.gz
2. 漏洞利用过程
-
登录后台:使用管理员账号登录Dedecms后台
-
创建恶意模板:
- 进入"模板" → "默认模板管理"
- 创建一个新的HTML模板文件
- 在模板内容中插入一句话Webshell,例如:
<?php @eval($_POST['cmd']);?>
-
生成主页HTML:
- 进入"生成" → "更新主页HTML"
- 执行更新操作,系统会将包含恶意代码的模板内容写入index.php
-
连接Webshell:
- 使用中国菜刀等Webshell管理工具连接写入的恶意代码
- 连接地址:
http://目标网站/index.php - 使用预设的密码(如上面例子中的'cmd')进行连接
漏洞分析
漏洞文件
/dede/makhtml_homepage.php
漏洞原理
- 系统允许管理员通过后台编辑模板文件
- 在生成主页HTML时,系统未对模板内容进行充分过滤
- 恶意模板内容被直接写入网站根目录的index.php文件
- 由于index.php通常具有可执行权限,导致任意代码执行
关键代码
(根据描述推测,实际代码可能类似以下流程)
// 从模板读取内容
$templateContent = file_get_contents($templateFile);
// 直接写入index.php,无充分过滤
file_put_contents($indexPath, $templateContent);
漏洞修复
临时解决方案
- 限制后台管理员权限
- 监控index.php文件的修改
- 对模板内容进行严格过滤
官方修复
等待官方发布补丁更新
注意事项
- 此漏洞需要后台管理员权限才能利用
- 利用此漏洞会直接修改网站首页文件,容易被发现
- 仅供安全研究使用,切勿用于非法用途