將原本用于防護病毒木馬的沙盒(沙箱)技術(shù),運用于
源代碼防泄密領(lǐng)域,形成沙盒防泄密系統,是否安全可行?
依據沙盒防泄密基本工作原理,可從安全模型、沙箱逃逸以及與進(jìn)程相關(guān)性等多個(gè)角度,對其技術(shù)風(fēng)險進(jìn)行全面分析、解讀。
一、安全模型技術(shù)風(fēng)險
傳統的沙盒技術(shù)將外來(lái)病毒木馬等入侵程序視為非可信進(jìn)程,置于沙盒中并與本機系統相隔離,以避免本機系統受到感染和入侵攻擊。相對于病毒木馬等外來(lái)程序,本機系統是可信的。因此,使用沙盒偏轉訪(fǎng)問(wèn)控制是可以實(shí)現對病毒木馬的隔離防范的。
而對于沙盒防泄密而言,則完全相反,沙盒是將可信的進(jìn)程偏轉置入沙箱,與宿本機系統相隔離,并假設沙箱之外的本機系統所有進(jìn)程均是不可信的。但事實(shí)上這種訪(fǎng)問(wèn)控制隔離(進(jìn)程沙箱偏轉),又嚴重依賴(lài)本機系統的可信性。無(wú)疑,沙盒防泄密的安全模型是自相矛盾的。
沙盒防泄密技術(shù)的安全機制建立在“防外不防內”的基礎上,即默認本機操作系統是可靠的,通過(guò)沙盒將不信任的應用程序隔離,控制其對本機其他系統資源的調用。使用者本人是可以通過(guò)簡(jiǎn)單手段從沙盒外的本機操作系統,獲取沙盒內使用的各種敏感信息的,從而讓安全措施形同虛設。
顯然,沙盒源防泄密本質(zhì)上是將原本 “防外”的沙盒(sandbox)技術(shù)用于具有“防內”性質(zhì)的源代碼防泄密領(lǐng)域。
二、沙箱逃逸技術(shù)風(fēng)險
對程序(進(jìn)程)行為進(jìn)行監控是沙箱需要解決的一個(gè)基礎性問(wèn)題,大多數采用系統調用監控的方法。但僅從監控到的系統調用信息中獲取程序行為,很難完全推理得到惡意程序的真正目的,特別是面對高隱蔽的APT攻擊。研究多維度程序行為監控技術(shù),從不同維度信息中獲得程序可能的行為,是提高沙箱防御能力的重要途徑。
沙盒防泄密技術(shù),必須要在此基礎之上對宿本機程序監控后再防范本機系統,更加不可能。
三、與進(jìn)程相關(guān)技術(shù)風(fēng)險
無(wú)網(wǎng)絡(luò )文件加密、磁盤(pán)也不真實(shí)文件加密(僅修改磁盤(pán)目錄),僅依賴(lài)沙箱技術(shù)對進(jìn)程進(jìn)行涉密或非涉密的判斷
(對進(jìn)程判斷是沙箱偏轉的基礎),通過(guò)訪(fǎng)問(wèn)控制技術(shù)來(lái)實(shí)現對網(wǎng)絡(luò )、磁盤(pán)等資源的
進(jìn)程級防泄密“效果”。
>> 與進(jìn)程訪(fǎng)問(wèn)控制密切相關(guān),
進(jìn)程被停止、訪(fǎng)冒、篡改,即破解;
>> 磁盤(pán)不真實(shí)文件加密或偽文件加密,其中數據一旦被
磁盤(pán)讀取工具直接提取、即破解;
>> 沙盒虛擬化、訪(fǎng)問(wèn)
進(jìn)程偏轉處理,性能損耗比較大,特別在虛擬化環(huán)境中尤為明顯;
>> 部署、維護以及開(kāi)發(fā)工具變化時(shí),
均須依據進(jìn)程配置一系列策略,非常繁瑣(當然,測試時(shí)會(huì )提前配好以規避);