dedecms SESSION变量覆盖导致SQL注入common.inc.php的解决

2020-07-07,,

dedecms SESSION变量覆盖导致SQL注入common.inc.php的解决方法:

 

补丁文件:/include/common.inc.php

 

漏洞描述:dedecms的/plus/advancedsearch.php中,直接从SESSION[SESSION[sqlhash]获取值作为$query带入SQL查询,这个漏洞的利用前提是session.auto_start = 1即开始了自动SESSION会话,云盾团队在dedemcs的变量注册入口进行了通用统一防御,禁止SESSION变量的传入

 

dedecms SESSION变量覆盖导致SQL注入common.inc.php的解决方法

 

1、搜索如下代码(68行):

 

if( strlen($svar)>0 && preg_match('#^(cfg_|GLOBALS|_GET|_POST|_COOKIE)#',$svar) )

 

2、替换 68 行代码,替换代码如下:

 

if( strlen($svar)>0 && preg_match('#^(cfg_|GLOBALS|_GET|_POST|_COOKIE|_SESSION)#',$svar) )

 

修改前请备份好文件,将新的/include/common.inc.php 文件上传替换阿里云服务器上的即可解决此问题。

《dedecms SESSION变量覆盖导致SQL注入common.inc.php的解决.doc》

下载本文的Word格式文档,以方便收藏与打印。