云主机测评网云主机测评网云主机测评网

云主机测评网
www.yunzhuji.net

如何全面修复织梦dedecms中的任意文件上传和注入漏洞?

织梦dedecms漏洞修复大全包括任意文件上传漏洞与注入漏洞的修复方法。

任意文件上传漏洞修复方法

1、/include/dialog/select_soft_post.php

原始代码$fullfilename = $cfg_basedir.$activepath.'/'.$filename;

修复代码

“`php

if (preg_match(‘#.(php|pl|cgi|asp|aspx|jsp|php5|php4|php3|shtm|shtml)[^azAZ09]+$#i’, trim($filename))) {

ShowMsg("你指定的文件名被系统禁止!", ‘javascript:;’);

exit();

}

$fullfilename = $cfg_basedir.$activepath.’/’.$filename;;

“`

2、后台文件任意上传漏洞

原始代码$fullfilename = $cfg_basedir.$filename;

修复代码

“`php

if (preg_match(‘#.(php|pl|cgi|asp|aspx|jsp|php5|php4|php3|shtm|shtml)[^azAZ09]+$#i’, trim($filename))) {

ShowMsg("你指定的文件名被系统禁止!", ‘javascript:;’);

exit();

}

$fullfilename = $cfg_basedir.$filename;

“`

3、/include/uploadsafe.inc.php

第一个地方

原始代码${$_key.'_size'} = @filesize($$_key);

修复代码

“`php

${$_key.’_size’} = @filesize($$_key);

$imtypes = array("image/pjpeg", "image/jpeg", "image/gif", "image/png", "image/xpng", "image/wbmp", "image/bmp");

if(in_array(strtolower(trim(${$_key.’_type’})), $imtypes)) {

$image_dd = @getimagesize($$_key);

if($image_dd == false){ continue; }

if (!is_array($image_dd)) { exit(‘Upload filetype not allow !’); }

}

“`

第二个地方

原始代码$image_dd = @getimagesize($$_key);

修复代码

“`php

$image_dd = @getimagesize($$_key);

if($image_dd == false){ continue; }

“`

SQL注入漏洞修复方法

1、/include/filter.inc.php

原始代码return $svar;

修复代码

“`php

return addslashes($svar);

“`

2、/member/mtypes.php

原始代码$query = "UPDATEdede_mtypes SET mtypename='$name' WHERE mtypeid='$id' AND mid='$cfg_ml>M_ID';"

修复代码

“`php

$id = intval($id);

$query = "UPDATEdede_mtypes SET mtypename=’$name’ WHERE mtypeid=’$id’ AND mid=’$cfg_ml>M_ID’;";

“`

3、/member/pm.php

原始代码$row = $dsql>GetOne("SELECT * FROMdede_member_pms WHERE id='$id' AND (fromid='{$cfg_ml>M_ID}' OR toid='{$cfg_ml>M_ID}');");

修复代码

“`php

$id = intval($id);

$row = $dsql>GetOne("SELECT * FROMdede_member_pms WHERE id=’$id’ AND (fromid='{$cfg_ml>M_ID}’ OR toid='{$cfg_ml>M_ID}’);");

“`

4、/plus/guestbook/edit.inc.php

原始代码$dsql>ExecuteNoneQuery("UPDATEdede_guestbook SETmsg='$msg',posttime='".time()."' WHERE id='$id';");

修复代码

“`php

$msg = addslashes($msg);

$dsql>ExecuteNoneQuery("UPDATEdede_guestbook SETmsg=’$msg’,posttime=’".time()."’ WHERE id=’$id’;");

“`

5、/plus/search.php

原始代码$keyword = addslashes(cn_substr($keyword,30));

修复代码

“`php

$typeid = intval($typeid);

$keyword = addslashes(cn_substr($keyword,30));

“`

常见问题解答(FAQs)

1、问题一:为什么需要对织梦dedecms进行漏洞修复?

回答:织梦dedecms是一个广泛使用的开源内容管理系统,由于其用户基数大,容易成为黑客攻击的目标,通过修复已知的漏洞,可以有效提高系统的安全性,防止恶意攻击和数据泄露。

2、问题二:在修复过程中需要注意哪些事项?

回答:在修复过程中,首先需要备份原始文件,以防修复失败时能够恢复,确保替换或添加的代码完全正确,避免因小错误导致系统无法正常运行,建议在测试环境中先进行测试,确认无误后再应用到生产环境。

打赏
版权声明:主机测评不销售、不代购、不提供任何支持,仅分享信息/测评(有时效性),自行辨别,请遵纪守法文明上网。
文章名称:《如何全面修复织梦dedecms中的任意文件上传和注入漏洞?》
文章链接:https://www.yunzhuji.net/internet/225714.html

评论

  • 验证码