討論AI/ML如何促進網絡安全之前,先建立對AI/ML的正確認知

一直在寫一篇關於人工智能和機器學習在網絡安全應用現狀的文章,由於時間忙,而且這個領域發展太迅速,遲遲沒有成稿。藉着年初Gartner的分析師Augusoto Barros發表的一個博文,先談一個問題:即建立對AI/ML應用網絡安全的正確認知,知其所能所不能,先冷靜下來,再看看其所能帶來的價值。

下面是我的翻譯,其中【】中的是我的註釋和一點理解。


在理解供應商如何使用ML進行威脅檢測的時候有一個非常重要的點需要關注。

通常ML用於識別已知行爲,但具有可變參數。這是什麼意思?這意味着很多時候我們都知道壞的樣子,但不知道確切是什麼樣子。

例如,我們知道數據泄露嘗試通常會利用某些協議,例如DNS。但是,通過DNS進行的數據泄露可以通過多種方式完成。因此,我們要檢測它的方法是使用ML算法,根據某些參數來學習正常行爲。諸如每個查詢的數據量,查詢頻率等等。這些參數的異常可能指向***嘗試。

在這種情況下,ML幫助我們找到我們已經知道的東西,但由於我們對已知的定義實在太過模糊,以至於無法使用簡單的規則來檢測它。這是用於檢測威脅檢測的相關異常的無監督ML的示例。還有許多使用有監督的ML來學習不良行爲的模糊特徵的例子。但正如您所看到的,人類必須瞭解威脅,及其運作方式,然後定義可以檢測該威脅相關活動的ML模型。

【請仔細思考一下,ML其實是幫助我們更好地知所已知。如果說ML可以幫我們知所未知的話,其實只是我們無法確切地描述出已知的樣子而已。我們通過ML去從海量日誌中找尋異常,我們不知道異常具體的樣子,但我們知道異常大概什麼樣子,我們也知道正常應該是什麼樣子,於是我們基於這些先驗知識去建立ML模型,無論是有監督的還是無監督的,我們讓ML去工作的時候是有指向性的,然後ML運行的結果揭示了我們想象中的異常,對於這些異常的可解釋性也並未超出我們現有的認知。】

如果您要尖叫“深度學習!”,那麼請停止吧。您仍然需要知道深度學習要查看哪些數據,如果您使用它來了解壞的長什麼樣,您仍然需要告訴它什麼是壞的。(與ML相比)我們最終在同一個地方。

【不要高估當前的深度學習所能達成的目標。其要能發揮價值還需要大量的先驗知識的輸入。】

雖然基於ML的檢測是一種不同的檢測方法,但該過程仍然與簽名的開發方式非常相似。

利用AI去找到人類未定義的威脅這一訴求迄今尚未達成。大多數供應商使用誤導性語言來引導人們認爲他們可以做到這一點,但這並不存在。考慮到這一現實,我對這些供應商最喜歡的問題通常是“您如何確保正確識別新威脅並開發新模型以識別它們”?人們購買“AI”並繼續依賴供應商提供的人工技能來保持它有用,這不是很有趣嗎?

【不是說AI/ML不好,或者說沒有什麼突破,而是說需要正確的認識AI/ML現階段所能達成的效果,機器還不能取代人。客戶在諮詢有關AI/ML的問題時,與其去問那些不切實際的問題,不如問些靠譜的問題,譬如“你們如何更新你們的ML模型”,“你們如何識別最新的威脅,並將升級後的識別模型給到我們”,“我們可以自己定義ML模型識別我們認爲的威脅嗎”。】

如果您是這些技術的用戶,您通常需要知道供應商如何做到讓他們的產品/工具的識別能力看起來與新威脅保持一致。對於成熟的商家,您還需要知道該產品/工具是否允許您在需要的時候可以自己去同步識別最新的威脅。

這是與“安全AI”供應商開始對話的好方法。看看他們有多快陷入我們能找到未知的未知的陷阱。

【我一直比較喜歡用知所已知、知所未知、前所未知來描述安全分析(security analysis)的三個能力層次。對應的英文就是known knowns, known unknowns, unknown unknowns。這三個詞最著名的引用來自於當年美國國防部長拉姆斯菲爾德在對伊戰進行辯護時的講演。通過下圖可以看出這可以對應我們安全分析的三個層次。

image.png

知所已知:把我們確切知道的東西找出來,譬如基於規則的關聯分析,基於特徵簽名的惡意代碼和******的檢測;

知所未知:在我們已知的基礎上去拓展發現未知的東西。雖然我們不知道未知具體長什麼樣,但我們對這些未知有個基本的輪廓,也知道去探究它們的方向和路徑。譬如當前基於AI/ML建模的安全分析去識別異常,包括有監督的ML和無監督的ML

前所未知:從未知去探索更大的未知,沒有任何先驗知識的輸入,對於究竟能發現出什麼也毫無所知。這是未來AI努力的一個方向,但尚未有可以在安全領域落地的應用成果。】


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章