網(wǎng)絡空間安全中的人工智能技術綜述
1、引言
由于當下計算機網(wǎng)絡的爆炸式增長,隨之而來的問題是數(shù)目急劇增長的網(wǎng)絡攻擊。我們社會的各種部門,從政府部門到社會上的各種關鍵基礎設施,都十分依賴計算機網(wǎng)絡以及信息技術。顯然它們也很容易遭受網(wǎng)絡攻擊。典型的網(wǎng)絡攻擊就是使目標計算機禁用、使服務脫機或者訪問目標計算機的數(shù)據(jù)。自上世紀九十年代以來,網(wǎng)絡攻擊的數(shù)量和影響已經(jīng)顯著增加。
網(wǎng)絡安全指的是一系列用來保護網(wǎng)絡設備活動和措施的,能夠使得它們免遭所有可能威脅的技術。在傳統(tǒng)的網(wǎng)絡安全技術中,大都是靜態(tài)的訪問管理,安全控制系統(tǒng)會根據(jù)預設的定義進行保護。但是當網(wǎng)絡攻擊數(shù)目增多,越來越多的攻擊會繞過這個保護機制,傳統(tǒng)的方法也就不再夠用了。
如果沒有足夠有效的網(wǎng)絡安全技術,公司、國家、社會的安全都會受到威脅。只是在2014-2015年間,全國有大量的網(wǎng)絡犯罪需要被應對,涉及到Target、Anthem、藍盾等多家公司。攻擊者會使用安全系統(tǒng)的漏洞或者利用基礎設施的漏洞,侵入計算機系統(tǒng)。傳統(tǒng)的方式已經(jīng)在當今不可預測的環(huán)境中完全不夠用,不能再使用靜態(tài)的方法進行保護,需要在第一時間防止攻擊發(fā)生。
下文探索了在網(wǎng)絡安全技術發(fā)展的過程中的需要,解釋了許多當前正在使用于網(wǎng)絡安全領域的人工智能技術。第二部分會對人工智能進行簡要概述,第三部分介紹了應用在網(wǎng)絡安全領域的人工智能技術,第四部分詳細介紹了一些基于人工智能的網(wǎng)絡安全方法,第五部分總結前文,并對后續(xù)可能的一些相關工作給出建議。
2、人工智能(Artificial Intelligence)概述
人工智能,在過去的十年來中一直是一個流行的概念。在1956年被首次提出之后,一直被描述為使用數(shù)字邏輯將事件形式化的一種方法,又稱為機器智能。
人工智能中使用復雜的數(shù)字算法去模擬人類思維。人工智能的技術可以基于事件中的各種信息去理解和學習各種知識。思維的角度可以分為兩個角度:思維推理過程以及行為。
可以看出,人工智能的方法更加側重于人類行為,側重于知識的表示和推理方法,然后開發(fā)智能代理。代理可以與其他的各種代理交互并交換互相的知識,尋找問題解決方案的過程就是在這種共享中完成的,每一個代理都是一個決策系統(tǒng)。
決策理論有兩個方面,診斷和前瞻。Jean Pomerol[1]等人研究了人工智能與診斷、表示和記錄人類知識有很多關系。由于前瞻性決策的不確定性,人工智能沒有給予足夠的關注,忽視了多屬性人類推理。Simon[2]等人提出了一個有限理性模型,以用來承認人類在決策過程的不同時刻使用了多種標準。人工智能的目標一直都是尋求一種新型的自動化智能。這種只能的反應就能夠像人類一樣。為了實現(xiàn)這一目標,機器需要精確學習,這意味著機器必須通過學習算法進行訓練。人工智能方法依賴于算法。并且,即便算法沒有太多改進,人工智能也可以通過使用大規(guī)模計算以及大數(shù)據(jù)的方法來進行暴力學習。
人工智能有三種工作方式:
- 輔助智能 改善人們已經(jīng)在做的事情。
- 增強的智能 使人們能夠做他們做不到的事情。
- 自主智能 這是機器自主行動的特征。
關于這三類,可以得出結論,人工智能旨在解決一些最困難的問題,而網(wǎng)絡安全屬于這一類,因為網(wǎng)絡攻擊已經(jīng)變得非常復雜,可能更具災難性,并成為網(wǎng)絡空間中的一個復雜問題。
3、網(wǎng)絡安全中的人工智能技術
這一部分將簡要概述人工智能領域的一些基本學習算法,并簡要介紹人工智能的分支,例如專家系統(tǒng)、機器學習、深度學習以及生物啟發(fā)計算等,都是在網(wǎng)絡安全領域會被經(jīng)常使用到的。
在機器學習中要使用到經(jīng)驗學習和訓練去提高機器性能。根據(jù)Mitchel[3]給出的定義:“如果一個計算機程序在T類任務中的性能(如P所測量的)隨著經(jīng)驗E的提高而提高,那么它就可以從經(jīng)驗E中學習某類任務T和性能度量P。”目前,訓練機有三種學習算法,定義如下:
有監(jiān)督學習:在這種類型的學習中需要有一個帶有大量標記的數(shù)據(jù)集的訓練過程。對數(shù)據(jù)集可以進行劃分,劃分出訓練集和測試集,訓練集訓練完成之后,使用測試集合數(shù)據(jù)進行驗證。學習方法通常使用分類機制或者是回歸機制?;貧w算法根據(jù)輸入的一個或者多個連續(xù)值數(shù)字生成輸出或者預測值。分類算法則是將數(shù)據(jù)分類,與回歸相反,分類算法生成離散輸出。
無監(jiān)督學習:與有監(jiān)督學習相反,無監(jiān)督學習使用的是沒有標記過的數(shù)據(jù)進行訓練。無監(jiān)督學習算法通常是用于對數(shù)據(jù)進行聚類,降維或者是數(shù)據(jù)密度估計。
強化學習:這種類型的算法是機器學習的第三大分支,是基于獎懲制度來學習最佳的行為。強化學習可以被認為是有監(jiān)督學習和無監(jiān)督學習的一種結合。適用于數(shù)據(jù)有限或者沒有給出數(shù)據(jù)的情況。[4]
人工智能技術包含有幾個子領域,將在下面對其進行描述:
- 專家系統(tǒng)(ES):也被稱為是知識系統(tǒng)。有兩個主要組件:一個是一組知識,這是專家系統(tǒng)的核心,包含著積累的經(jīng)驗;第二個組件是推理機,用于推理預定義的知識并找到給定問題的答案。根據(jù)推理方案,系統(tǒng)可以解決基于案例或者基于規(guī)則的推理。
- 基于案例的推理:這種推理假設過去的問題案例解決方案可以用于解決新的問題案例。會通過回顧過去的類似問題案例,對新的方案進行評估,并會根據(jù)需要進行修訂,然后將之添加到知識庫中,這樣可以不斷地學習新問題并不斷增加推理的正確率。
- 基于規(guī)則的推理:這種推理使用專家的規(guī)則來解決問題。規(guī)則由兩部分組成,條件和動作。問題分兩步進行分析,首先評估條件,然后采取相應適當?shù)拇胧?。與上述基于案例的推理不同,基于規(guī)則的系統(tǒng)不會自動學習新規(guī)則或者改變當前的學習規(guī)則。
專家系統(tǒng)可以用于網(wǎng)絡空間安全的決策問題。通常,當有進程或者軟件試圖對安全系統(tǒng)的數(shù)據(jù)進行修改的時候,專家系統(tǒng)會對其評估,檢查其是否惡意。專家系統(tǒng)通常會在合理的時間段內(nèi)分析大量的修改數(shù)據(jù)。這樣,專家系統(tǒng)可以通過實時監(jiān)控去支持上述工作。當感受到惡意進程的時候,專家系統(tǒng)會針對其生成警告信息,然后安全專家可以根據(jù)警告信息選擇對應的措施。
- 機器學習(ML):根據(jù)Arthur Samuel[5]給出的定義:“機器學習是一種方法,使計算機在沒有明確編程的情況下進行學習。”機器學習給我們提供了這樣一種系統(tǒng),可以發(fā)現(xiàn)并形式化數(shù)據(jù),并且可以從經(jīng)驗中學習改進。學習過程會從觀察示例數(shù)據(jù)開始,以用來觀察對應任務數(shù)據(jù)的模式,并能夠在未來出更好的決策。在有這些知識之后,系統(tǒng)可以看到更多未看到示例的屬性。
- 機器學習是通過統(tǒng)計數(shù)據(jù)來提取信息、發(fā)現(xiàn)模式并得出結論的。即使在使用大量數(shù)據(jù)的時候也是如此。機器學習算法大約可以分為三類:有監(jiān)督學習、無監(jiān)督學習、強化學習。在網(wǎng)絡安全領域最常用的算法有:決策樹算法、支持向量機、貝葉斯算法、K-近鄰算法、隨機森林、關聯(lián)規(guī)則算法、聚類算法、主成分分析等。
- 深度學習(DL):也被稱為深度神經(jīng)學習。它使用數(shù)據(jù)教計算機如何完成人類通常能夠完成的任務。DL包括ML,機器可以通過經(jīng)驗和技能進行主動學習而不需要人工干預。
深度學習采用了人腦和神經(jīng)元處理信號的工作機制,通過構建更為廣泛的神經(jīng)網(wǎng)絡去進行訓練,神經(jīng)網(wǎng)絡的精確度和性能會不斷的提高。由于日常創(chuàng)建數(shù)據(jù)的逐漸增加,深度學習被使用的也越來越頻繁。DL優(yōu)于ML的優(yōu)點之一就是因為它在面對大量數(shù)據(jù)的處理訓練的性能和結果的優(yōu)越性。與機器學習相似,深度學習也支持有監(jiān)督學習、無監(jiān)督學習和強化學習。通常用于網(wǎng)絡安全領域的深度學習算法通常包括:前饋神經(jīng)網(wǎng)絡、卷積神經(jīng)網(wǎng)絡、遞歸神經(jīng)網(wǎng)絡、生成對抗網(wǎng)絡、深度信念網(wǎng)絡等等。
- 生物啟發(fā)計算:它是一個智能算法和方法的集合,利用生物行為特性去解決廣泛的復雜問題 。傳統(tǒng)的人工智能創(chuàng)造的是智能,這是由機器演示過來的,由程序創(chuàng)造的。而生物啟發(fā)的計算則是始于一套簡單的規(guī)則和簡單的有機體,他們與這些規(guī)則緊密對應。在仿生計算中,以下技術最常用于網(wǎng)絡安全領域:遺傳算法、進化策略、蟻群優(yōu)化、粒子群優(yōu)化以及人工免疫系統(tǒng)等等。
4、基于人工智能的網(wǎng)絡空間安全技術
人工智能可以在短時間內(nèi)高效、準確地分析大量數(shù)據(jù)。利用威脅歷史,基于AI的系統(tǒng)可以了解過去的威脅,并利用這些知識預測未來的類似攻擊,即使它們的模式發(fā)生了變化。由于這些原因,人工智能可以在網(wǎng)絡空間中使用,人工智能可以發(fā)現(xiàn)攻擊中的新變化和重大變化,人工智能能夠處理大數(shù)據(jù),人工智能安全系統(tǒng)可以不斷學習,更好地應對威脅。
然而,人工智能也有一些局限性,例如:基于人工智能的系統(tǒng)需要大量數(shù)據(jù),處理這些龐大數(shù)據(jù)需要很長時間和大量資源,頻繁的錯誤警報是終端用戶的問題,延遲任何所需的響應都會影響效率。此外,攻擊者可以通過插入敵方輸入、數(shù)據(jù)中毒和模型竊取來攻擊基于AI的系統(tǒng)。科學家最近確定了如何利用人工智能技術來檢測、阻止和應對網(wǎng)絡攻擊。最常見的網(wǎng)絡攻擊類型可分為三大類:
- 軟件利用和惡意識別:
- 軟件利用:軟件中存在漏洞,總會有一部分是可利用漏洞。攻擊者會使用這些軟件漏洞攻擊底層軟件應用程序。比較流行的軟件漏洞包括:整數(shù)溢出、SQL注入、緩沖區(qū)溢出、跨站點腳本、跨站點請求偽造等等。人類去逐行檢查代碼會是一項復雜的任務。但是如果計算機被教導如何檢查,應該可以做到。Benoit Moral[6]描述了人工智能幫助提高應用程序安全性的方法。提倡使用基于知識的系統(tǒng)、概率推理和貝葉斯算法來檢測軟件漏洞。
- 惡意軟件識別:這是當下的一種常見的網(wǎng)絡攻擊方法。當前流行的惡意軟件的病毒包括有病毒、蠕蟲和特洛伊木馬等等。由于惡意病毒對網(wǎng)絡和社會的影響是巨大的,因此已經(jīng)有很多的研究被完成。列出一些研究,例如Chowdury[7]等人定義了一個使用數(shù)據(jù)挖掘和機器學習分類方法區(qū)隊惡意軟件進行分類和檢測的框架;H.Hashemi[8]等人使用K近鄰和支持向量機作為機器學習分類器來檢測位置惡意軟件;Y.Ye[9]等人構建了一個深度學習架構來檢測智能惡意軟件;N.McLaughlin[10]等人采用了深度卷積神經(jīng)網(wǎng)絡來識別惡意軟件;H.J.Zhu[11]等人定義了一種新的機器學習算法,叫做旋轉(zhuǎn)森林,以用來識別惡意軟件。
- 網(wǎng)絡入侵檢測:
- 拒絕服務(DoS):這種攻擊常發(fā)生在由于攻擊者的行動,授權用戶反而無法訪問信息、設備或者其他網(wǎng)絡資源的時候。Sabah Alzahrani[12]等人提出了一種基于異常的分布式人工神經(jīng)網(wǎng)絡和基于特征的方法,應用兩種不同方法進行防御。
- 入侵檢測系統(tǒng)(IDS):這個系統(tǒng)可以保護計算機系統(tǒng)免受異常事件或者違規(guī)威脅。由于人工智能技術的靈活性和快速學習的能力,適合于應用到開發(fā)入侵檢測系統(tǒng)中來。W.L. Al-Yaseen[13]等人將支持向量機以及K-means算法的新版本結合起來,創(chuàng)建了一個適用于IDS的模型;A.H. Hamamoto[14]等人將遺傳算法和模糊邏輯用于網(wǎng)絡入侵的檢測,用來預測指定時間間隔內(nèi)的網(wǎng)絡流量。
- 網(wǎng)絡釣魚和垃圾郵件檢測:
- 網(wǎng)絡釣魚攻擊:這種攻擊試圖竊取用戶身份。例如常聽說的暴力攻擊以及字典攻擊。針對這種攻擊,S.Smadi[15]等人介紹了一種網(wǎng)絡釣魚檢測系統(tǒng),利用了神經(jīng)網(wǎng)絡和強化學習的方法檢測釣魚郵件;F.Feng[16]等人采用蒙特卡洛算法和風險最小化方法,使用神經(jīng)網(wǎng)絡識別調(diào)用網(wǎng)站。
- 垃圾郵件檢測:指的是未經(jīng)允許的電子郵件,可能包含不適當?shù)膬?nèi)容并可能引發(fā)安全問題。Feng等人結合支持向量機和樸素貝葉斯算法來過濾垃圾郵件。
人工智能當前可以使用于網(wǎng)絡空間安全的各個領域,可以用來分析數(shù)據(jù)、攻擊檢測以及相應,并且還可以實現(xiàn)流程自動化,有助于網(wǎng)絡安全專家分析并確定網(wǎng)絡攻擊的方式和防御措施。目前的一些流行方法有威脅檢測和分類、網(wǎng)絡風險評分、自動化流程和優(yōu)化人工分析等等。
5、總結
網(wǎng)絡威脅正在快速增長,網(wǎng)絡攻擊的日益復雜,當前需要新的、更強大、以及可擴展的方法??梢钥吹剑诋斍盎谌斯ぶ悄艿木W(wǎng)絡安全算法主要的目的集中在惡意軟件檢測、網(wǎng)絡入侵檢測、網(wǎng)絡釣魚和垃圾郵件檢測等。研究都是通過利用不同人工智能技術去結合,產(chǎn)生了很好的結果。盡管人工智能解決網(wǎng)絡空間問題中的作用目前是不可避免的,但是對于一些基于人工智能的威脅和攻擊有關的問題還仍待解決。
參考文獻
[1] Jean-CharlesPomerol, “Artificial intelligence and human decision making,”. European Journal of Operation Research, March 1997, DOI: 10.1016/S0377-2217(96)00378-5 · Source: CiteSeer.
[2] Simon, H.A., “Reason in Human Affairs,”, Basil Blackwell, Oxford, 1983.
[3] Tom M. Mitchel, “Machine Learning,”. McGraw-Hill Science/Engineering/Math; March 1997, ISBN: 0070428077.
[4] Arulkumaran K, Deisenroth MP, Brundage M, et al., “Deep reinforcement learning: a brief survey.,”. IEEE SignalProcess Mag, 34(6):26-38, 2017. https://doi.org/10.1109/MSP.2017. 2743240.
[5] Arthur L. Samuel, “Some Studies in Machine Learning Using the Game of Checkers,”. IBM Journal, November 1967.
[6] Benoit Morel, “Artificial Intelligence a Key to the Future of Cybersecurity,”. In Proceeding of Conference AISec’11, October 2011, Chicago, Illinois, USA.
[7] Chowdhury, M., Rahman, A., Islam, R., “Malware analysis and detection using data mining and machine learning classification,”. In Proceedings of the International Conference on Applications and Techniques in Cyber Security and Intelligence, Ningbo, China, 16–18 June 2017; pp. 266-274.
[8] H. Hashemi, A. Azmoodeh, A. Hamzeh, S. Hashemi, “Graph embedding as a new approach for unknown malware detection,”. J. Comput. Virol. Hacking Tech. 2017, 13, 153-166.
[9] Y. Ye, L. Chen, S. Hou, W. Hardy, X. Li, “DeepAM: A heterogenous deep learning framework for intelligent malware detection,”. Knowledge Information System. 2018, 54, 265-285.
[10] N. McLaughlin, J. Martinez del Rincon, B. Kang, S. Yerima, P. Miller, S. Sezer, Y. Safaei, E. Trickel, Z. Zhao, A. Doupe, “Deep android malware detection,”. In Proc of the Seventh ACM on Conference on Data and application Security and Privacy, Scottsdale, AZ, USA, 22-24 March 2017, pp.301-308.
[11] H.J. Zhu, Z.H. You, Z.X. Zhu, W.L. Shi, X. Chen, L. Cheng, “Effective and robust detection of android malware using static analysis along with rotation forest model,”. Neurocomputing 2018, 272, 638-646.
[12] Sabah Alzahrani, Liang Hong, “Detection of Distributed Denial of Service (DDoS) attacks Using Artificial Intelligence on Cloud,”. In Proceedings of 2018 IEEE Conference, San Francisco, CA, USA, July 2018.
[13] W.L. Al-Yaseen, Z.A. Othman, M.Z.A. Nazri, “Multi-level hybrid support vector machine and extreme learning machine based on modified K-means for intrusion detection system,”. Expert Syst. Appl. 2017, 67, 296-303.
[14] A.H. Hamamoto, L.F. Carvalho, L.D.H. Sampaio, T. Abrao, M.L. Proenca, “Network anomaly detection system using genetic algorithm and fuzzy logic,”. Expert System Application. 2018, 92, 390-402.
[15] S. Smadi, N. Aslam, L. Zhang, “Detection of online phishing email using dynamic evolving neural network based on reinforcement learning,”. Decision Support System, 2018, 107, 88-102.
[16] F. Feng, Q. Zhou, Z. Shen, X. Yang, L. Han, J. Wang, “The application of a novel neural network in the detection of phishing websites,” Intelligent Humanizing Computation, 2018, 1-15.