Heim  >  Artikel  >  Backend-Entwicklung  >  ecshop修饰符preg_replace/e不安全的几处改动

ecshop修饰符preg_replace/e不安全的几处改动

WBOY
WBOYOriginal
2016-08-08 09:20:30767Durchsuche
主要集中在 upload/includes/cls_template.php 文件中:  1:line 300 :  原语句:  return preg_replace("/{([^\}\{\n]*)}/e", "\$this->select('\\1');", $source);  修改为:  return preg_replace_callback("/{([^\}\{\n]*)}/", function($r) { return $this->select($r[1]); }, $source);  2:line 495:   原语句:  $out = "  修改为:  $replacement = preg_replace_callback("/(\'\\$[^,]+)/" ,                                                function($matcher){                                return stripslashes(trim($matcher[1],'\''));                            },                     var_export($t, true));                       $out = "  3:line 554: //zuimoban.com  转载不带网址,木JJ   原语句:   $val = preg_replace("/\[([^\[\]]*)\]/eis", "'.'.str_replace('$','\$','\\1')", $val);    修改为:    $val = preg_replace_callback("/\[([^\[\]]*)\]/is",                     function ($matcher) {                        return '.'.str_replace('$','\$',$matcher[1]);                    },         $val);  4:line 1071:    原语句:    $replacement = "'{include file='.strtolower('\\1'). '}'";    $source      = preg_replace($pattern, $replacement, $source);     修改为:    $source      = preg_replace_callback($pattern,                    function ($matcher) {                        return '{include file=' . strtolower($matcher[1]). '}';                     },

                    $source);

原文地址:http://www.moke8.com/article-10688-1.html

以上就介绍了ecshop修饰符preg_replace/e不安全的几处改动,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Nginx防盗链的3种方法Nächster Artikel:PHPMailer邮件发送