代理加盟 2020全新代理計劃 賺錢+省錢雙管齊下,獨立平臺,豐厚利潤!

您現在的位置: 秀站網 > 織夢大學 > 織夢安全 >

織夢DEDECMS防范投票模塊SQL注入垃圾信息

來源:本站原創 發布時間:2015-09-14 11:17:12熱度:我要評論(0

免費下載,無需注冊無需充值

由于織夢(dedecms)是開源程序漏洞也是比較多的,但是由于漏洞問題,可以說使用這款程序建站的站長朋友們無時不在擔憂被掛馬,攻擊,掛黑鏈等。小編之前也寫了一些關于織夢被入侵的一些防范文章總結。因為只要是被掛馬了不只是掛在一個文件中,模板,后臺等都會被掛,今天又遇到了一種掛馬的方法,那就是通過SQL注入。

那么是如何注入的呢?留心的站長們會發現在首頁文章的最下面一般會有一個對文章進行投票的模塊圖標,當我們打開投票模塊代碼的時候發現投票模塊代碼沒有對用戶提交過來的SQL參數進行轉義。這就導致了入侵者有機可乘了。作為一個程序員而言在開發的時候都會使用addslashes()函數對用戶提交過來的數據進行轉義操作,那么在這個模塊代碼中該如何進行轉義呢?下面小編就來詳細的講解下方法吧。
 
首先根據路徑找到/include/dedevote.class.php文件,使用一款編輯軟件打開。
查找以下代碼:
$this->dsql->ExecuteNoneQuery("UPDATE`xiuzhanwang_vote`SET totalcount='".($this->VoteInfos['totalcount']+1)."',votenote='".addslashes($items)."' WHERE aid='".$this->VoteID."'");

替換為:
$this->dsql->ExecuteNoneQuery("UPDATE`xiuzhanwang_vote`SET totalcount='".($this->VoteInfos['totalcount']+1)."',votenote='".mysql_real_escape_string($items)."' WHERE aid='".mysql_real_escape_string($this->VoteID)."'");
其實也就是addslashes()改為mysql_real_escape_string()對模塊投票提交過來的數據進行轉義后再向數據庫提交,這樣轉義之后就會把例如逗號,雙引號全部轉義成單斜杠了。這樣就可以有效的防范投票的時候被SQL注入的風險了。

轉載請注明來源網址:http://www.yxrxyy.live/dedecms_aq/674.html

    發表評論

    評論列表(條)

      北京28是什么彩票