沒有100%的資安防護

在網路安全的世界裡,到底有沒有 100% 的安全防禦機制或產品呢? 從最近Solarwinds駭客事件的受害者來看,被入侵的對象遍及美國各大政府機構、高科技公司、資安廠商、醫院及大學…….,在這些單位中有些可能已經投資了數十億的資安預算在資安防禦機制,卻仍無法阻止駭客入侵,所以可以得到一個結論:資安已經沒有絕對的安全,我們只能透過增加入侵的難度來避免駭客找上門,或者在被入侵的初期,損害還沒有擴大之前,快速的止血,降低損害的程度。

 

接下來要分享的一個案例是,即使客戶已經買了首屈一指的WAF (Web Application Firewall 網站應用程式防火牆的簡稱),網站仍然是有被入侵的風險。從下面的網站存取記錄可以看到駭客使用PowerShell Payloads 裝載編碼過後的程式碼以躲避資安設備(如防火牆、IPS、防毒甚至WAF)的偵測,達成繞過防禦機制而入侵成功的手法,圖中橘色的內容即為編碼的內容,而c:\windows\temp\2.bat 則為其成功將惡意程式放到伺服器本機的檔案。

 

上圖之內容在經由4次連線動作 (將程式碼拆成4份並加以編碼) 的寫入2.bat後完成,而我們將編碼後的內容取出後合併,再經過解碼之後的內容如下圖 (橘色部分看的出來仍然是經過編碼後之內容)

上圖橘色部分經過我們2次decode (解碼) 還原後便會被防毒軟體偵測為惡意程式(木馬) 而被刪除 (如下圖所示)。

 

這時候你可能會想,難道WAF都沒有偵測到駭客的攻擊嗎? 實際上在這個攻擊之前,我們在WAF的告警LOG上已偵測到多次駭客嘗試使用SQL injection及OS command攻擊被阻擋的記錄如下:

只是駭客仍不放棄,持續改用各種不同的手法繼續嘗試,終於找到漏洞而攻擊成功。

 

而我們在發現此攻擊事件後,也立即客製化WAF的政策,針對此網站的頁面新增政策,來阻擋此種攻擊行為如下:

 

從上面的過程可以看出來,這是一件透過Powershell工具攻擊的Webshell 駭侵事件,主要也是因為該網站之上傳功能並沒有作邊界管制,導致駭客可以將帶有惡意的指令送到網站而被執行。所以要根本解決這個問題還是要請網頁廠商在設計網頁時就要以資訊安全的角度來思考,建議是在網站上線前必須先經過原碼檢測及網站弱點掃瞄 (如Tenable、Acunetix、Rapid7…..) 檢查並修復漏洞,才能避免駭侵事件再次發生。