前幾天我發現我被已在所有的index.php文件傳播惡意腳本入侵,的config.php和WP -config.php。刪除<?php *** ?>線包含特定文本
我嘗試獲取代碼並修改它以查找包含此腳本的文件夾中的文件並自動將其刪除。
不幸的是我沒有成功。
的代碼開始是這樣的:
<?php $J24fj = 'bH1Vrb2sswS7fUn8HyCx.... AND MUCH MORE ?>
這個代碼總是在不斷變化,但裏面有一個恆定的:這樣的文字:ZXZhbChiYXNlNjRfZGVjb2RlKCJaW
我發現這個代碼,我能怎樣改變搜索爲恆和刪除整個行<?php ******* ?>
<?php
$find='ZXZhbChiYXNlNjRfZGVjb2RlKCJaW';
echo findString('./',$find);
function findString($path,$find){
$return='';
ob_start();
if ($handle = opendir($path)) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
if(is_dir($path.'/'.$file)){
$sub=findString($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 string '".htmlentities($find)."' 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;
}
?>
在此先感謝
安東尼
所以你在代碼中發現了一些_malicious_。而不是設法保護您的文件,而是想繼續刪除它? –
首先,你應該知道你的文件是如何被感染的,因爲如果你刪除了這些文件,這些文件會再次被重新感染。其次,您可能希望只備份數據庫,並且乾淨地安裝wordpress,它會更快,並且可能更乾淨,從而降低仍在「感染」的風險(即使有點) – aleation
我試圖限制傷害。但在此期間,我試圖刪除在服務器上分散的數百個文件中發現的惡意代碼。 – Antonio