• [2012-4-10]ThinkPHP框架被爆任意代码执行漏洞(preg_replace)


    昨日(2012.04.09)ThinkPHP框架被爆出了一个php代码任意执行漏洞,黑客只需提交一段特殊的URL就可以在网站上执行恶意代码。

    ThinkPHP作为国内使用比较广泛的老牌PHP MVC框架,有不少创业公司或者项目都用了这个框架。不过大多数开发者和使用者并没有注意到本次漏洞的危害性,提醒:此漏洞是一个非常严重的问题,只要使用了thinkphp框架,就可以直接执行任意php代码,使用thinkphp框架的各位站长赶快对自己的网站进检测,并修复。

    修复方法:

    1、下载官方发布的补丁:

    http://code.google.com/p/thinkphp/source/detail?spec=svn2904&r=2838

    2、或者直接修改源码:

    /trunk/ThinkPHP/Lib/Core/Dispatcher.class.php

    $res = preg_replace('@(w+)'.$depr.'([^'.$depr.'/]+)@e', '$var['1']="2";', implode($depr,$paths));

    修改为

    $res = preg_replace('@(w+)'.$depr.'([^'.$depr.'/]+)@e', '$var['1']='2';', implode($depr,$paths));

    将 preg_replace第二个参数中的双引号改为单引号,防止其中的php变量语法被解析执行。

  • 相关阅读:
    0802作业1替换文本文件内容

    看病
    爬山
    作业1
    超市(未完成)
    图片复制
    替换
    文件
    英文字母和中文汉字在不同字符集编码下的字节数
  • 原文地址:https://www.cnblogs.com/52php/p/5665428.html
Copyright © 2020-2023  润新知