未知威脅逐一擊破:零日攻擊與 Sandbox 的前世今生!
未知威脅逐一擊破:零日攻擊與 Sandbox 的前世今生!
現今很多防禦方案都已有效針對不同的資安威脅作預防,當中所採用的方法其實大同小異,例如針對 DDoS 便採用防火牆作防禦,而針對病毒則採用傳統的特徵碼作識別;至於針對性攻擊又或者是零日攻擊,很多時我們便會使用到 Sandbox 配合雲端把關。
要了解 Sandbox 與零日攻擊的關係,我們便要從傳統防禦機制說起。一直以來,最傳統的防毒軟件其實都會採用以下方法去偵測威脅,包括 1. 特徵碼掃描:通過抽取檔案中一段或數段代碼來進行掃描,並同時比對其威脅資料庫來判斷有關檔案是否為惡意程式;2. 比對校檢碼 MD5:通過比對原始檔案的校檢碼,假如發現檔案與原始檔案的校檢碼不相同時,便會將其識別為惡意軟件,常被應用於針對知名軟件的檔案偵測以及系統檔案偵測。
然而這些方法在應對現今愈來愈厲害的駭客攻擊及網絡威脅時,明顯會有不足之處!例如我們不能單靠特徵碼掃描來識別惡意軟件或病毒,這是因為病毒資料庫特徵碼往往需要一定的時間,例如數分鐘後才能釋出,而在現今網絡傳輸速度愈來愈快的互聯網世界,數分鐘的惡意軟件傳播便足以影響數以千萬計的電腦。
因此業界便開始構想:「如何能在發現新威脅到釋出特徵碼期間持續提供防護?」於是類似 Sandbox 技術的概念便被提倡。Sandbox 原意是希望打造出一個隔離的環境,從而讓測試人員對未知的檔案進行測試,以收集有關檔案在執行後的行為,從而用來判斷該檔案是否為惡意軟件!
而現代的防禦方案便正正採用上 Sandbox 功能來針對未知的威脅進行偵測。就以 WatchGuard 為例,她們將 Sandbox 功能以 APT Blocker 的方式為用户提供。所謂的 APT Blocker 其實就是 Cloud Sandbox!通過 Cloud Sandbox 來模擬真實環境,從中對可疑的檔案進行測試,最終收集檔案執行後的行為而判斷有關檔案是否為病毒或惡意程式。
可能你會說,傳統基於特徵碼的判斷是否已沒有作用?當然不是呢!為了令防禦工作更有效率,防禦方案一般會先針對檔案的代碼進行比對,亦即是最傳統的特徵碼比對;然後再通過雲端 Sandbox,在雲端上的模擬環境執行檔案,如發現檔案有問題的話,便會即時封鎖,反之則會放行。
而為了加強偵測的準確性,在 Sandbox 之中都會盡量打造出一個與真實系統無異的環境,就以 WatchGuard 的防禦方案為例,它除了會模擬不同系統環境之外,就連實體 CPU 以及記憶體等等都會作出模擬,以令測試更準確!
可以說,沒有未知威脅,便沒有 Sandbox!當大家了解過後,便會知道 Sandbox 與零日攻擊(未知威脅)的關係真是密不可分!儘管 Sandbox 幾乎是防禦方案必須具備的功能之一,然而一些便宜的防禦方案有可能仍未能提供 Sandbox 功能,因此大家在採購防禦方案時,便需要多加留意了!