首页 > 网站 > 建站经验 > 正文

Dedecms安全:如何预防投票模块漏洞的SQL注入

2024-04-25 20:32:56
字体:
来源:转载
供稿:网友

Dedecms是一款现使用人数比较多的开源程序之一,它的功能强大,而且利于SEO优化,很受大家的喜爱。

A5源码下载站用的就是这款程序。但这款程序伴随着一定的风险,那就是安全性很差,今天A5源码下载站编就给大家讲解一下如何防范织梦系统投票模块防止SQL的注入,让站长朋友们都解决一下后顾之忧。

这里主要是将核心文件中的addslashes()改为mysql_real_escape_string()即可。

接下来就看操作步骤吧!

首先,你要找到需要修改的文件dedevote.class.php,它在根目录下的include文件夹内,把该文件下载到本地后打开编辑,查找到代码:

$this->dsql->ExecuteNoneQuery("UPDATE `dede_vote` SET totalcount='".($this->VoteInfos['totalcount']+1)."',votenote='".addslashes($items)."' WHERE aid='".$this->VoteID."'");

并修改为:

$this->dsql->ExecuteNoneQuery("UPDATE `dede_vote` SET totalcount='".($this->VoteInfos['totalcount']+1)."',votenote='".mysql_real_escape_string($items)."' WHERE aid='".mysql_real_escape_string($this->VoteID)."'");

即可,这里修改完以后,保存一下,上传到原文件夹内,即可消除此隐患;如果你是开发者还可以了解到一些会用到的函数,如下:

mysql_real_escape_string() 会判断字符集,但是对PHP版本有要求;(PHP 4 >= 4.0.3, PHP 5)

mysql_escape_string不考虑连接的当前字符集。(PHP 4 >= 4.0.3, PHP 5, 注意:在PHP5.3中已经弃用这种方法,不推荐使用)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表