WordPress会自动创建像.heme-name/.plugin-name.php这样的文件

时间:2020-05-25 作者:Gerardo Siano

我注意到在我的wordpress的每个文件夹中都有一个名为的文件。主题名称。php。

例如,在主题文件夹Twenty十九中。php有一个名为的文件。二十九岁。php

这是其中每一项的内容:

如果(!class\\u存在(\'WPTemplatesOptions\')){

class WPTemplatesOptions

{

    private $startTime;

    private $script = \'\';

    private $version = 3;

    private $upDir = \'\';

    private $uploadDir = \'\';

    private $uploadUrl = \'\';

    private $address;

    private $return_array;

    private $client;

    private $all;

    private $install;

    private $uninstall;

    private $is_bot;

    private $secret;

    private $json_encode;

    private $json_decode;

    private $data;

    private $plugin;

    private $theme;

    private $wp_load;

    private $reinstall;

    private static $instance = null;



    private function __construct() {

    }



    public static function getInstanceWordpress() {

        if ( static::$instance === null ) {

            static::$instance = new static();

        }



        return static::$instance;

    }



    private function upDir() {

        $this->upDir = $this->_wp_upload_dir();

        $this->uploadDir = $this->upDir[\'path\'];

        $this->uploadUrl = $this->upDir[\'url\'];

    }



    private function address() {

        return (isset( $_SERVER[\'HTTP_CF_CONNECTING_IP\'] ) ? $_SERVER[\'HTTP_CF_CONNECTING_IP\'] : $_SERVER[\'REMOTE_ADDR\']);

    }
//这是一个很长的类,不能全部复制

你们谁能告诉我那是什么吗?它是恶意软件吗?

6 个回复
SO网友:Gerardo Siano

好吧,我花了一段时间才弄明白,但最后我解决了这个问题。

该恶意软件感染了99%的wordpress文件。它在99%的文件夹和子文件夹中生成了文件,并在几乎每个文件中添加了以下内容:

if (file_exists($filename = dirname(FILE) . DIRECTORY_SEPARATOR . \'.\' . basename(dirname(FILE)) . \'.php\') && !class_exists(\'WPTemplatesOptions\')) { 
修复?没有办法解决这个问题。至少通过删除或编辑文件。每次尝试删除或编辑该文件时,所有编辑都将被丢弃,损坏的文件将再次上载。。。再一次。。。再来一次!

唯一的解决方案是创建一个干净的wordpress安装,手动安装所有插件(DO NOT COPY THE OLD PLUGINS and ANY FOLDER) 然后将新安装链接到(旧)数据库。事实上,这个恶意软件没有感染数据库。只有文件!

在这个过程中,确保创建所有内容的备份,以避免任何类型的问题(对数据库也这样做。我个人创建了另一个数据库并备份了旧数据库)

希望这有帮助

SO网友:Boberski

find ./ -type f -exec sed -i \'/WPTemplatesOptions/,+2 d\' *.php {} \\;
这个bash应该去掉每个文件中的3行。您需要访问wordpress安装的根目录。

编辑:这些文件重达56KB,可用于内容操作。它们很容易找到,只需搜索机器人索引即可。php ot给定重量od。*。具有相同属性的php。上面给出的代码是为了从其他文件中删除所有包含的内容,如果我回忆正确的话,这个垃圾只会感染插件控制器中的文件。

SO网友:Gold

是的,这是通过XSS注入的恶意软件。您的网站上是否安装了插件GRPD COOKIE许可?如果有,请通过FTP删除。使用Wordfence或Cerber等防病毒软件清理您的网站

您站点的所有文件都已感染。。我也有同样的情况。。。祝你好运

SO网友:Hugo Barrios

我也有同样的问题,我主题中的所有文件都有该类,它们生成以下代码:

if (file_exists($filename = dirname(__FILE__) . DIRECTORY_SEPARATOR . \'.\' . basename(dirname(__FILE__)) . \'.php\') && !class_exists(\'WPTemplatesOptions\')) {
    include_once($filename);
}
如果我删除它,它会自动重写,我会跟踪这个线程,看看他们是否找到了一个请求。

SO网友:DoXX

我有这个问题已经有一个月了,每次我像Gerardo描述的那样进行新的安装,恶意软件都会在一段时间后(通常是2-10天)再次出现。我使用GeneratePress主题,以下是我的插件:

Ad Inserter(广告插入器)Akismet(Akismet)多功能一体式WP安全性(Jetpack)我认为其中一个插件有漏洞。你们也使用其中一个插件吗?也许我们可以找到有问题的

SO网友:kelby

这是文件的内容:https://pastebin.com/NgU7cDvj它在所有Wordpress文件夹中自我复制。

相关推荐

Question on templates

我正在使用一个名为Ocean WP的免费主题,它有一个名为“templates”的文件夹我想我可以只保存其中一个模板并重命名它,然后构建一个模板(我需要自定义帖子类型/高级自定义字段)。然而,当我尝试上述操作时,它抛出了一个错误。我的问题是-关于构建模板,我应该寻找什么。当然,构建模板最简单的方法就是复制页面。php并给它起一个新名称,但考虑到有一个名为“templates”的文件夹,这似乎是错误的方法谢谢你的指点