惡意攻擊者最常用的策略之一是將惡意重定向惡意軟件添加到站點,以將流量驅(qū)動到另一個站點。這不僅對網(wǎng)站所有者不利,而且對網(wǎng)站訪問者也不利。惡意重定向通常會將毫無戒心的站點訪問者帶到垃圾郵件站點,甚至可能會用難以消除的惡意軟件感染用戶計算機的站點。

在這篇文章中,北京六翼信息技術(shù)有限公司的開發(fā)工程師就什么是惡意重定向惡意軟件、黑客為何使用這種策略、如何確定您的網(wǎng)站是否受到此惡意軟件的影響以及從惡意重定向惡意軟件的影響中恢復(fù)您的網(wǎng)站的一些可能解決方案。
此外,我們將概述一些重要步驟,以確保您的站點在恢復(fù)后仍然受到保護。
什么是惡意重定向惡意軟件?
惡意重定向是一種代碼,通常是 Javascript,它被插入到一個網(wǎng)站中,目的是將網(wǎng)站訪問者重定向到另一個網(wǎng)站。通常,這種惡意軟件會被攻擊者添加到 WordPress 網(wǎng)站,目的是在另一個網(wǎng)站上產(chǎn)生廣告印象。但是,一些惡意重定向可能會產(chǎn)生更嚴(yán)重的影響。更嚴(yán)重的惡意重定向可以利用站點訪問者計算機中的潛在漏洞。這種類型的惡意軟件旨在安裝感染個人計算機的惡意軟件,這些惡意軟件會對用戶的 Mac 或 Windows 計算機造成極大的破壞。
確定您的網(wǎng)站是否被感染
網(wǎng)站所有者可能不知道他們的網(wǎng)站正在重定向。通常,惡意重定向是隱藏的,因此只有未經(jīng)身份驗證(未登錄的用戶)才會被重定向。或者,它可能會檢測用戶在訪問網(wǎng)站時使用的瀏覽器,并僅使用該特定瀏覽器進行重定向。例如,如果他們的目標(biāo)是使用只能感染易受攻擊的 Chrome 版本的惡意軟件來利用個人計算機,那么只有那些使用惡意腳本檢測到的那個版本的人才會被重定向。可能需要進行一些調(diào)查才能確定發(fā)生了什么。
網(wǎng)站所有者可能會嘗試復(fù)制客戶報告的重定向,結(jié)果卻發(fā)現(xiàn)在他們的計算機上一切正常。移動平臺上的網(wǎng)站訪問者可能同時遇到惡意活動。重定向可能發(fā)生在某些頁面上而不是其他頁面上。或者,它甚至可能在網(wǎng)站加載之前發(fā)生。
為什么我的 WordPress 網(wǎng)站會重定向到另一個網(wǎng)站?
如果您的站點正在重定向,攻擊者可以使用幾種方法來創(chuàng)建重定向。當(dāng)然,這些都是創(chuàng)建重定向的非常有效的方法,但是,在惡意情況下,這些絕對不符合站點訪問者的最佳利益。以下是攻擊者用來重定向的一些方法。重定向的主要方法包括 .htaccess 重定向或 Javascript 重定向。在極少數(shù)情況下,您可能會找到 HTTP 標(biāo)頭(例如,META HTTP-EQUIV=REFRESH 重定向),但這種情況很少見。在許多情況下,重定向被混淆了,這意味著函數(shù)被用來隱藏代碼的真實意圖。這種混淆通常是出現(xiàn)問題的第一個關(guān)鍵,但攻擊者打賭大多數(shù) WordPress 網(wǎng)站所有者會被混淆嚇到,不想深入挖掘。
重定向感染的確切位置在哪里?
黑客會在多個區(qū)域插入他們的惡意代碼可以導(dǎo)致 WordPress 重定向被黑客攻擊發(fā)生。
1.PHP文件
攻擊者可以通過將代碼插入任何WordPress 核心文件來感染您的站點。以下是一些可能包含導(dǎo)致您出現(xiàn)問題的惡意代碼的文件:
攻擊者可以通過在 WordPress 的任何核心文件中注入代碼來感染該網(wǎng)站。檢查這些文件中的惡意代碼。如果您不確定哪些代碼是惡意代碼,哪些不是,您可以隨時將這些文件與 WordPress 核心或您的主題和插件文件的已知良好副本進行比較
l joowp.com
l index.php
l wp-config.php
l wp-settings.php
l wp-load.php
l .htaccess
l Theme files (wp-content/themes//)
n header.php
n functions.php
n footer.php
2.JavaScript 文件
某些重定向惡意軟件的變體會影響您網(wǎng)站上的所有 JavaScript (.js) 文件。這將包括插件、主題文件夾和 wp-includes 中的 Javascript 文件。
通常,相同的惡意代碼會添加到每個 JavaScript 文件的最頂部或底部。
3..htaccess 文件
您的 .htaccess 文件是一組指令,告訴您的網(wǎng)絡(luò)服務(wù)器在收到站點訪問者的請求后立即做什么。它在 PHP 之前參與,在對您的數(shù)據(jù)庫進行任何調(diào)用之前,它可以檢測某些“環(huán)境變量”,這些“環(huán)境變量”告訴您的服務(wù)器一些關(guān)于用戶所在系統(tǒng)的信息,例如他們的瀏覽器、計算機類型,即使請求您網(wǎng)站的頁面來自搜索引擎抓取工具。
如果您不熟悉普通WordPress .htaccess 文件的外觀,.htaccess 中的大部分代碼可能會令人困惑。而且,如果您將 .htaccess 文件下載到您的硬盤驅(qū)動器以進行更深入地查看,它通常會在您身上消失,因為許多個人計算機將此文件類型視為“隱藏文件”。
將惡意代碼添加到 .htaccess 文件中的非常常見的Pharma hack通常只會重定向來自搜索引擎結(jié)果頁面的網(wǎng)站訪問者。
黑客將他們的惡意代碼以一種您無法找到的方式放置在文件中,除非您向右滾動很遠(yuǎn)。這使得發(fā)現(xiàn)和刪除這些重定向黑客變得更加困難。
3. WordPress數(shù)據(jù)庫
wp_options 和 wp_posts 表通常是WordPress 數(shù)據(jù)庫中的表,黑客將其作為插入惡意重定向的目標(biāo)。Javascript 代碼可以嵌入您的每個帖子甚至所有帖子中。如果重定向隱藏在小部件中,您通常還可以在 wp_options 表中找到重定向。
4. 假 favicon.ico 文件
存在惡意軟件,它會在您網(wǎng)站的服務(wù)器上創(chuàng)建一個隨機的 .ico 文件或流氓 favicon.ico 文件,其中包含惡意的 PHP 代碼。這些 .ico 文件將包含惡意重定向,然后將其包含在您網(wǎng)站上的另一個文件中。
@include "/home/sitename/sitename.com/cdhjyfe/cache/.2c96f35d.ico";
快速從惡意重定向中恢復(fù)
如果您遭到惡意重定向攻擊,從此類惡意軟件中恢復(fù)得最快、最簡單的方法是從已知良好的備份中恢復(fù)。如果您使用BackupBuddy定期備份您的網(wǎng)站,那么您知道您有一個包含您網(wǎng)站的良好副本的最新備份。從已知的良好備份恢復(fù)您的網(wǎng)站是讓您的網(wǎng)站快速恢復(fù)和運行的絕佳方式。
當(dāng)然,如果您運行的站點的內(nèi)容經(jīng)常更改,那么防止惡意重定向的最佳方法就是做好最近的備份和入侵檢測,這樣您就可以迅速收到問題警報。通過這種方式,您可以快速采取行動并最大限度地減少停機時間。
當(dāng)然,您還必須查看訪問日志以確定黑客是如何進入并進行重定向的。
關(guān)于附加域的說明
WordPress 網(wǎng)站被黑客入侵的最常見方式之一是來自未維護的附加域或在您的托管帳戶中額外安裝 WordPress。也許您設(shè)置了一個測試站點以查看某些東西是否可以在同一賬戶中運行,但您忘記了該安裝。黑客發(fā)現(xiàn)它并利用未維護站點中的漏洞在您的主站點上安裝惡意軟件。或者,也許您將家人的網(wǎng)站也托管在同一空間以節(jié)省資金,但他們正在重復(fù)使用泄露的密碼。
最好在一個主機賬戶中擁有一個 WordPress 站點,或者如果您在同一個主機賬戶中使用多個站點,請確保它們彼此隔離,并為每個站點使用不同的基于服務(wù)器的用戶。這樣,就不會發(fā)生從一個脆弱站點到另一個相鄰站點的交叉污染。
如果您的托管賬戶中確實有多個站點,則需要將在同一空間中運行的所有站點(例如,在 public_html 下運行的所有站點)視為它們都被惡意重定向惡意軟件污染了。如果您確實有這樣的情況,請確保為該托管實例中的每個站點完成這些步驟中的每一個。如果您不確定,請咨詢您的托管服務(wù)提供商。
掃描您的網(wǎng)站以查找 WordPress 重定向黑客惡意軟件
如果您沒有最近的干凈備份,您仍然可以自行刪除惡意軟件。這樣做可能是一個乏味的過程,您需要尋找的不僅僅是重定向惡意軟件。重定向惡意軟件最常見的是伴隨著其他惡意軟件,包括后門程序和流氓管理員用戶,您還需要確定黑客是如何進入的,通常稱為“入侵向量”。不采取整體方法來清除惡意軟件會確保重定向問題再次出現(xiàn)。
1.備份網(wǎng)站
是的,即使該站點已被感染,您仍希望保留所發(fā)生事件的證據(jù)。將任何黑客攻擊視為犯罪現(xiàn)場,您會想知道發(fā)生了什么以及發(fā)生的時間。當(dāng)您確定入侵是如何發(fā)生的時,文件時間戳將有助于您的調(diào)查,從而防止它再次發(fā)生。
2. 確定是否需要關(guān)閉網(wǎng)站
使用惡意重定向,您可能希望暫時關(guān)閉您的站點以進行維護。并非所有重定向都可以保證這一點,但如果您的網(wǎng)站重定向到一個可能損害用戶計算機的地方,將網(wǎng)站關(guān)閉一段時間可以防止進一步的損害。
如果您認(rèn)為黑客可能仍在該網(wǎng)站上活動(如果您不知道,請假設(shè)他們是),關(guān)閉該網(wǎng)站并使其無法訪問可以防止進一步的破壞。
每種情況都會有所不同;您需要根據(jù)正在發(fā)生的事情做出決定。
3.將站點復(fù)制到本地驅(qū)動器
保留備份,將站點復(fù)制到本地驅(qū)動器。我們建議使用文本編輯器在本地驅(qū)動器上進行清理,并在本地比較并查看所有文件——從 PHP 和 Javascript 文件到 .htaccess 文件——在 Internet 無法訪問的本地情況下。這樣,您就有了一個檢查文件的受控環(huán)境。您可以下載 WordPress 的全新副本、您的主題和您的插件,并將文件與您的被黑站點進行比較,以查看哪些文件被更改,哪些文件根本不屬于。您可以使用許多文件比較工具。
4.刪除重定向和隱藏的后門
當(dāng)您查看文件時,您可以將其中包含惡意軟件的文件替換為已知完好的副本,或者如果您愿意這樣做,您可以刪除不應(yīng)該存在的文件(通常是后門)和代碼行那不應(yīng)該與文本編輯器一起存在。
檢查您的 /wp-content/uploads 目錄和所有不應(yīng)存在的 PHP 文件的子目錄。
有些文件將不同于您從 WordPress.org 存儲庫下載的任何文件。這些文件包括您的 .htaccess 文件和 wp-config.php 文件。這些將需要仔細(xì)檢查是否有任何錯誤的惡意代碼。兩者都可以包含重定向,并且 wp-config.php 文件可以包含后門。
5.將清理后的文件上傳到您的服務(wù)器
要立即清除所有惡意軟件,防止訪問被黑站點上活動的任何后門,請將清理后的站點上傳到與被黑站點相鄰的位置。例如,如果您被黑的網(wǎng)站位于 /public_html/ 下,則將您的干凈網(wǎng)站上傳到它旁邊的 /public_html_clean/。在那里,將實時 /public_html/ 目錄重命名為 /public_html_hacked/ 并將 /public_html_clean/ 重命名為 public_html。如果您選擇在清理過程開始時不關(guān)閉站點,這只需要幾秒鐘,并且可以最大限度地減少停機時間。它還可以防止您通過與活躍的攻擊者玩“打地鼠”游戲來嘗試清理受到攻擊的被黑網(wǎng)站。
現(xiàn)在文件已清理,您還有一些工作要做。仔細(xì)檢查該站點在前端以及 wp-admin 中是否正常。
6.尋找惡意管理員用戶
查找添加到您站點的任何惡意管理用戶。前往 wp-admin > users 并仔細(xì)檢查所有管理員用戶是否有效。
7.更改所有管理密碼
考慮所有管理員賬戶都受到威脅并為所有賬戶設(shè)置新密碼。
8. 防止惡意注冊
前往 wp-admin > settings > general 并確保禁用名為“Anyone Can Register”的“Membership”設(shè)置。如果您需要用戶注冊,請確保“新用戶默認(rèn)角色”僅設(shè)置為訂閱者,而不是管理員或編輯。
9. 在數(shù)據(jù)庫中搜索任何惡意鏈接
手動搜索您的 WordPress 數(shù)據(jù)庫以查找惡意 PHP 函數(shù),其方式與查找文件系統(tǒng)中的問題的方式類似。為此,請登錄 PHPMyAdmin 或其他數(shù)據(jù)庫管理工具并選擇您的站點正在使用的數(shù)據(jù)庫。
然后搜索以下術(shù)語:
l 評價
l 腳本
l Gzinflate
l Base64_解碼
l str_replace
l preg_replace
在更改數(shù)據(jù)庫中的任何內(nèi)容之前要格外小心。即使是非常小的更改,例如不小心添加了一個空格,也可能導(dǎo)致您的網(wǎng)站崩潰或無法正常加載。
10.保護網(wǎng)站
因為發(fā)生了入侵,您需要假設(shè)與您的站點相關(guān)的所有內(nèi)容都已受到損害。在您的托管賬戶面板中更改您的數(shù)據(jù)庫密碼,并在您的 wp-config.php 文件中更改憑據(jù),以便您的 WordPress 站點可以登錄到您的 WordPress 數(shù)據(jù)庫。
此外,更改您的 SFTP/FTP 密碼,甚至更改您的 cPanel 或主機賬戶的密碼。
11.檢查谷歌問題
登錄到您的 Google Search Console,看看您是否有任何惡意網(wǎng)站警告。如果是這樣,請查看它們以查看您的修復(fù)是否已解決問題。如果是這樣,請求審查。
12.更新或刪除任何易受攻擊的軟件
如果您有任何需要更新的軟件、主題、插件或核心,請立即更新。如果您使用的插件中存在尚未修補的漏洞,請停用并從您的站點中完全刪除該軟件。
此時,如果您已鎖定您的網(wǎng)站,您可以刪除維護通知以使您的網(wǎng)站再次可訪問。
關(guān)于WordPress建站的問題,歡迎留言討論,關(guān)注“六翼開源”專注WordPress建站服務(wù)。





