文/許偉林
?
機器學習被帶到溝里了?
——惡意軟件可輕易逃脫檢測(包括Gmail)
文/許偉林
許偉林美國弗吉尼亞大學計算機系PhD學生,研究方向Adversarial Machine Learning,師從David Evans和Yanjun Qi教授。本科畢業(yè)于北京郵電大學,獲北郵最高學術獎,其間兩次參加Google Summer of Code的網絡安全類開源項目,貢獻了Nmap的IPv6掃描功能和Honeynet的IPv6入侵檢測器6Guard。赴美留學前在清華大學網絡與信息安全實驗室(NISL)任職工程師,負責IPv6蜜罐項目。
近年來機器學習越來越火,被很多人視為神器,指哪打哪,所向披靡,地球人已經不是對手了。很多安全領域的難題也用到機器學習技術來解決,比如垃圾郵件分類、僵尸號檢測、惡意軟件分類等。去年微軟在Kaggle上贊助了一個Windows惡意軟件分類比賽[1],冠軍隊賽前并沒有任何惡意軟件知識,僅憑基本的機器學習技能就贏得第一名,模型準確率接近100%。這似乎意味著數(shù)據(jù)科學家開始來搶安全專家飯碗了!
然而,今年NDSS'2016有一篇論文[2]指出:機器學習做安全只是看起來很美。論文標題Automatically Evading Classifiers[3],作者來自美國弗吉尼亞大學。
該論文采用遺傳編程(Genetic Programming)隨機修改惡意軟件的方法,成功攻擊了兩個號稱準確率極高的惡意PDF文件分類器:PDFrate[4]和Hidost[5]。實驗中所有500個惡意PDF樣本被稍加修改后都被判為無害,然而其攜帶的惡意代碼照樣在目標平臺中運行。值得注意的是,這些逃逸檢測的惡意文件都是算法自動修改出來的,并不需要PDF安全專家介入。
兩個受攻擊的分類器PDFrate和Hidost分別采用PDF文件內容和PDF文件結構作為分類特征,在原測試數(shù)據(jù)集中均顯示出極佳的分類性能。然而,攻擊實驗結果表明,不論是文件內容還是文件結構都不能訓練出可靠的惡意PDF分類器。盡管在訓練數(shù)據(jù)中確實可以觀察到兩類樣本在文件結構(內容)上的差異,這些差異往往并非必然,以此訓練出來的分類器將存在很大盲區(qū)。舉個例子,現(xiàn)實中收集到的惡意PDF樣本往往文件尺寸都比較小,因為攻擊者通常只要把一小段可執(zhí)行代碼植入PDF就夠了,并不需要真正的PDF頁面。用機器學習訓練分類器時,把文件尺寸作為特征或許可以在特定的數(shù)據(jù)集中幫助區(qū)分惡意/無害樣本,然而這并非是惡意軟件的真正特征,攻擊者只須簡單地植入更多PDF內容頁就可以迷惑分類器。
機器學習用在安全業(yè)務中到底可不可行,學術界一直爭議不斷。這篇論文以扎實的證據(jù)指出:安全領域的任務有其特殊性——攻擊者會不斷改變策略,至少不能以傳統(tǒng)的機器學習視角來看待安全類問題了。以后安全從業(yè)者接觸到本領域的機器學習分類器,不應該只問準確率、誤報率之類的傳統(tǒng)度量,而應該認真思考一下其分類特征是否靠譜,否則機器學習做安全只是看起來很美而已。
作者在宣講論文時還披露了Gmail內嵌的惡意軟件分類器更加脆弱,只須4行代碼修改已知惡意PDF樣本就可以達到近50%的逃逸率,10億Gmail用戶都受到影響。然而Google安全團隊表示惡意軟件檢測是個大難題,他們暫時也無能為力。計算機安全行業(yè)如何保護億萬用戶任重而道遠!
參考鏈接:
[1]Windows惡意軟件分類比賽:https://www.kaggle.com/c/ malware-classification/
[2]論文全文下載:NDSS會議網站2016-0315-automaticallyevading-classifiers
[3]從百度文庫下載報告Slides:http://wenku.baidu.com/ view/0f30f8dba6c30c2258019e02
[4]ACSAC'2012: PDFrate https://www.acsac. org/2012/openconf/modules/request.php?module=oc_ program&action=summary.php&id=70
[5] NDSS'2013 :Hidosthttp://www.internetsociety.org/doc/ detection-malicious-pdf-files-based-hierarchical-documentstructure