2012-05-10 66 views
0

我們網站的一些用戶在訪問該網站時已經開始報告「特洛伊威脅」。聽到這個消息後,我搜索了惡意代碼,但無法找到它。僞裝成WordPress安裝的惡意軟件

我安裝了Sucuci SiteCheck插件,並報告瞭如下:

http://sitecheck.sucuri.net/scanner/?&scan=http://www.londonirishcentre.org

有沒有人有任何想法如何找到流浪的代碼?我知道一個新鮮的WP安裝將是最好的,但該網站有這麼多的定製工作,我寧願把它留給最後一個選項。

任何幫助將大規模讚賞。在整個代碼庫

+0

這也許應該被移動[網站管理員](http://webmasters.stackexchange.com/) – PenguinCoder

+2

找到感染的PHP文件之一,你看在頂部或底部有base_64編碼蜇逃避,這是一個共同的東西最近,因爲它似乎WordPress的某些方面是不安全的。用受感染的代碼更新您的問題。 –

+0

@ kelvin1986所以你有一個編碼的字符串在你的PHP文件的頂部或底部? –

回答

0

搜索:iframeevalbase64_decode

可能有很多感染地區,但其最有可能的模板文件夾或在index.php

如果你不能夠搜索並刪除從頭開始安裝新實例所需的所有區域。

+0

最有可能的base_64編碼,所以這個最可能不會工作。 –

+0

是的,這是可能的。我會添加另一個建議 – blang

+0

@blang謝謝你,但我已經搜索了iframe,但沒有找到任何東西。 – kelvin1986

0

我爲another recent stackoverflow question創建了這個函數,你需要找到一個受感染的php文件,在頂部或底部你會看到一個被評估過的base_64編碼字符串(它在每個文件中最有可能不同,所以尋找一個特定的字符串無法正常工作),但這個功能,如果是因爲我懷疑,它會貫穿整個項目循環並刪除受感染的代碼注入字符串:

<?php 
error_reporting(E_ALL); 
//A Regex to match the infection string 
$find='<\?php @error_reporting\(0\); if \(!isset\((.*?)\?>'; 
//Do It! 
echo cleanMalware('./',$find); 

function cleanMalware($path,$find){ 
    $return=''; 
    ob_start(); 
    if ($handle = opendir($path)) { 
     while (false !== ($file = readdir($handle))) { 
      if ($file != "." && $file != "..") { 
       if(is_dir($path.'/'.$file)){ 
        $sub=cleanMalware($path.'/'.$file,$find); 
        if(isset($sub)){ 
         echo $sub.PHP_EOL; 
        } 
       }else{ 
        $ext=substr(strtolower($file),-3); 
        if($ext=='php'){ 

         $filesource=file_get_contents($path.'/'.$file); 
         //The cleaning bit 
         echo "The infection was found in the file '$path/$file and has been removed from the source file.<br>"; 
         $clean_source = preg_replace('#'.$find.'#','',$filesource); 
         // $clean_source = str_replace($find,'',$filesource); 
         file_put_contents($path.'/'.$file,$clean_source); 
        }else{ 
         continue; 
        } 
       } 
      } 
     } 
     closedir($handle); 
    } 
    $return = ob_get_contents(); 
    ob_end_clean(); 
    return $return; 
} 
?> 

好運