2025年是DedeCMS漏洞高发的一个年份,由于该系统在国内拥有极高的市场占有率,且大量网站未及时更新,使其成为了黑客攻击的主要目标,这些漏洞主要集中在权限绕过、命令执行、SQL注入等方面。

(图片来源网络,侵删)
以下是2025年及前后几个非常著名和影响深远的DedeCMS漏洞分析:
后台登录处远程代码执行漏洞 (CNVD-2025-08904 / CVE-2025-9837)
这是2025年最著名、影响最广泛的DedeCMS漏洞,堪称“核弹级”漏洞。
- 漏洞等级: 严重 (Critical)
- 影响版本: DedeCMS 5.x, 5.7系列 (包括最新版的5.7 SP2)
- 漏洞描述: 在后台登录页面,攻击者可以通过精心构造的请求包,直接将恶意代码写入服务器上的指定文件(通常是
config_cache.php),从而实现远程代码执行。 - 漏洞原理:
- 攻击者向后台登录接口
/dede/login.php发送一个特殊的POST请求。 - 请求中包含了用户名(任意填写,如
admin)和经过Base64编码的密码。 - 密码字段被巧妙地构造,使得在服务器端进行解码和验证的过程中,会触发一个文件写入操作。
- 恶意代码被写入到
data/common.inc.php文件中(或config_cache.php,不同版本略有差异),这个文件在网站每次被访问时都会被包含执行。
- 攻击者向后台登录接口
- 危害: 攻击者无需知道正确的后台密码,即可直接获取网站服务器的Webshell(网站后门),从而可以控制整个网站,进行窃取数据、篡改页面、植入木马、上传后门等任何操作。
- 利用方式: 当时网上流传了大量公开的EXP(利用脚本),攻击者只需一个浏览器或简单工具即可利用此漏洞大规模入侵网站。
- 修复方案:
- 官方补丁: 立即下载并升级到DedeCMS官方发布的最新安全版本。
- 临时修复: 如果无法立即升级,可以临时修改
login.php文件,增加对输入参数的严格校验,或者直接将后台登录页面暂时关闭。
后台编辑器远程代码执行漏洞
这个漏洞同样非常危险,是另一个主要的入侵途径。
- 漏洞等级: 高危 (High)
- 影响版本: DedeCMS 5.x, 5.7系列
- 漏洞描述: 攻击者获取到后台管理员的账号密码后(例如通过弱密码、社工或其他漏洞),可以利用后台的编辑器(如默认的
dede/editor)上传包含恶意PHP代码的图片文件。 - 漏洞原理:
- DedeCMS的编辑器在上传文件时,如果开启了“允许上传图片”功能,并且对文件类型和内容检查不严格。
- 攻击者可以将一段PHP代码(例如一句话木马
<?php @eval($_POST['cmd']); ?>)伪装成图片文件(例如shell.jpg),并使用文件流的方式上传。 - 服务器端可能存在解析漏洞(如Apache解析
.jpg文件时,如果文件内包含<?php代码,可能会被当作PHP执行),或者DedeCMS本身在处理上传文件时存在缺陷,导致恶意代码被执行。
- 危害: 成功利用后,攻击者可以在服务器上执行任意命令,获取Webshell。
- 修复方案:
- 官方补丁: 升级到最新安全版本,官方修复了文件上传和解析逻辑。
- 配置修改:
- 严格限制后台编辑器的上传文件类型,只允许上传必要的、安全的文件(如
.jpg,.png,.gif)。 - 修改服务器配置(如Apache),避免解析漏洞(确保
.htaccess文件正确配置,禁止执行上传目录下的PHP文件)。 - 定期检查
uploads等上传目录,发现可疑文件及时删除。
- 严格限制后台编辑器的上传文件类型,只允许上传必要的、安全的文件(如
plus目录下的多个SQL注入漏洞
DedeCMS的plus(附加功能)目录中包含了大量独立的功能模块,这些模块的安全性参差不齐,历史上爆出过非常多的SQL注入漏洞。
- 漏洞等级: 中高危 (Medium/High)
- 影响版本: 多个版本均有涉及,特别是早期版本。
- 漏洞描述: 在
plus/目录下的某些文件中,由于对用户输入的参数(如ID,classid等)没有进行严格的过滤和转义,导致攻击者可以构造恶意的SQL语句,从而进行SQL注入攻击。 - 典型漏洞文件举例:
plus/count.php: 用于统计文章点击数,存在注入。plus/advancedsearch.php: 高级搜索功能,存在注入。/member/目录下的某些功能页面。
- 漏洞原理: 在
count.php中,mid和cid参数直接拼接到SQL查询语句中,而没有使用预编译语句或进行转义。// 伪代码示例 $mid = $_GET['mid']; $cid = $_GET['cid']; $query = "UPDATE dede_archives SET click=click+1 WHERE mid=$mid AND aid=$cid"; // 攻击者可以构造 mid=1 AND SLEEP(5) 这样的URL来注入
- 危害:
- 猜解管理员账号密码。
- 获取网站数据库中的敏感信息(如用户数据、文章内容、配置信息)。
- 写入Webshell到数据库,再通过其他方式包含执行。
- 修复方案:
- 官方补丁: 升级到最新版本,官方修复了已知的SQL注入点。
- 代码审计: 对
plus/目录下的文件进行代码审计,使用mysqli_real_escape_string()等函数对所有用户输入进行转义,或者采用PDO等预编译语句来处理数据库操作。
后台“文件管理器”任意文件操作漏洞
这个漏洞主要影响使用旧版DedeCMS的用户,但在2025年仍有大量未升级的网站存在。
- 漏洞等级: 高危 (High)
- 影响版本: DedeCMS 5.6及更早版本
- 漏洞描述: 在后台的“文件管理器”中,攻击者可以通过修改
path参数,实现对服务器上任意文件的读取、编辑、下载和删除操作,而不仅仅局限于网站目录。 - 漏洞原理: 后台文件管理器的权限校验存在缺陷,
path参数可以被恶意修改为服务器的绝对路径(如C:/windows/system32/drivers/etc/hosts或/etc/passwd),从而绕过预设的目录限制。 - 危害: 攻击者可以读取服务器上的敏感配置文件(如数据库配置文件
data/common.inc.php),下载网站源代码,甚至修改服务器上的关键系统文件,导致整个服务器沦陷。 - 修复方案:
- 官方补丁: 升级到DedeCMS 5.7及更高版本,官方修复了此漏洞。
- 权限控制: 如果无法升级,应严格限制后台管理员的权限,或直接禁用后台的文件管理器功能。
总结与安全建议
2025年DedeCMS漏洞的核心特点:
- 影响范围广: 由于市场份额巨大,漏洞一旦公开,会造成大规模的网站被入侵事件。
- 利用门槛低: 许多漏洞都有公开的EXP,攻击者无需高深的黑客技术即可发起攻击。
- 危害巨大: 从SQL注入到远程代码执行,攻击链条完整,可以直接控制服务器。
给使用DedeCMS的网站管理员的安全建议:
- 及时更新: 这是最重要的一点! 务必关注DedeCMS官方的安全公告,并第一时间升级到最新稳定版本,官方的修复补丁通常是最有效的解决方案。
- 修改默认信息: 安装后立即修改后台默认路径(如
dede)、管理员用户名和密码,使用高强度且唯一的密码。 - 最小化权限: 网站程序运行的用户(如
www-data,apache)权限应尽可能低,避免其拥有对系统关键目录的写入权限。 - 定期备份: 定期备份网站程序和数据库,并将备份文件保存在安全的地方,以便在网站被入侵后能快速恢复。
- 安全加固:
- 关闭或删除不必要的后台功能模块。
- 修改
robots.txt文件,禁止搜索引擎抓取后台目录(如Disallow: /dede/)。 - 安装Web应用防火墙(WAF),可以有效拦截已知的攻击特征。
- 定期检查: 定期检查网站文件,特别是
data、uploads等目录,查看是否有可疑的文件被创建。
DedeCMS 2025年的漏洞给整个行业敲响了警钟,对于任何使用开源CMS的系统来说,持续的关注、及时的更新和良好的安全习惯都是必不可少的。
