织梦dedecms留言板注入漏洞edit.inc.php修复方法


/plus/guestbook/edit.inc.php  这个是一个dedecms留言板注入漏洞,因为没有对$msg过滤,导致可以任意注入,处理方案如下:

打开/plus/guestbook/edit.inc.php,搜索代码:

else if($job==’editok’)

修改为:

else if($job=='editok') { $remsg = trim($remsg); /* 验证$g_isadmin */ if($remsg!='')  { //管理员回复不过滤HTML if($g_isadmin) { $msg = "<div class=\\'rebox\\'>".$msg."</div>\n".$remsg;  //$remsg <br><font color=red>管理员回复:</font> } else { $row = $dsql->GetOne("SELECT msg From `a15_guestbook` WHERE id='$id' ");  $oldmsg = "<div class=\\'rebox\\'>".addslashes($row['msg'])."</div>\n";  $remsg = trimMsg(cn_substrR($remsg, 1024), 1); $msg = $oldmsg.$remsg; } } /* */ /* 对$msg进行有效过滤 */ $msg = addslashes($msg); /* */ $dsql->ExecuteNoneQuery("UPDATE `a15_guestbook` SET `msg`='$msg', `posttime`='".time()."' WHERE id='$id' ");  ShowMsg("成功更改或回复一条留言!", $GUEST_BOOK_POS); exit(); }