Cloudflare近期宣布已開發(fā)了Firewall for AI(用于人工智能的防火墻),作為部署在大語言模型(LLM)前的保護層,用于識別和防止濫用模型的行為。
隨著AI模型,特別是大型語言模型的快速發(fā)展,客戶告訴我們,他們越來越關(guān)注能夠有效保護自有LLM的最佳安全策略-在接入互聯(lián)網(wǎng)的應(yīng)用程序中使用LLM會引入新的漏洞,可能會被不法分子所利用。
一些影響傳統(tǒng)網(wǎng)站和API應(yīng)用程序的漏洞也同樣會適用于LLM領(lǐng)域,包括注入或數(shù)據(jù)泄露。同時,由于LLM的運作方式,也隨之出現(xiàn)了一系列全新威脅。例如,研究人員最近在一個AI協(xié)作平臺中發(fā)現(xiàn)了一個漏洞,允許被利用來劫持模型并執(zhí)行未經(jīng)授權(quán)的操作。
Firewall for AI是一個高級的Web應(yīng)用程序防火墻(WAF),專為使用LLM的應(yīng)用程序量身定制。其中將包括一組工具,供部署在應(yīng)用程序前面,以檢測漏洞并為模型所有者提供可見性。這個工具包包括既有WAF已經(jīng)涵蓋的一部分產(chǎn)品,如速率限制和敏感數(shù)據(jù)檢測,以及一個目前正在開發(fā)中的全新保護層。這一全新驗證功能將分析最終用戶提交的提示詞,以識別利用模型提取數(shù)據(jù)的企圖和其他濫用嘗試。通過利用Cloudflare的全球網(wǎng)絡(luò)規(guī)模,F(xiàn)irewall for AI在盡可能靠近用戶的地方運行,使我們能夠提前發(fā)現(xiàn)攻擊,同時保護最終用戶和模型免受濫用和攻擊。
在深入介紹Firewall for AI如何運作及其完整功能集之前,讓我們首先看一下LLM的獨特之處,以及它們引入的攻擊面。我們將使用OWASP LLM應(yīng)用程序十大風險作為參考。
為什么LLM不同于傳統(tǒng)應(yīng)用程序?
在考慮基于LLM的互聯(lián)網(wǎng)應(yīng)用程序時,與傳統(tǒng)Web應(yīng)用程序相比,有兩個主要區(qū)別:
第一是用戶與產(chǎn)品交互的方式。傳統(tǒng)應(yīng)用程序本質(zhì)上確定性的。以銀行應(yīng)用程序為例,它是由一系列操作定義的(查看我的余額,進行轉(zhuǎn)賬等)。通過控制這些端點接受的一組具體操作:“GET/balance”或“POST/transfer”,即可確保業(yè)務(wù)操作(和數(shù)據(jù))的安全性。
LLM操作在設(shè)計上就是非確定性的。首先,LLM交互基于自然語言,這使得識別有問題的請求比匹配攻擊特性更為困難。此外,除非響應(yīng)被緩存,大語言模型通常每次都會提供不同的響應(yīng)——即使重復相同的輸入提示。因此,限制用戶與應(yīng)用程序互動的方式要困難得多。這也對用戶構(gòu)成了威脅,因為用戶可能會接觸到錯誤的信息,從而削弱對模型的信任。
其次,一個重大區(qū)別是應(yīng)用程序控制平面與數(shù)據(jù)交互的方式。在傳統(tǒng)應(yīng)用程序中,控制平面(代碼)與數(shù)據(jù)平面(數(shù)據(jù)庫)是明顯分離的。定義的操作是與底層數(shù)據(jù)交互的唯一方式(例如顯示我的支付交易歷史記錄)。這允許安全從業(yè)者可以專注于為控制平面添加檢查和防護措施,從而間接地保護數(shù)據(jù)庫。
LLM的不同之處在于,訓練數(shù)據(jù)通過訓練過程成為模型本身的一部分,因而極難控制在作為用戶提示的結(jié)果中的數(shù)據(jù)共享方式。人們正在探索一些架構(gòu)性解決方案,例如將LLM分成不同的層級并隔離數(shù)據(jù)。然而,快速有效的解決方案還未找到。
從安全角度來看,這些差異允許攻擊者設(shè)計針對LLM的全新攻擊手段,繞開為傳統(tǒng)網(wǎng)絡(luò)應(yīng)用程序設(shè)計的現(xiàn)有安全工具的監(jiān)測。
OWASP LLM漏洞
OWASP基金會發(fā)布了LLM十大漏洞清單,為考慮如何保護語言模型提供了一個有用的框架。其中一些威脅類似于OWASP的Web應(yīng)用程序十大漏洞,另一些則是語言模型所特有的。
類似于Web應(yīng)用程序,其中一些漏洞在LLM應(yīng)用程序設(shè)計、開發(fā)和訓練時就予以解決效果最佳。例如,訓練數(shù)據(jù)投毒可在用于訓練新模型的數(shù)據(jù)集中引入漏洞。當模型上線時,有害的信息就會呈現(xiàn)給用戶。供應(yīng)鏈漏洞和不安全的插件設(shè)計是添加到模型的組件(如第三方軟件包)中引入的漏洞。最后,處理過度代理時,管理授權(quán)和權(quán)限至關(guān)重要,因為不受約束的模型可能在更廣泛的應(yīng)用程序或基礎(chǔ)設(shè)施中執(zhí)行未經(jīng)授權(quán)的操作。
相反,通過采用像Cloudflare Firewall for AI這樣的代理安全解決方案,可以緩解提示詞注入、模型拒絕服務(wù)和敏感數(shù)據(jù)泄露等漏洞。接下來,我們將提供有關(guān)這些漏洞的更多細節(jié),并討論Cloudflare如何具備緩解這些風險的最佳優(yōu)勢。
LLM部署
語言模型的風險也取決于部署方式。目前,我們看到三種主要的部署方法:內(nèi)部、公共和產(chǎn)品LLM。以上三種情況下,您都需要保護模型免受濫用,保護模型中存儲的任何專有數(shù)據(jù),并保護最終用戶免受錯誤信息或不當內(nèi)容的影響。
-內(nèi)部LLM:公司開發(fā)LLM以支持員工的日常任務(wù)。這些模型被視為企業(yè)資產(chǎn),不應(yīng)該被非員工訪問。例如,一個以銷售數(shù)據(jù)和客戶交互訓練的AI co-pilot用于生成定制化提案,或者一個以內(nèi)部知識庫訓練的LLM供工程師進行查詢。
-公共LLM:這些是可以在公司邊界之外訪問的LLM。這些解決方案通常提供任何人都可以使用的免費版本,它們通常是使用一般或公共知識訓練的。例如OpenAI的GPT或Anthropic的Claude。
-產(chǎn)品LLM:從企業(yè)角度看,LLM可以成為提供給客戶的產(chǎn)品或服務(wù)的一部分。這些通常是自托管的、定制化的解決方案,可以由作為與公司資源互動的工具提供。例如客戶支持聊天機器人或Cloudflare AI Assistant。
從風險角度來看,產(chǎn)品和公共LLM之間的區(qū)別在于哪個會直接承受惡意攻擊帶來的影響。公共LLM被認為威脅到數(shù)據(jù),因為最終進入模型的數(shù)據(jù)可以被幾乎任何人訪問。這就是許多公司建議員工不要在公開可用服務(wù)的提示中使用保密信息的原因之一。如果模型在訓練過程中(按照設(shè)計或意外地)訪問了專有信息,產(chǎn)品LLM可以被視為對公司及其知識產(chǎn)權(quán)的威脅。
Firewall for AI
Cloudflare Firewall for AI將如同傳統(tǒng)WAF一樣部署,對每一個帶有LLM提示的API請求進行掃描,以尋找潛在攻擊的模式和特征。
Firewall for AI可部署托管于Cloudflare Workers AI平臺的模型前面,或者托管于任何第三方基礎(chǔ)設(shè)施上的模型前面。它可以與Cloudflare AI Gateway一起使用,客戶將能使用WAF控制平面來控制和設(shè)置Firewall for AI。
Firewall for AI的工作方式類似于傳統(tǒng)的Web應(yīng)用程序防火墻。它部署在LLM應(yīng)用程序前面,并掃描每個請求以識別攻擊特征。
防止容量耗盡攻擊
OWASP列出的威脅之一是模型拒絕服務(wù)攻擊。類似于傳統(tǒng)應(yīng)用程序,DoS攻擊是通過消耗異常大量的資源來執(zhí)行的,這會導致服務(wù)質(zhì)量降低或可能增加模型運行成本。鑒于LLM運行所需的資源量和用戶輸入的不可預測性,這種類型的攻擊可能會造成破壞。
通過采用速率限制策略來控制單個會話的請求速率,從而控制上下文窗口,可以緩解這種風險。通過Cloudflare代理您的模型,您將獲得開箱即用的DDoS防護。您還可以使用速率限制和高級速率限制,通過設(shè)置會話期間單個IP地址或API密鑰執(zhí)行的請求的最大速率,以管理對模型的請求速率。
通過敏感數(shù)據(jù)檢測功能識別敏感信息
有兩種適用于敏感數(shù)據(jù)的用例,取決于您是否擁有模型和數(shù)據(jù),還是想要防止用戶將數(shù)據(jù)發(fā)送到公共LLM。
根據(jù)OWASP的定義,敏感數(shù)據(jù)泄露是指LLM無意中在響應(yīng)中透露了機密數(shù)據(jù),導致未經(jīng)授權(quán)的數(shù)據(jù)訪問、隱私侵犯和安全漏洞。防止這種情況的一種方法是添加嚴格的提示驗證。另一種方法是在個人身份信息(PII)離開模型時予以識別。一種相關(guān)的情況是當模型是使用公司知識庫訓練時,其中可能包含敏感信息,例如PII(如社會安全號碼)、專有代碼或算法。
客戶使用位于Cloudflare WAF后面的LLM模型時,可以使用敏感數(shù)據(jù)檢測(SDD)WAF托管規(guī)則集來識別模型在響應(yīng)中返回的特定PII??蛻艨梢栽赪AF安全事件中查看SDD匹配項。SDD以一套托管規(guī)則的形式提供,設(shè)計為掃描財務(wù)信息(例如信用卡號)以及機密(API密鑰)。作為路線圖的一部分,我們計劃允許客戶創(chuàng)建自己的自定義指紋。
另一個用例旨在防止用戶與外部LLM提供商(例如OpenAI或Anthropic)共享PII或其他敏感信息。為了防范這種情況,我們計劃擴展SDD以掃描請求提示,并將其輸出與AI Gateway集成,在那里,依據(jù)請求的歷史記錄,我們會檢測請求中是否包含特定敏感數(shù)據(jù)。我們將從使用現(xiàn)有的SDD規(guī)則開始,并計劃允許客戶編寫自己的自定義特征。與此相關(guān)的,我們還聽到很多客戶談?wù)摰牧硪粋€功能是混淆。一旦可用,擴展的SDD將允許客戶在提示詞到達模型之前,混淆特定敏感數(shù)據(jù)。對應(yīng)請求階段的SDD正在開發(fā)中。
防止模型濫用
模型濫用是一種更為廣泛類型的濫用。其中包括像“提示詞注入”的方法,即提交的請求讓模型產(chǎn)生幻覺,或?qū)е虏粶蚀_、冒犯性、不適當或完全偏離主題的響應(yīng)。
提示詞注入是通過特別構(gòu)造的輸入來操縱語言模型的一種嘗試,導致LLM產(chǎn)生非預期的回應(yīng)。注入會產(chǎn)生各種結(jié)果,從提取敏感信息到通過模仿與模型的正?;觼碛绊憶Q策。提示詞注入的一個經(jīng)典例子是操縱簡歷以影響簡歷篩選工具的輸出。
從我們的AI Gateway客戶處聽到的一個常見用例是,他們想要避免應(yīng)用程序產(chǎn)生有毒、冒犯性和有問題的語言。不對模型的結(jié)果進行控制的風險包括聲譽損害和通過提供不可靠的回應(yīng)而損害最終用戶。
通過在模型前面增加一個額外的保護層,可以管理這些類型的濫用。這一保護層可以被訓練用來阻止注入嘗試或阻擋那些屬于不適當類別的提示詞。
提示詞和響應(yīng)驗證
Cloudflare Firewall for AI將運行一系列檢測,旨在識別提示詞注入嘗試和其他濫用行為,比如確保主題停留在模型所有者定義的邊界內(nèi)。就像其他現(xiàn)有的WAF功能一樣,F(xiàn)irewall for AI將自動尋找HTTP請求中嵌入的提示詞,或允許客戶根據(jù)在請求的JSON主體中可以找到提示詞的位置來創(chuàng)建規(guī)則。
一旦啟用,防火墻將分析每個提示詞并根據(jù)其是惡意的可能性提供一個評分。它還會根據(jù)預定義的類別對提示詞進行標記。評分范圍從1到99,代表提示詞注入的可能性,1表示最有可能。
客戶將能夠創(chuàng)建WAF規(guī)則,以阻止或處理在一個或兩個維度中具有特定評分的請求。您將能夠?qū)⑦@一評分與其他現(xiàn)有信號(例如機器人評分或攻擊評分)結(jié)合起來,以確定應(yīng)該允許請求到達模型,還是應(yīng)該予以阻止。例如,可以將之與機器人評分結(jié)合使用,以識別請求是否惡意及是否由自動化來源產(chǎn)生。
檢測提示詞注入和提示詞濫用是Firewall for AI范圍的一部分。產(chǎn)品設(shè)計的早期迭代。
除了評分外,我們還將為每個提示詞分配標記,這些標記可在創(chuàng)建規(guī)則時使用,以防止屬于這些類別中的任一提示詞到達其模型。例如,客戶將能夠創(chuàng)建規(guī)則以阻止特定主題。例如,使用攻擊性詞匯,或與宗教、性內(nèi)容或政治相關(guān)的詞匯。
如何能夠使用Firewall for AI?
已經(jīng)在使用Application Security Advanced的Enterprise客戶可立即開始使用高級速率限制和敏感數(shù)據(jù)檢測(響應(yīng)階段)功能。這兩個產(chǎn)品都位于Cloudflare儀表板的WAF部分。Firewall for AI的提示詞驗證功能目前正在開發(fā)中,測試版將在未來幾個月內(nèi)向所有Workers AI用戶開放。
總結(jié)
Cloudflare是率先推出AI應(yīng)用程序保護工具套件的安全提供商之一。通過使用Cloudflare Firewall for AI,客戶可以控制哪些提示詞和請求可以到達他們的語言模型,從而減少濫用和數(shù)據(jù)泄露的風險。
Cloudflare保護整個企業(yè)網(wǎng)絡(luò),幫助客戶高效構(gòu)建互聯(lián)網(wǎng)規(guī)模的應(yīng)用程序,加速任何網(wǎng)站或互聯(lián)網(wǎng)應(yīng)用程序,抵御DDoS攻擊,防止黑客入侵,并能協(xié)助您實現(xiàn)Zero Trust的部署與實施。