当前位置 主页 > 社会公益 >

[求助] 关于Dz3.2 memcache+ssrf GETSHELL漏洞补丁的语法错误问

  

现在大家普遍流传的修复办法是, 找到补丁文件/source/function/function_core.php

找到这一段代码
$content = preg_replace($_G['setting']['output']['preg']['search'], $_G['setting']['output']['preg']['replace'], $content);
在其上方加入
if (preg_match("(/|#|\+|%).*(/|#|\+|%)e", $_G['setting']['output']['preg']['search']) !== FALSE) { die("request error"); }

但是权威版主monkeye却说这段加入的代码有语法错误
那么请问一下各位大神, 正确的修复代码应该是怎样的?

另外, 由于二次开发过的网站不适合直接覆盖最新版的0601补丁文件, 所以只能通过修改部分代码的方式来打这个补丁了, 还望各位大神指教!