织梦dedecms留言板注入漏洞edit.inc.php修复方法
作者:达特 日期:2023-04-14 分类:CMS教程
/plus/guestbook/edit.inc.php 这个是一个dedecms留言板注入漏洞,因为没有对$msg过滤,导致可以任意注入,处理方案如下:
打开/plus/guestbook/edit.inc.php,搜索代码:
else if($job=='editok')
修改为:
打开/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(); }