• <progress id="eh9m6"></progress><dd id="eh9m6"></dd><dd id="eh9m6"><center id="eh9m6"></center></dd>

      <em id="eh9m6"><acronym id="eh9m6"><u id="eh9m6"></u></acronym></em>

      <th id="eh9m6"></th>

        <acronym id="eh9m6"></acronym>
        合肥市高新區長江西路與科學大道交口5F創業園A座309
        136 5560 1775

        網站首頁被篡改 Thinkphp5.0.0~5.0.23遠程代碼執行漏洞修復

        發表日期:2019-08-12 瀏覽次數:65535次

        最近發現多個Thinkphp5開發的網站被掛馬,導致首頁被篡改,其他頁面無法正常訪問的情況。

        木馬中均包含以下代碼:define('Viv, bebegim.','Denzel-你的英雄');

        經過檢查,這些攻擊是利用了Thinkphp5.0.0~5.0.23版本遠程進行代碼調用的漏洞進行的getshell。
        Thinkphp5官方已經發布了安全更新版本:ThinkPHP5.0.24版本發布——安全更新
        你可以將版本更新到5.0.24版本及以上。

        如果不方便更新到最新版本,那么可以按照最新版本的Request類的method方法進行手動修復,具體如下:

        1.打開/thinkphp/library/think/Request.php文件,找到method方法(約500行),修改下面代碼:
        $this->method = strtoupper($_POST[Config::get('var_method')]);
        $this->{$this->method}($_POST);

        改為:

        $method = strtoupper($_POST[Config::get('var_method')]);

        if (in_array($method, ['GET', 'POST', 'DELETE', 'PUT', 'PATCH'])) {
        $this->method = $method;
        $this->{$this->method}($_POST);
        } else {
        $this->method = 'POST';
        }
        unset($_POST[Config::get('var_method')]);

        2.再在 /thinkphp/library/think/App.php這里加上如下代碼,搜索“獲取控制器名”可以找到
        $controller = strip_tags($result[1] ?: $config['default_controller']);
        $controller = $convert ? strtolower($controller) : $controller;
        改成
        $controller = strip_tags($result[1] ?: $config['default_controller']);
        if (!preg_match('/^[A-Za-z](\w|\.)*$/', $controller)) {
        throw new HttpException(404, 'controller not exists:' . $controller);
        }
        $controller = $convert ? strtolower($controller) : $controller;

        將文章分享到:

        版權所有:啟邁科技-合肥網站建設 皖ICP備19009304號-1 皖公網安備 34010402702162號

        網站建設,網站設計公司啟邁科技,為眾多企業提供網站建設,網站制作,響應式網站設計,手機網站建設,微網站,模板建站,企業郵箱等一站式互聯網解決方案和建站服務10年。

        一本色道久久88精品综合