畢業(yè)于哈爾濱工程大學(xué),Windows頂級(jí)內(nèi)核專(zhuān)家,國(guó)內(nèi)反病毒虛擬機(jī)技術(shù)的開(kāi)拓者,主導(dǎo)安芯網(wǎng)盾內(nèi)存保護(hù)系統(tǒng)的開(kāi)發(fā)與管理。多款知名軟件作者:PChunter作者,PChunter被國(guó)際權(quán)威機(jī)構(gòu)評(píng)為全球最優(yōu)秀的AntiRootkit安全軟件。LinxerUnpacker軟件作者,該軟件被評(píng)為當(dāng)時(shí)最強(qiáng)的基于反病毒虛擬機(jī)技術(shù)的通用脫殼機(jī)。
安全牛:您從2009年開(kāi)始,一直致力于未知威脅檢測(cè)引擎的開(kāi)發(fā)和研究,是什么樣的機(jī)緣讓您在2019年選擇以?xún)?nèi)存保護(hù)為創(chuàng)業(yè)方向?
姚紀(jì)衛(wèi):2019年的某個(gè)下午,我和合伙人聊起近幾年國(guó)內(nèi)的網(wǎng)絡(luò)安全市場(chǎng),發(fā)現(xiàn)盡管系統(tǒng)、應(yīng)用層面的防護(hù)手段越來(lái)越多元,安全產(chǎn)品與防護(hù)功能趨于完善,但是類(lèi)似使用永恒之藍(lán)漏洞這種大規(guī)模、高傷亡的網(wǎng)絡(luò)攻擊事件還是偶有發(fā)生,甚至有逐漸增多的跡象,究其原因,在于傳統(tǒng)的安全軟件是通過(guò)傳統(tǒng)的檢測(cè)方式對(duì)系統(tǒng)做檢測(cè)分析,對(duì)當(dāng)前流行的0day攻擊、無(wú)文件攻擊缺乏有效防御手段,這就像用上個(gè)世紀(jì)的雷達(dá)去檢測(cè)最新一代的隱形戰(zhàn)斗機(jī)一樣沒(méi)有效果。我們那次聊了很久,最后一拍即合開(kāi)啟我們的第二次創(chuàng)業(yè),并選擇了內(nèi)存保護(hù)這條路。
我們從2006年就一直在做高級(jí)威脅防護(hù)的研究,發(fā)現(xiàn)無(wú)論威脅、攻擊怎么變換,惡意代碼最終都將出現(xiàn)在內(nèi)存上,也終將需要依賴(lài)CPU去執(zhí)行。因而理論上我們守護(hù)住內(nèi)存和CPU就能防御所有的威脅,這也是我們做內(nèi)存保護(hù)的理論基礎(chǔ),把安全產(chǎn)品的防護(hù)能力從應(yīng)用層、系統(tǒng)層下沉到硬件虛擬化層,從內(nèi)存方面著手進(jìn)行應(yīng)對(duì)系統(tǒng)設(shè)計(jì)缺陷、外部入侵等威脅的檢測(cè)和防護(hù),也就是“內(nèi)存安全”,我們希望借此解決最令行業(yè)頭疼的威脅。
傳統(tǒng)方法依賴(lài)特征、規(guī)則匹配檢測(cè)無(wú)法滿足內(nèi)存安全類(lèi)產(chǎn)品的要求,但是通過(guò)內(nèi)存虛擬化等技術(shù)手段,可以有效監(jiān)控內(nèi)存讀、寫(xiě)、執(zhí)行行為,解決了內(nèi)存訪問(wèn)行為不可見(jiàn)問(wèn)題,內(nèi)存訪問(wèn)行為不再是一個(gè)黑盒。
此外,傳統(tǒng)方法也無(wú)法實(shí)現(xiàn)指令集監(jiān)控。而我們的內(nèi)存保護(hù)系統(tǒng)是基于硬件虛擬化技術(shù)架構(gòu)設(shè)計(jì),在特定的CPU指令執(zhí)行時(shí)結(jié)合其執(zhí)行的上下文能分析出程序發(fā)生了什么行為,同時(shí)基于硬件虛擬化技術(shù)其充分利用CPU層本身的隔離機(jī)制,不容易被反檢測(cè)機(jī)制發(fā)現(xiàn),從而保障自身核心模塊的安全能力。
相比其他安全產(chǎn)品來(lái)說(shuō),內(nèi)存保護(hù)技術(shù)的應(yīng)用需要團(tuán)隊(duì)擁有對(duì)操作系統(tǒng)、CPU體系結(jié)構(gòu)、病毒攻擊以及虛擬化技術(shù)都十分了解的復(fù)合型技術(shù)人才。所以我們目前遇到的最大困難就是招聘,我們渴望找到比我們更優(yōu)秀的伙伴,我們考驗(yàn)的關(guān)鍵點(diǎn)不是是否有漂亮的履歷,手握實(shí)力的人才才是我們需要的。
安全牛:在您看來(lái),內(nèi)存安全與傳統(tǒng)端點(diǎn)安全最大的的區(qū)別在哪里?
姚紀(jì)衛(wèi):傳統(tǒng)端點(diǎn)安全一般指殺毒軟件、EDR、HIPS等軟件,這些軟件一般由病毒查殺、信息采集分析、管控、監(jiān)控等功能組成,它們采用的技術(shù)方法也較為傳統(tǒng),對(duì)威脅的檢測(cè)要么通過(guò)特征碼檢測(cè),要么通過(guò)Hook監(jiān)控分析識(shí)別等技術(shù)。傳統(tǒng)的端點(diǎn)安全軟件也許運(yùn)行在應(yīng)用層,也許運(yùn)行在系統(tǒng)層,但內(nèi)存保護(hù)是運(yùn)行在系統(tǒng)層、應(yīng)用層和硬件虛擬化層,超過(guò)70%的高級(jí)攻擊都是跟內(nèi)存安全相關(guān)的,比如內(nèi)存破壞型漏洞,對(duì)這些攻擊僅僅在應(yīng)用層、系統(tǒng)層設(shè)防是力不從心的。
當(dāng)前很多威脅開(kāi)發(fā)者已經(jīng)熟知這些檢測(cè)手段并能繞過(guò)這些檢測(cè)機(jī)制。內(nèi)存保護(hù)系統(tǒng)除了會(huì)采用一些傳統(tǒng)的技術(shù)手段外,還有一些獨(dú)特的技術(shù)手段,比如內(nèi)存虛擬化技術(shù),它可以解決內(nèi)存訪問(wèn)動(dòng)作不可見(jiàn)問(wèn)題,對(duì)一些內(nèi)存破壞型漏洞攻擊有很好的效果;腳本解析引擎掛鉤分析技術(shù),它可以很好的識(shí)別一些腳本類(lèi)型的無(wú)文件攻擊;基于硬件虛擬化的行為監(jiān)控,可以很好的解決由系統(tǒng)PatchGuard等導(dǎo)致的無(wú)法有效監(jiān)控、攔截一些系統(tǒng)行為的問(wèn)題。內(nèi)存保護(hù)系統(tǒng)能有效監(jiān)控內(nèi)存訪問(wèn)行為和識(shí)別更多的程序行為動(dòng)作,這樣對(duì)威脅的檢出率會(huì)更高,誤報(bào)率會(huì)更低。
大家開(kāi)始關(guān)注到內(nèi)存安全,因?yàn)閮?nèi)存安全問(wèn)題也是Android、Java、Windows 10和Chrome等各類(lèi)平臺(tái)的頭號(hào)安全問(wèn)題。比如近幾年的攻防演練中備受關(guān)注的內(nèi)存馬攻擊,也是一種典型的無(wú)文件攻擊手段,它可以有效地躲避傳統(tǒng)安全軟件的檢測(cè),在系統(tǒng)的內(nèi)存中遠(yuǎn)程加載執(zhí)行、駐留在注冊(cè)表中或?yàn)E用常用的白名單工具,例如PowerShell、Windows Management Instrumentation(WMI)和PsExec等。傳統(tǒng)的端點(diǎn)安全軟件就很難去檢測(cè)到它,更別提實(shí)時(shí)防御了。而通過(guò)對(duì)內(nèi)存數(shù)據(jù)訪問(wèn)行為細(xì)粒度的檢測(cè)以及對(duì)數(shù)據(jù)狀態(tài)、數(shù)據(jù)流動(dòng)狀態(tài)與內(nèi)存中行為動(dòng)作的觀察,內(nèi)存馬就會(huì)在內(nèi)存保護(hù)系統(tǒng)的檢測(cè)下暴露無(wú)遺。
安全牛:因?yàn)閮?nèi)存安全防護(hù)技術(shù)直接監(jiān)控一些內(nèi)存訪問(wèn)狀態(tài),那么產(chǎn)品對(duì)系統(tǒng)的穩(wěn)定性會(huì)不會(huì)產(chǎn)生嚴(yán)重的影響?在威脅的檢測(cè)技術(shù)上,跟傳統(tǒng)的防護(hù)產(chǎn)品相比,有什么先進(jìn)性。
姚紀(jì)衛(wèi):對(duì)系統(tǒng)穩(wěn)定性不會(huì)有特別的影響。傳統(tǒng)的端點(diǎn)安全軟件也會(huì)有驅(qū)動(dòng)程序,內(nèi)存保護(hù)也會(huì)有驅(qū)動(dòng)程序,它們的作用都是差不多的。區(qū)別之處在于,內(nèi)存保護(hù)系統(tǒng)是基于硬件虛擬化技術(shù)架構(gòu)設(shè)計(jì)的,現(xiàn)在的硬件虛擬化技術(shù)已經(jīng)很成熟了,CPU硬件也提供了比較好的支持,只要考慮周全不會(huì)對(duì)系統(tǒng)穩(wěn)定性有特殊的影響。
利用硬件虛擬化技術(shù)后,可以監(jiān)控更多的內(nèi)存行為和程序行為,這樣對(duì)威脅的檢出率會(huì)更高,誤報(bào)率會(huì)更低。另外,也能解決一些傳統(tǒng)防護(hù)手段無(wú)法解決的問(wèn)題,比如能跟蹤內(nèi)存的訪問(wèn)狀態(tài),通過(guò)這些訪問(wèn)跟蹤能識(shí)別發(fā)現(xiàn)無(wú)文件攻擊、0day攻擊、內(nèi)存代碼片段攻擊。
安全牛:請(qǐng)您談?wù)剝?nèi)存安全技術(shù)的發(fā)展趨勢(shì)。
姚紀(jì)衛(wèi):使用內(nèi)存保護(hù)技術(shù)能細(xì)粒度跟蹤、監(jiān)控系統(tǒng)的各類(lèi)行為動(dòng)作,這有利于在低誤報(bào)率的情況下,發(fā)現(xiàn)更多的威脅;內(nèi)存保護(hù)技術(shù)還能有效繞開(kāi)當(dāng)前操作系統(tǒng)的一些限制(比如PatchGuard等),實(shí)現(xiàn)對(duì)系統(tǒng)中各類(lèi)行為的有效監(jiān)控,正是因?yàn)檫@些優(yōu)點(diǎn),相較于傳統(tǒng)端點(diǎn)防護(hù)技術(shù),內(nèi)存保護(hù)技術(shù)會(huì)有更廣闊的應(yīng)用場(chǎng)景。
當(dāng)然內(nèi)存保護(hù)技術(shù)也有局限性,就是對(duì)開(kāi)發(fā)者的要求會(huì)比較高,既要懂安全,又要懂操作系統(tǒng),還需要對(duì)CPU硬件特性特別了解,本身這一塊的技術(shù)人員就很少,所以開(kāi)發(fā)難度會(huì)更大些。
內(nèi)存保護(hù)如果與其他技術(shù)結(jié)合會(huì)有很多場(chǎng)景,比如當(dāng)前內(nèi)存保護(hù)可以檢測(cè)內(nèi)存的一些訪問(wèn)狀態(tài),因此除了可以檢測(cè)0day攻擊外,也可用于漏洞挖掘,可以結(jié)合測(cè)試技術(shù)來(lái)檢測(cè)軟件內(nèi)存使用方面的bug,提高軟件健壯性。
過(guò)去的一年,我們服務(wù)了很多大型客戶(hù)。舉個(gè)例子,國(guó)內(nèi)某頭部電商平臺(tái),它有200多條產(chǎn)品線,開(kāi)放的API有數(shù)百個(gè),這種業(yè)務(wù)復(fù)雜度高的客戶(hù)面臨的問(wèn)題是操作系統(tǒng)和業(yè)務(wù)系統(tǒng)很難進(jìn)行打補(bǔ)丁升級(jí),并且也無(wú)法去確定它的每一條業(yè)務(wù)線是否完成了升級(jí),這個(gè)時(shí)候內(nèi)存保護(hù)就可以幫助客戶(hù)解決這個(gè)問(wèn)題,使用內(nèi)存保護(hù)雖然無(wú)法阻止漏洞的產(chǎn)生,但是可以讓漏洞無(wú)法被利用,可以讓客戶(hù)帶傷上陣,保障業(yè)務(wù)和數(shù)據(jù),這個(gè)需求場(chǎng)景也是很多其他客戶(hù)的痛點(diǎn)。另外內(nèi)存保護(hù)可以幫助解決了域控場(chǎng)景的防護(hù),企業(yè)AD域服務(wù)器的攻擊事件層出不窮,一旦擁有域控管理權(quán)限的域控服務(wù)器被攻破,所有加入域的終端和服務(wù)器都將被控制,存在全網(wǎng)淪陷的可能,而客戶(hù)的數(shù)據(jù)又與我們很多人的生活息息相關(guān)的,而內(nèi)存保護(hù)給客戶(hù)提供的漏洞防御、內(nèi)存數(shù)據(jù)保護(hù)及未知威脅防御等能力,幫助客戶(hù)對(duì)抗PTH攻擊、黃金票據(jù)攻擊、白銀票據(jù)攻擊、lsass進(jìn)程讀取明文密碼,以及最新的NetLogon特權(quán)提升漏洞攻擊等攻擊,保護(hù)他們的高價(jià)值數(shù)據(jù)不被竊取,核心業(yè)務(wù)不被阻斷。