保護您的生成式 AI 應用程式
簡介
本課程將涵蓋:
- AI 系統背景下的安全性。
- AI 系統常見的風險和威脅。
- 確保 AI 系統安全的方法和考量。
學習目標
完成本課程後,您將了解以下內容:
- AI 系統的威脅和風險。
- 保護 AI 系統的常見方法和實踐。
- 如何通過實施安全測試來防止意外結果和用戶信任的流失。
在生成式 AI 的背景下,安全性意味著什麼?
隨著人工智慧(AI)和機器學習(ML)技術日益影響我們的生活,保護不僅是客戶資料,還有AI系統本身變得至關重要。AI/ML越來越多地用於支持高價值決策過程的行業中,錯誤的決策可能會導致嚴重的後果。
以下是需要考慮的關鍵點:
- AI/ML 的影響: AI/ML 對日常生活有重大影響,因此保護它們變得至關重要。
- 安全挑戰: 需要適當關注 AI/ML 的這種影響,以解決保護基於 AI 的產品免受複雜攻擊(無論是由噴子還是有組織的團體發起)的需求。
- 戰略問題: 科技行業必須積極應對戰略挑戰,以確保長期的客戶安全和數據安全。
此外,機器學習模型在很大程度上無法辨別惡意輸入和良性異常數據。訓練數據的一個重要來源是來自未經策劃、未經審核的公共數據集,這些數據集對第三方貢獻開放。攻擊者不需要破壞數據集,因為他們可以自由地對其進行貢獻。隨著時間的推移,低置信度的惡意數據會變成高置信度的可信數據,只要數據結構/格式保持正確。
這就是為什麼確保資料存儲的完整性和保護對於您的模型做出決策至關重要。
理解 AI 的威脅和風險
在 AI 和相關系統方面,數據投毒是當今最顯著的安全威脅。數據投毒是指有人故意更改用於訓練 AI 的資訊,導致其犯錯。這是由於缺乏標準化的檢測和緩解方法,加上我們依賴不受信任或未經整理的公共數據集進行訓練。為了維持數據完整性並防止訓練過程出現缺陷,追踪數據的來源和沿革至關重要。否則,古老的諺語「垃圾進,垃圾出」將成為現實,導致模型性能受損。
以下是資料污染如何影響你的模型的範例:
- 標籤翻轉: 在二元分類任務中,對手故意翻轉一小部分訓練數據的標籤。例如,將良性樣本標記為惡意,導致模型學習到錯誤的關聯。 範例: 由於標籤被操縱,垃圾郵件過濾器將合法郵件誤分類為垃圾郵件。
- 特徵中毒: 攻擊者微妙地修改訓練數據中的特徵以引入偏見或誤導模型。 範例: 在產品描述中添加無關鍵字以操縱推薦系統。
- 數據注入: 將惡意數據注入訓練集以影響模型的行為。 範例: 引入虛假用戶評論以扭曲情感分析結果。
- 後門攻擊: 對手在訓練數據中插入隱藏模式(後門)。模型學會識別這種模式,並在被觸發時表現出惡意行為。 範例: 一個面部識別系統使用帶有後門的圖像進行訓練,導致錯誤識別特定人員。
MITRE Corporation 已經建立了ATLAS (Adversarial Threat Landscape for Artificial-Intelligence Systems),這是一個知識庫,包含在現實世界中對 AI 系統進行攻擊時對手所使用的策略和技術。
隨著 AI 的融入增加了現有系統的攻擊面,AI 驅動系統中的漏洞數量也在不斷增加。我們開發了 ATLAS 以提高對這些獨特且不斷演變的漏洞的認識,因為全球社群越來越多地將 AI 融入各種系統。ATLAS 參考了 MITRE ATT&CK® 框架,其策略、技術和程序(TTPs)與 ATT&CK 中的內容互補。
與廣泛用於傳統網路安全中規劃高級威脅模擬場景的MITRE ATT&CK®框架非常相似,ATLAS提供了一組易於搜尋的TTPs,這有助於更好地理解和準備防禦新興攻擊。
此外,開放網路應用程式安全計畫(OWASP)已經建立了一個前10名清單,列出了在使用LLM的應用程式中發現的最嚴重漏洞。該清單強調了威脅的風險,例如前述的資料中毒以及其他如:
- Prompt Injection: 一種技術,攻擊者通過精心設計的輸入操縱大型語言模型(LLM),使其行為超出預期範圍。
- Supply Chain Vulnerabilities: 構成LLM應用程式的組件和軟體(如Python模組或外部數據集)本身可能會被攻擊,導致意外結果、引入偏見,甚至使底層基礎設施存在漏洞。
- Overreliance: LLMs 是易犯錯的,並且容易產生幻覺,提供不準確或不安全的結果。在幾個有記錄的情況下,人們直接接受結果,導致意想不到的現實世界負面後果。
Microsoft Cloud Advocate Rod Trent 撰寫了一本免費的電子書,Must Learn AI Security,深入探討這些和其他新興的 AI 威脅,並提供了廣泛的指南,教你如何最好地應對這些情境。
AI 系統和 LLM 的安全測試
人工智慧(AI)正在改變各個領域和行業,為社會提供新的可能性和利益。然而,AI 也帶來了重大挑戰和風險,例如資料隱私、偏見、缺乏可解釋性和潛在的濫用。因此,確保 AI 系統的安全和負責任至關重要,這意味著它們必須遵守道德和法律標準,並且能夠被使用者和利益相關者信任。
AI 系統或 LLM 的安全測試是透過識別和利用其漏洞來評估其安全性的過程。這可以由開發人員、使用者或第三方審計員執行,具體取決於測試的目的和範圍。以下是一些最常見的 AI 系統和 LLM 的安全測試方法:
- 資料清理: 這是從訓練資料或AI系統或LLM的輸入中移除或匿名化敏感或私人資訊的過程。資料清理可以通過減少機密或個人資料的曝光來幫助防止資料洩漏和惡意操作。
- 對抗性測試: 這是生成和應用對抗性範例到AI系統或LLM的輸入或輸出以評估其對抗攻擊的穩健性和韌性的過程。對抗性測試可以幫助識別和減輕AI系統或LLM的漏洞和弱點,這些漏洞和弱點可能會被攻擊者利用。
- 模型驗證: 這是驗證AI系統或LLM的模型參數或架構的正確性和完整性的過程。模型驗證可以通過確保模型受到保護和認證來幫助檢測和防止模型竊取。
- 輸出驗證: 這是驗證AI系統或LLM輸出品質和可靠性的過程。輸出驗證可以通過確保輸出一致且準確來幫助檢測和糾正惡意操作。
OpenAI, 作為 AI 系統的領導者,已經設定了一系列_安全評估_作為其紅隊網絡計劃的一部分,旨在測試輸出 AI 系統,希望能為 AI 安全做出貢獻。
評估可以從簡單的問答測試到更複雜的模擬。作為具體範例,以下是OpenAI為從多個角度評估AI行為而開發的範例評估:
說服
- MakeMeSay: AI 系統能多好地欺騙另一個 AI 系統說出一個秘密詞語?
- MakeMePay: AI 系統能多好地說服另一個 AI 系統捐錢?
- Ballot Proposal: AI 系統能多好地影響另一個 AI 系統對政治提案的支持?
隱寫術 (隱藏訊息)
- 隱寫術: AI 系統在不被另一個 AI 系統發現的情況下,能多好地傳遞秘密訊息?
- 文字壓縮: AI 系統能多好地壓縮和解壓縮訊息,以便隱藏秘密訊息?
- Schelling Point: AI 系統在沒有直接溝通的情況下,能多好地與另一個 AI 系統協調?
AI 安全性
我們必須致力於保護 AI 系統免受惡意攻擊、濫用或意外後果的影響。這包括採取措施以確保 AI 系統的安全性、可靠性和可信賴性,例如:
- 確保用於訓練和執行AI模型的數據和算法的安全
- 防止未經授權的訪問、操縱或破壞AI系統
- 檢測和減輕AI系統中的偏見、歧視或倫理問題
- 確保AI決策和行動的責任、透明度和可解釋性
- 使AI系統的目標和價值觀與人類和社會的目標和價值觀保持一致
AI 安全對於確保 AI 系統和數據的完整性、可用性和機密性非常重要。AI 安全的一些挑戰和機會包括:
- 機會: 將 AI 納入網絡安全策略中,因為它可以在識別威脅和改善響應時間方面發揮關鍵作用。AI 可以幫助自動化和增強對網絡攻擊(如網絡釣魚、惡意軟體或勒索軟體)的檢測和緩解。
- 挑戰: 對手也可以利用 AI 發動複雜的攻擊,例如生成虛假或誤導性內容、冒充用戶或利用 AI 系統中的漏洞。因此,AI 開發者有責任設計出能夠對抗濫用的強大且有韌性的系統。
資料保護
LLMs 可能對其使用的數據的隱私和安全構成風險。例如,LLMs 可能會記住並洩露其訓練數據中的敏感資訊,如個人姓名、地址、密碼或信用卡號碼。它們也可能被惡意行為者操縱或攻擊,這些行為者想要利用其漏洞或偏見。因此,了解這些風險並採取適當的措施來保護與 LLMs 一起使用的數據非常重要。您可以採取幾個步驟來保護與 LLMs 一起使用的數據。這些步驟包括:
- 限制與 LLMs 分享的資料量和類型: 只分享必要且相關的資料,避免分享任何敏感、機密或個人資料。使用者應該將與 LLMs 分享的資料匿名化或加密,例如移除或遮蔽任何識別資訊,或使用安全的通訊渠道。
- 驗證 LLMs 生成的資料: 始終檢查 LLMs 生成的輸出之準確性和品質,以確保它們不包含任何不需要或不適當的資訊。
- 報告和警示任何資料洩露或事件: 警惕 LLMs 的任何可疑或異常活動或行為,例如生成無關、錯誤、冒犯或有害的文本。這可能是資料洩露或安全事件的跡象。
數據安全、治理和合規性對於任何希望在多雲環境中利用數據和 AI 力量的組織來說都是至關重要的。保護和治理所有數據是一項複雜且多方面的任務。您需要在多個雲端中的不同位置保護和治理不同類型的數據(結構化、非結構化和 AI 生成的數據),並且需要考慮現有和未來的數據安全、治理和 AI 規範。為了保護您的數據,您需要採取一些最佳實踐和預防措施,例如:
- 使用提供資料保護和隱私功能的雲端服務或平台。
- 使用資料品質和驗證工具檢查資料中的錯誤、不一致或異常。
- 使用資料治理和倫理框架確保資料以負責和透明的方式使用。
模擬真實世界威脅 - AI 紅隊測試
模擬現實世界的威脅現在被認為是在建構有韌性的 AI 系統中的標準做法,通過使用類似的工具、策略、程序來識別系統的風險並測試防禦者的反應。
AI 紅隊的實踐已經演變為一個更廣泛的意義: 它不僅涵蓋探測安全漏洞,還包括探測其他系統故障,例如生成潛在有害內容。AI 系統帶來了新的風險,紅隊是理解這些新風險的核心,例如提示注入和生成無根據的內容。 - Microsoft AI Red Team building future of safer AI
以下是塑造微軟 AI 紅隊計劃的關鍵見解。
- AI 紅隊測試的廣泛範圍: AI 紅隊測試現在涵蓋了安全性和負責任 AI (RAI) 的結果。傳統上,紅隊測試專注於安全性方面,將模型視為一個向量(例如,竊取底層模型)。然而,AI 系統引入了新的安全漏洞(例如,提示注入、污染),需要特別注意。除了安全性之外,AI 紅隊測試還探討公平性問題(例如,刻板印象)和有害內容(例如,美化暴力)。早期識別這些問題可以優先考慮防禦投資。
- 惡意和良性失敗: AI 紅隊測試從惡意和良性兩個角度考慮失敗。例如,在對新 Bing 進行紅隊測試時,我們不僅探討惡意對手如何顛覆系統,還探討普通用戶如何遇到問題或有害內容。與傳統的安全紅隊測試主要專注於惡意行為者不同,AI 紅隊測試考慮了更廣泛的人物角色和潛在的失敗。
- AI 系統的動態性: AI 應用程序不斷演變。在大型語言模型應用中,開發人員適應不斷變化的需求。持續的紅隊測試確保了對不斷變化的風險的持續警惕和適應。
AI 紅隊測試並非包羅萬象,應被視為補充其他控制措施的輔助手段,例如基於角色的存取控制 (RBAC)和綜合數據管理解決方案。它旨在補充一種安全策略,該策略專注於使用安全且負責任的 AI 解決方案,考慮到隱私和安全,同時努力減少偏見、有害內容和錯誤資訊,這些都可能削弱用戶信心。
以下是一些額外閱讀的資料,可以幫助你更好地了解紅隊如何幫助識別和減輕你的 AI 系統中的風險:
- 大型語言模型(LLMs)及其應用的紅隊計劃
- 什麼是 OpenAI 紅隊網絡?
- AI 紅隊 - 建構更安全和更負責任的 AI 解決方案的關鍵實踐
- MITRE ATLAS (人工智慧系統的對抗性威脅景觀), 一個記錄在現實世界中對 AI 系統進行攻擊的對手所使用的戰術和技術的知識庫。
知識檢查
保持資料完整性和防止濫用的好方法是什麼?
- 具有強大的基於角色的資料存取和資料管理控制
- 實施和審核資料標籤,以防止資料誤導或濫用
- 確保您的 AI 基礎設施支持內容過濾
A:1, 雖然這三個都是很好的建議,但確保你為用戶分配了適當的資料存取權限將大大有助於防止LLM使用的資料被操縱和誤導。
🚀 挑戰
了解更多有關如何在 AI 時代管理和保護敏感資訊。
很棒的工作,繼續學習
完成本課程後,請查看我們的生成式 AI 學習集合以繼續提升您的生成式 AI 知識!
前往第14課,我們將查看生成式AI應用程式生命週期!