织梦cms:dedeCMS模版SQL注入漏洞和SQL注入漏洞的修复方法

  • A+
所属分类:DedeCms建站

今天,在检查阿里云服务器安全问题的时候,发现服务器上的织梦网站有2个漏洞提示,分别为:dedecms模版SQL注入漏洞;dedecms SQL注入漏洞。该漏洞都是来自织梦的/member/文件夹中的soft_add.php和album_add.php文件的不安全,导致SQL注入的发生。

dedeCMS模版SQL注入漏洞和SQL注入漏洞的修复方法-马找钱博客

阿里云的漏洞描述详细区域下方将有收到影响的文件以及服务器,可以使用阿里云建议的修复方案。

从阿里云提示的信息可知,阿里云云安全中心给出的修复方案为:

方案一:使用云盾自研补丁进行一键修复; 

方案二:更新该软件到官方最新版本或寻求该软件提供商的帮助。 

【注意:该补丁为云盾自研代码修复方案,云盾会根据您当前代码是否符合云盾自研的修复模式进行检测,如果您自行采取了底层/框架统一修复、或者使用了其他的修复方案,可能会导致您虽然已经修复了该漏洞,云盾依然报告存在漏洞,遇到该情况可选择忽略该漏洞提示】

如果不使用官方推荐的解决方案,或者没有购买安全修复功能服务,那你只能使用网上查找的修复方案,刚在网上查找到一个解决方案,解决方法也比较简单,在此,我便借助马找钱博客的平台将修复方法分享如下:

1、dedecms模版SQL注入漏洞

首选,我们先来看看dedecms模版SQL注入漏洞,如下图所示:

dedeCMS模版SQL注入漏洞和SQL注入漏洞的修复方法-马找钱博客

漏洞名称:

dedecms模版SQL注入漏洞

危险等级:

★★★★★(高危)

漏洞文件:

/member/soft_add.php

披露时间:

2016-07-28

漏洞描述:

dedecms的/member/soft_add.php中,对输入模板参数$servermsg1未进行严格过滤,导致攻击者可构造模版闭合标签,实现模版注入进行GETSHELL。

修复方法:

查找网站根目录下的member文件夹,并打开/member/soft_add.php文件,找到大概第155行的代码:

$urls .= "{dede:link islocal='1' text='{$servermsg1}'} $softurl1 {/dede:link}\r\n";

修改为:

if (preg_match("#}(.*?){/dede:link}{dede:#sim", $servermsg1) != 1) { $urls .= "{dede:link islocal='1' text='{$servermsg1}'} $softurl1 {/dede:link}\r\n"; }

如下图所示:

dedeCMS模版SQL注入漏洞和SQL注入漏洞的修复方法-马找钱博客

说明:

自行采取了底层/框架统一修复、或者使用了其他的修复方案,可能会导致您虽然已经修复了该漏洞,云盾依然报告存在漏洞,遇到该情况可选择忽略该漏洞提示。

2、dedecms SQL注入漏洞

然后,我们先来看看dedecms SQL注入漏洞,如下图所示:

dedeCMS模版SQL注入漏洞和SQL注入漏洞的修复方法-马找钱博客

漏洞名称:

dedecms SQL注入漏洞

危险等级:

★★★★★(高危)

漏洞文件:

/member/album_add.php

披露时间:

2016-07-26

漏洞描述:

dedecms的/dedecms/member/album_add.php文件中,对输入参数mtypesid未进行int整型转义,导致SQL注入的发生。

修复方法:

查找网站根目录下的member文件夹,并打开/member/album_add.php文件,找到大概第221行的代码:

//保存到主表

$inQuery = "INSERT INTO `ma_archives`(id,typeid,sortrank,flag,ismake,channel,arcrank,click,money,title,shorttitle,
color,writer,source,litpic,pubdate,senddate,mid,description,keywords,mtype)

修改为:

//保存到主表

$mtypesid = intval($mtypesid);

$inQuery = "INSERT INTO `ma_archives`(id,typeid,sortrank,flag,ismake,channel,arcrank,click,money,title,shorttitle,
color,writer,source,litpic,pubdate,senddate,mid,description,keywords,mtype)

简单来说,其实就是在“//保存到主表”下面一行新增一句:

$mtypesid = intval($mtypesid);

就可以了,如下图所示:

dedeCMS模版SQL注入漏洞和SQL注入漏洞的修复方法-马找钱博客

说明:

自行采取了底层/框架统一修复、或者使用了其他的修复方案,可能会导致您虽然已经修复了该漏洞,云盾依然报告存在漏洞,遇到该情况可选择忽略该漏洞提示。

马找钱博客点评:

提醒大家一点,作为一个非资深技术人员,在修改网站文件前请先做好文件备份,以免修改错误导致无法恢复,影响网站的正常使用。

再者就是网站出现了漏洞提示,一定要记得及时的修复,以免被不法之人利用挂马,导致网站被降权,到时就追悔莫及了!

  • 我的微信
  • 技术咨询
  • weinxin
  • 微信公众号
  • 营销技巧分享
  • weinxin
马找钱

发表评论

:?::razz::sad::evil::!::smile::oops::grin::eek::shock::???::cool::lol::mad::twisted::roll::wink::idea::arrow::neutral::cry::mrgreen: