如何發(fā)現(xiàn)防不勝防的邊信道攻擊?
反病毒軟件捕捉不到Rowhammer及類似邊信道攻擊,于是,一組美國科學家著手研究該怎樣捕獲這些攻擊的特征。
一旦考慮到實驗室環(huán)境和間諜工具之類的東西,邊信道攻擊就是很具體的事兒了。舉個例子,Rowhammer攻擊。這是一個通過快速重寫RAM行,以純軟件方式翻轉RAM上鄰近存儲單元的攻擊方法。最終,Rowhammer能使攻擊者搞崩內核進程,獲取到root權限。
美國馬薩諸塞州伍斯特理工學院(WPI)的3名研究員,在國際密碼研究學會(IACR)發(fā)表了一篇論文,展示了類似病毒掃描的邊信道攻擊檢測技術。
他們在文章中指出,標準反病毒軟件檢測不了Rowhammer之類的漏洞利用,因為此類攻擊“明顯基于無辜的指令集”。
雖然防御此類“微架構”攻擊是可能的,但這3名研究人員提出的方法,是在邊信道惡意代碼部署之前(比如投送到應用商店),就掃描軟件以確保二進制代碼干凈。
他們的工具名為MASScan(微架構靜態(tài)掃描),基于對惡意邊信道攻擊方式的分析:
緩存攻擊——通過制造緩存爭用起效。此類攻擊的共同特征,是對高分辨率計時器的需求;它們使用內存屏蔽來連續(xù)針對性讀取操作;利用共享的內存刷新指令等實現(xiàn)緩存驅逐。
DRAM訪問攻擊——造成系統(tǒng)內存沖突。此類攻擊與緩存攻擊類似,共享計時器、內存屏蔽和緩存驅逐特征。
Rowhammer攻擊——僅有緩存驅逐一個明顯特征。
通過阻斷內存總線制造隱秘信道——高分辨率計時器和鎖定指令的組合,目的是拖住內存總線以在兩個共存進程間建立隱秘信道。
MASScan的重點在于分析二進制文件以發(fā)現(xiàn)這些特征——當今病毒掃描器發(fā)現(xiàn)不了的特征。MASScan是一組 IDA Pro 反匯編調試器腳本集,可被轉譯成適用于其他二進制分析器的代碼。
比如說,cflush指令本身不是惡意的,那么MASScan尋找的就是cflush指令的循環(huán)執(zhí)行——也就是緩存攻擊、DRAM訪問攻擊和Rowhammer攻擊全都利用的操作。
比較遺憾的是:除了資本化,MASScan同時也是 Errata Security 出品的一款聲名狼藉的端口掃描器的名字,那款掃描器名為Masscan,僅僅是大小寫不同而已。希望WPI三人組發(fā)布代碼的時候能改個名字,免得撞名。















 
 
 




 
 
 
 