不論是服務業、金融、醫療還是零售,大型語言模型(LLM)應用幾乎在各項領域遍地開花,資安也不例外。但,與大部分產業一樣,在資安領域使用LLM,也有不少先天條件要滿足,才能真正提高工作效率。
LLM用於資安領域的3大條件
奧義智慧科技資料科學家陳樞元在臺灣資安大會上就舉例,若將日常使用的ChatGPT用於資安領域,首先會有「隱私的隱憂。」尤其OpenAI在今年1月31日實施新隱私政策,表明會收集使用者內容等個人資訊,如提問中的地址,就有資訊洩漏的風險。
再來,「ChatGPT的安全機制設計,常拒絕回答資安問題!」陳樞元說明,比如提問「有什麼專門用於散布惡意軟體的服務出現嗎?」,ChatGPT會回答「我很抱歉,但我不能提供任何有關散布惡意軟體的信息...(略)」。這個限制,讓資安人員難以透過ChatGPT取得所需訊息。
既然如此,開發者用Llama這類開源LLM,自行打造為資安助理可行嗎?
「答案是不行。」因為,這類開源LLM的繁體中文訓練極少,比如BLOOM所用的中文訓練資料占比為16.2%,繁體中文資料只占0.05%,因此模型容易給出簡體中文回答或用語,不符合臺灣使用情境。這也意味著,開發者得先用繁體中文資料優化模型,讓模型學會繁中用語,才適合產業應用。
綜合起來,LLM要用於資安助理,得先兼顧隱私性、資安背景知識和臺灣本土文化這3大條件才行。
選定3種繁中LLM,建置QA集和評估指標
於是,陳樞元看上3個已用繁中資料優化、具備臺灣文化的LLM,並評估這些模型在資安領域的適用性。她強調,這個評估只限資安領域,規模就像是個小實驗,並非學術研究,且評估模型為去年12月底的最新70億參數(即7B)版本。
這3個本土化繁中LLM包括國科會TAIDE模型(b.11.0.0版)、奧義自建的CyCraftGPT模型(CyCraftGPT-V5版)以及臺大資工系陳緼儂師生團隊的Taiwan LLM(7B-v2.1版)。
其中,TAIDE由國科會領軍打造,以Llama 2模型為基礎,採用辭典、法規資料庫、學術會議論文摘要等政府公開繁中資料優化而成。CyCraftGPT則是奧義專為臺灣資安情境打造的模型,以Mistral-7B模型為基礎,以繁中資安資料訓練而成。至於Taiwan LLM也以Llama 2為基礎,使用社群媒體、時事新聞和法律文件等繁中資料優化而成。
而評估流程,則由陳樞元建立資安問答集,讓模型針對問答集的問題來回答,最後透過Flask框架來評分模型回答。值得注意的是,此處的Flask框架並非開發界常見的Python套件包,而是去年才推出的模型回答評分框架。
於是,為建立資安問答集,陳樞元先用GPT-4,將國外新聞網站The Register的資安類英文新聞翻譯成繁體中文,並人工檢查翻譯品質。無誤後,再輸入提示,讓GPT-4生成繁中資安QA資料集。在這個步驟中,陳樞元提示要求GPT-4扮演2個角色,首先是民眾角色,要根據資安新聞提出問題,再由另一個專家角色,來根據新聞和民眾提問回答問題。如此,就能產生一組問答,累積起來就組成一個問答集。當然,提示也要求GPT-4必須使用繁體中文回答,不得出現簡中內容。
最後,陳樞元用這個方法產生了50筆問答資料,也因為量不多,她可以人工檢驗每筆資料,比如是否皆為繁中。她點出,用GPT-4產生資料集有2個好處一是效率高,不需人工干預、只要有新聞資料就能生成資料集,再來,也正因為使用新聞驗證的資料,正確性也高。
除了資料集的準備,她也修改了評分專用的Flask框架,將原本只適用於英文內容評分的Flask,調整為可對繁體中文內容分析。
至於Flask如何運作,可把它想像為評審員,其心目中最理想的答案就是問答集中的答案,以此來對不同模型產出的回答評分。不只如此,Flask評分也要有評分指標與基準,陳樞元因此根據臺灣資安領域特性,調整既有指標,設定出事實性、隱私性、執行力、無害性、簡潔性和本土化等指標。
接著,Flask會根據這些指標,來對模型答案給出1至5分的評分和評語,來解釋評分的原因。
繁中LLM的資安應用實測
在實測階段,陳樞元用資料集的所有問題來評估這3款繁中LLM。她現場也以一組標準QA為例,來分享模型的回答表現。這個例子的標準問答是「組織如何保護K8s叢集,不被Siloscape這樣的惡意軟體攻破?」與「...(略)包括適當限制節點的權限、使用多因素驗證和最新的security patch,並定期進行安全檢查...(略)」。
首先,以CyCraftGPT來說,它的回答重點為使用安全工具,如CloudHealth Secure State提供的K8s清單和叢集建構圖標、使用eBPF技術從節點收集訊號等。它的評分為簡潔性3分、事實性4分、執行力3分、無害性和隱私性各5分。Flask說明評分,就事實性來說,回答中的工具和技術都是實際存在的,不過CyCraftGPT並未提到如何具體使用這些工具或技術的細節,因此少了1分。
以TAIDE而言,則給出冗長回答,且回答中包含許多難辨真假的英文簡寫,也會給出重複的答案,比如建議措施有「使用最新版本的K8s軟體和所有相關元件」、「確保所有元件(包括K8s、容器、作業系統等)處於最新狀態」等。Flask評分為簡潔性3分、事實性1分、執行力1分、無害性1分、隱私性5分,其中事實性的分數說明點出,TAIDE提到一些不存在的工具和概念,如RunCIF、Kubeboost等。
至於Taiwan LLM也給出長篇答案,回答中的7項建議作法,僅有2項正確。Flask評分為簡潔性2分、事實性1分、執行力1分、無害性和隱私性各5分,其事實性評分說明,模型給出的「Siloscape是一家開源安全公司」說法並不正確,應為惡意軟體,且回答中的一些措施現實中並不存在,如處理器密集部分(PCP)技術。
3大繁中LLM用於資安的優劣勢
經過各個QA測試,陳樞元總結這3大繁中LLM應用於資安的表現和優劣勢。就6大指標表現來說,TAIDE的事實性分數為3者中最高,其次是CyCraftGPT和Taiwan LLM。不過,隱私性和無害性分數排名則倒過來,Taiwan LLM最高,CyCraft GPT以些微差距居次。執行力部分則由TAIDE領先,簡潔性和本土性由CyCraft高分居冠。
她也以個別模型細說,首先,TAIDE語句順暢、內容詳細,並未使用簡體字,但回答冗長,通常有10條條列式答案,有時會全英文回答,並有大陸用語出現(21/50),如信息、黑客、接口等。因此她認為,TAIDE適用於提供條列式、資安方面的詳細解說。
至於CyCraftGPT,一樣語句順暢、沒有簡體字,少有大陸用語(3/50),內容簡短明確,但也因此缺少證據佐證。陳樞元點出,CyCraftGPT這些特性適合提供語句式、資安領域的大綱與簡介。
Taiwan LLM雖沒出現簡體字,但語句偶爾不通順、有較多大陸用語(39/50)、回答冗長,且回答時偶爾重複一樣的內容。陳樞元表示,該模型在資安領域的大陸用語很多,且容易答錯,因此應用於資安領域,需斟酌三思。
她總結,能做到不含簡體字、不含大陸用語且懂臺灣本土文化的LLM非常少,因此用於特定領域時,應先微調再使用。而此次測試的3個繁中LLM各有所長,若要應用,得要找出符合情境需求的模型,才能發揮效果。文⊙王若樸
熱門新聞
2024-12-02
2024-11-29
2024-12-02
2024-11-30
2024-12-02