WordPress被駭遭綁架,對部落客而言,欲哭無涙

常聽說電腦被綁架要付贖金解毒,網站被綁架呢?wordpress被駭遭綁架,對部落客損失最大的莫過於Google掉排名及降低網友的信賴感,如何避免和防範呢?這一篇算是一個比較深度的網路技術文,在網路的新世代裡,可以當作常識看看,了解一下。

小明是一個美食部落客,就這麼突然有一天,要登入網站後台時卻發現,網站會被自動轉址到一個日本的莫名網站上去,接著又試了前台,竟然發現也一樣,此時的小明就有點心荒了,自己的網站到底發生了什麼事,怎麼出現類似被綁架的情況呢?

一般的電腦被綁架,被要求用比特幣支付贖金(因為比特幣有匿名的特性),就會解鎖檔案,已經不是新鮮事;如果今天變成網站被綁架呢?上仟隻程式都被感染病毒,而且這隻病毒通常心機非常重,只單獨還原一支程式還是無效的情況之下,對一個一般純部落客的使用者而言,就算知道如何清除病毒,要處理上仟隻程式可能都要欲哭無淚了~

不過,如果你是租用虛擬主機,主機商只要發現了你的網站中毒或被綁架了,此時主機商的管理者都會收到異常流量的通常,幾乎第一時間就會限制你帳號的網路連線的範圍。

而且,外國人作事通常嚴謹,不會無地放矢,他們會提供一個證據,也就是一份檢查報表,來告知你,你的網站出了什麼問題

明明已經關閉了帳號註冊的功能,但竟然還有人可以註冊成功,還是註冊成為管理者,有沒有搞錯啊!而且身為管理者的我,還收到註冊通知信。

接著陸續又註冊了一般使用者帳號,明明就已經關閉註冊的功能了,不是嗎?

還執行了一串看起來就莫名其妙的程式碼,一堆數字的,到底想幹什麼呢?

主機商的警告訊息

接著要你回答一些問題,要求你回報清理的過程,包括:這個問題的來源,如何解決這個問題,後續如何避免…等。

有人說處理最快速又可以完全清理的方式之一,就是跟windows一樣,重新安裝,但是重點來了,網站的內容無價啊!如果你不知道如何將舊的內容正確的搬到新安裝的程式,那麼以前寫的文章不就毀於一旦嗎?到底有沒有辨法解呢?

病毒就像天機,不可洩漏?

接著讓咱們來仔細瞧瞧這個病毒是怎麼一回事?狠很給它抽絲剝繭,看看病毒檔案到底躲在哪裡?

解毒就像洩漏資訊暗黑世界的天機

特性:感染所有的 index 檔案,包括htm, html, php…等及js檔案。沒有對資料庫做任何變動。

這其中會感染病毒的檔案以 php 最容易被發現,php檔案又以index.php為主要感染對象,不是只感染一支,而是感染全部;相信熟知wordpress的朋友一定知道一件事,wordpress資料夾中的index.php數量非常多,如果安裝的plugins夠多再加上themes,資料夾一多,沒有100個也有200個以上的index.php檔案,且又偏佈在wordpress的各層資料夾當中,處理起來,真的夠資安管理人員吃上一壺的。

接著還沒完,你沒看錯,以為這樣就結束了嗎?現在的軟體病毒,防不剩防,不只是感染index.php;還有更狠的招,是你沒想到,接著更進一步的藏匿自己的行踪,不是像index.php一樣,大剌剌的顯示出自己的本尊,而是使用各式各樣防止追踪的方法,例如,使用 fromCharCode() 這個函數,將一串編碼過的病毒程式增加到所有的 html 和 js 檔案中。

接著我們把這一段javascript解碼一下

令人瞠目結舌的是,病毒有夠狡滑的,裡面又編碼了一層

再解開一次,就發現和index.php中的綁架網址是一模一樣的了

fromCharCode解碼

可以使用 fromCharCode 線上解碼的工具

https://jdstiles.com/java/cct.html

病毒的藏匿處

緊接著我們抽絲剝繭,開始找尋病毒可能的藏身之處,在uploads上傳的資料夾中發現了幾個名稱非常奇怪的資料夾,裡面包括了3個檔案,檔案名稱都是毫無意義的字串。

其中的php程式,將奇怪檔名(t_tZsnViFx)的檔案讀入、解碼再刪除。

打開 t_tZsnViFx 這個檔案後發現,內容很像是一堆亂碼!但從php程式裡可以發現,這一串亂碼其實是用Base64編碼過。

把上面的那一段亂碼再用Base64解碼

程式接著將t_tZsnViFx解碼以後放入 t_tZsnViFx_s 檔案裡;而裡面這些編碼或解碼開的php程式碼,最主要目的,就是混肴視聽,甚到還再次加工把程式碼壓起來(compact),讓人類不容易閱讀。

要檢查的地方其實不止是如此,接著來看看外掛的資料夾。

外掛被安裝了一個很像社群的程式

莫名被安裝了一個外掛super-socialat,但是裡面的檔案名稱怪到一個不行。

打開hjghjerh這個檔案,竟然發現,它的功用就是要找出所有的 js 檔案,把它們全部感染。

厲害的是連管理者帳戶都有辨法新增

解毒方法

看了上述的分析,對於如何解毒和清理病毒應該也有一點點認識了,建議步驟如下:

  1. 將網站打包下載
  2. 本機端解壓縮
  3. 清除 uploads中莫名資料夾
  4. 清除奇怪的外掛程式
  5. 清除所有index.php index.htm index.html中的js程式片段
  6. 清除所有javascript中的js程式片段
  7. 打包上傳

有效的防範方法

安裝防駭plugins

可以安裝一個 security 相關的外掛程式,幫助我們提昇wp網站的安全防禦力。

一個主機帳號一個網站

通常這樣的感染型病毒,會產生連鎖反應,以cpanel為例,會將同一個使用者帳戶裡所擁有的網站全部感染,因為同一個帳號裡所有資料夾和檔案擁有者權限是一樣的,只要在同一個資料夾底下,就全部中槍,想像一畫面,一個wordpress中毒就已經夠麻煩了,現在所有在裡面的全部都中,一定難過想哭,到底我招誰惹誰了。

因此建議一個wordpress網站使用一個帳號來使用,比較符合資訊安全的作業管理規範,就算一個網站中毒了,也無法傳染到其他帳戶中的程式。

勿安裝來路不明的外掛和佈景主題

現在的病毒往往躲藏在你想像不到的角落,例如:javascript ,甚至有時還是編碼過的亂碼,讓你辨識不出來,儘量安裝合法的程式比較有安全保障。

檢查網站是否中毒

https://sitecheck.sucuri.net/

回覆留言

Please enter your comment!
Please enter your name here