隨著人工智慧 (AI) 的不斷發展,各組織和政府都在競相探索其最佳應用場景。雖然 ChatGPT 和其他大型語言模型 (LLM) 已經吸引了媒體的關注,但 AI 的潛在用途遠不止文字產生。安全領域就是其中之一:尤其是辨識軟體漏洞這種重複性、大規模的任務。
但 AI 能否帶來更好的資安成效,取決於是誰(或什麼)在進行漏洞識別,以 及其目的是什麼。
軟體中的某些缺陷本質上是良性的。但有些缺陷(也就是所謂的漏洞)卻可能讓利用這些缺陷的人在系統中立足,進而導致系統被入侵。很大一部分的網路安全做法都致力於識別和修補這些漏洞。
被利用而導致入侵的漏洞數量太多,無法一一列舉,一些引人注目的事件範例包括:
2017 年 Equifax 資料外洩事件,始於一個未修補的漏洞
2022 年 LastPass 外洩事件的部分原因是第三方軟體中的漏洞
2023 年,挪威政府的 IT 系統因零時差漏洞而遭到駭客攻擊
漏洞遭到利用所帶來的後果可能是災難性的,從資料外洩到勒索軟體感染,甚至可能導致組織系統癱瘓。為了避免這類事件發生,組織必須盡可能快速地識別並 修補漏洞。
分析複雜的軟體程式以查找錯誤是一項重複性工作,似乎非常適合自動化。著名技術專家 Bruce Schneier 曾指出:「如果我們能教會電腦漏洞的本質,那麼逐行檢查程式碼正是電腦擅長的那種繁瑣工作。」
事實上,機器學習(AI 的一個子領域)早已被用來尋找程式碼中潛在的漏洞。例如,GitHub 在其程式碼掃描功能中加入了機器學習,可以識別程式碼中的安全漏洞。當然,這種方法有時會產生誤判,但當與人工分析相結合時,訓練有素的機器學習模型可以加速漏洞識別。
隨著人工智慧以飛躍式的速度不斷進步,如今已有機會訓練這項技術,使其能更有效地發現漏洞。事實上,美國國防高等研究計畫署 (DARPA) 在 2023 年宣佈了一項名為「安全工具智慧產生」(Intelligent Generation of Tools for Security,簡稱 INGOTS)的項目。(值得一提的是,DARPA 也是 ARPANET 的建立者,而 ARPANET 正是今日網際網路的前身。)
該專案「旨在透過程式分析和人工智慧驅動的新技術來測量漏洞,從而在攻擊者利用漏洞之前識別並修復高 嚴重性、可鏈接的漏洞」。INGOTS 專注於在「Web 瀏覽器與行動作業系統之類的現代化、複雜的系統」中尋找漏洞。
但 AI 真的擅長發現漏洞嗎?DARPA 旨在找出答案,但他們的計畫仍處於探索階段。
早在 2016 年,DARPA 就舉辦了「網路大挑戰賽」(Cyber Grand Challenge),當中有七支由工程師組成的團隊打造出能自主運作的 AI 駭客程式,並讓它們在一場數位版的「奪旗賽」中相互對抗。這項比賽的目的是測試自動化程式在攻擊安全系統方面的表現。經過數小時的競賽,由卡內基美隆大學團隊所設計的程式「Mayhem」最終贏得了比賽。
DEF CON 2016 大會當時正在附近舉行,「Mayhem」受邀參加 DEF CON 自己舉辦的「奪旗賽」,與人類駭客同場較量。結果 Mayhem 名列最後一名,而且差距相當懸殊。
自那時以來,AI 取得了長足的進步,研究人員也不斷發佈用於漏洞發現的機器學習模型。但即使是最新的機器學習模型所分析的軟體,仍需要手動審核,以避免誤判或漏報。
不可否認,AI 可以發現漏洞。但人類滲透測試似乎仍然佔有一席之地。將來,隨著 AI 變得更加強大,這種情況可能會改變。
修補漏洞需要編寫程式碼來修復缺陷。AI 工具當然可以產生程式碼。但要做到這一點,它們需要人類使用者產生特定的提示。
甚至 INGOTS 也不打算完全依賴自動化流程來修復漏洞,而是希望能「建立一個人機協作的流程,讓人類能夠順暢地介入,以修復高嚴重性的漏洞」。
但同樣的注意事項仍然適用:隨著 AI 技術愈發先進,未來它或許能夠快速且高效地生成漏洞修補程式。
如果一種工具或技術被廣泛使用,那麼不可避免的是,一方會利用它來保護系統免受攻擊,而另一方則會利用它來發動攻擊。
如果 AI 能夠有效地發現並修補軟體中的漏洞,那麼攻擊者肯定會利用它來在這些漏洞被修補之前找到它們並編寫漏洞利用程式。
並非所有網路攻擊者都能獲得此類資源。但擁有此類資源的人可能會毫不猶豫地將其 AI 發現的漏洞或編寫的漏洞利用程式在暗網上賣給出價最高的人。惡意程式碼作者已經將 AI 融入他 們的工具中,隨著 AI 的進步,他們肯定會繼續這樣做。
在合法的軟體開發人員與惡意的攻擊者之間一種升級中的、由 AI 推動的「軍備競賽」正逐漸成形。在這場競賽中,漏洞可能會被瞬間識別並加以利用,或者同樣迅速地被修補(希望如此)。
當然,攻擊者早已在程式碼中尋找尚未被發現的漏洞——這類「零時差」漏洞極具價值,發現者可以選擇用它來入侵系統,也可以在地下市場以高價出售。惡意使用 AI 或許會成為改變遊戲規則的關鍵,但說到底,這仍舊是同一場遊戲。
與修補一樣,這是可能的,但此過程仍然需要人工指導。因此,它實際上可能無法為攻擊者節省任何人力——而且他們中的許多人還是會購買漏洞利用套件,而不是編寫自己的程式碼。
答案可能會在 10 甚至 5 年後發生變化,安全人員應該為針對其係統的一波全自動漏洞利用做好準備。
所有網路都容易遭到入侵——事實上,只要有足夠的時間和堅定的攻擊者,入侵是不可避免的。
儘管 AI 為尋求系統安全保護的一方帶來了全新的漏洞發現方式,但攻擊者也會使用相 同的方法,試圖先行發現漏洞,或至少在漏洞被修補之前就發現它們。AI 正逐漸成為攻擊者工具箱中的新工具,就像它也是防禦者的重要利器一樣。
具有前瞻性思維的組織首先假設已經發生了入侵:他們的安全措施可能會失敗,他們的資料處於危險之中,攻擊者可能已經進入網路。
他們假定其面向外部的安全措施並非總是完美無缺,因此對網路進行微分段,確保在攻擊者入侵某一個網段的情況下,也無法輕易擴展到其他區域。這就像船隻被分隔成多個水密艙室一樣,即使某個艙室進水,也能防止漏水蔓延至整艘船。理想情況下,安全團隊可以使用同樣的方法來遏制攻擊的擴散。
這種方法被稱為「Zero Trust」,而這套理念之所以越來越被廣泛採用,是有其堅實理由的。隨著 AI 工具使得漏洞利用變得更加精密與自動化,Zero Trust 架構能協助確保這些攻擊被侷限在網路的某一小部分,讓攻擊者永遠無法獲得足夠的立足點來造成實質性的損害。
漏洞利用的發現速度可能會加快,但 Zero Trust 技術才是最有希望的前進之路。Cloudflare 是唯一將安全 Web 閘道、DNS 篩選和資料丟失預防 (DLP) 等 Zero Trust 技術整合到一個平台並配備統一儀表板的廠商,而且該統一平台的存取點遍布全球。Cloudflare 網路的分散式特性使其能夠在雲端和內部部署應用程式之間實施細粒度的預設拒絕存取控制,而不會增加使用者體驗的延遲。
事實上,Cloudflare 已採取 Zero Trust 方法來保護自己的網路和員工免受攻擊。深入瞭解 Cloudflare 如何協助組織實現同樣的目標。
Cloudflare 就影響當今技術決策者的最新趨勢和主題發表了一系列文章,本文為其中之一。
閱讀《Zero Trust 架構藍圖》白皮書,深入瞭解 Zero Trust。
閱讀本文後,您將能夠瞭解:
為什麼 AI 適合用來發現漏洞(但也有一些注意事項)
安全斗爭的雙方如何使用自動化來利用或修補漏洞
為什麼假定入侵是最安全的方法