威脅模型化 AI/ML 系統和相依性

由安德魯·馬歇爾、朱加爾·帕利赫、埃米爾·基西曼和拉姆·尚卡爾·西瓦·庫瑪律

特別感謝勞爾·羅賈斯和 AETHER 安全性工程工作流程

2019 年 11 月

本檔是 AI 工作組的 AETHER 工程實務交付專案,並提供 AI 和 機器學習 空間專屬的威脅列舉和風險降低新指引,以補充現有的 SDL 威脅模型化做法。 在下列安全性設計檢閱期間,其用途是做為參考:

  1. 與 AI/ML 型服務互動或取得相依性的產品/服務

  2. 以 AI/ML 為核心所建置的產品/服務

傳統安全性威脅防護功能比以往更加重要。 安全性開發生命週期建立的需求對於建立本指導方針所建置的產品安全性基礎至關重要。 無法解決傳統安全性威脅,有助於啟用本文件中涵蓋的軟體和實體網域中的 AI/ML 特定攻擊,以及 降低軟體堆疊的危害。 如需此空間中新安全性威脅的簡介,請參閱 保護 Microsoft AI 和 ML 的未來。

安全性工程師和數據科學家的技能集通常不會重疊。 本指南提供這兩個專業領域在這類新威脅/風險降低上建立結構化對話的方式,而不需要安全性工程師成為數據科學家,反之亦然。

本檔分成兩個區段:

  1. 「威脅模型化的重要新考慮」著重於新的思維方式,以及威脅模型化 AI/ML 系統時要問的新問題。 數據科學家和安全性工程師都應該檢閱這一點,因為這將會是其威脅模型化討論和風險降低優先順序的劇本。
  2. 「AI/ML 特定威脅及其風險降低」提供特定攻擊的詳細數據,以及現今用來保護 Microsoft 產品和服務抵禦這些威脅的特定風險降低步驟。 本節主要針對可能需要實作特定威脅防護功能的數據科學家,作為威脅模型化/安全性檢閱程序的輸出。

本指南由 Ram Shankar Siva Kumar、David O'Brien、Kendra Albert、Salome Viljoen 和 Jeffrey Snover 機器學習 建立的對抗性 機器學習 威脅分類法組織。 如需有關分類本文件詳述之安全性威脅的事件管理指引,請參閱適用於 AI/ML 威脅的 SDL Bug 列。 所有這些都是隨著威脅形勢而演變的活生生的檔。

威脅模型化的重要新考慮:變更檢視信任界限的方式

假設您從 中訓練的數據以及數據提供者遭到入侵/中毒。 瞭解如何偵測異常和惡意的數據專案,以及能夠區分和復原它們

摘要

定型數據存放區和裝載它們的系統是威脅模型化範圍的一部分。 現今機器學習服務中最大的安全性威脅是數據中毒,因為此空間中缺少標準偵測和風險降低,再加上依賴不受信任/未壓縮的公用數據集作為訓練數據的來源。 追蹤數據的來源和譜系,對於確保數據的可信度,並避免「垃圾進出」訓練周期至關重要。

安全性檢閱中要詢問的問題

  • 如果您的數據遭到有害或竄改,您該如何知道?

    -您必須偵測定型數據品質扭曲的遙測數據為何?

  • 您要從使用者提供的輸入進行訓練嗎?

    -您在該內容上執行何種輸入驗證/清理?

    -此數據的結構是否記載於 與數據集的數據工作表類似?

  • 如果您針對在線數據存放區定型,您需要採取哪些步驟來確保模型與數據之間的連線安全性?

    -他們有向飼料消費者報告危害的方法嗎?

    -他們甚至有能力嗎?

  • 您訓練的數據有多敏感?

    -您是否將它編錄或控制新增/更新/刪除數據項?

  • 您的模型可以輸出敏感數據嗎?

    -此數據是以來源的許可權取得的嗎?

  • 模型是否只輸出達到其目標所需的結果?

  • 您的模型是否會傳回原始信賴分數或任何其他可記錄和複製的直接輸出?

  • 透過攻擊/反轉模型來復原定型數據的影響為何?

  • 如果模型輸出的信賴等級突然下降,您可以瞭解原因,以及造成它的數據為何?

  • 您是否為模型定義了格式正確的輸入? 您要做什麼以確保輸入符合此格式,如果輸入不符合,該怎麼辦?

  • 如果您的輸出錯誤,但不會導致報告錯誤,您該如何知道?

  • 您知道您的定型演算法是否能夠復原數學層級的對立輸入?

  • 如何從訓練數據的對立污染中恢復?

    -您是否可以隔離/隔離對立內容,並重新定型受影響的模型?

    -您是否可以復原/復原至舊版的模型以進行重新定型?

  • 您是否在未清理的公用內容上使用增強式學習?

  • 開始思考數據的譜系 - 您是否要找出問題,是否可以追蹤數據簡介數據集? 如果不是,這是個問題嗎?

  • 瞭解定型數據的來源並識別統計規範,以便開始瞭解異常的外觀

    -訓練數據的哪些元素容易受到外部影響?

    -神秘 可以參與您要訓練的數據集?

    -您要如何攻擊訓練數據的來源來傷害競爭對手?

  • 對抗性擾動 (所有變種)

  • 資料中毒(所有變體)

範例攻擊

  • 強制將良性電子郵件分類為垃圾郵件,或造成惡意範例無法偵測

  • 攻擊者製作的輸入,可降低正確分類的信賴等級,特別是在高後果案例中

  • 攻擊者會隨機將雜訊插入要分類的源數據中,以減少未來使用正確分類的可能性,有效地打亂模型

  • 污染訓練數據以強制分類選取數據點的錯誤,導致系統採取或省略特定動作

識別您的模型或產品/服務可能會造成在線或實體網域中客戶傷害的動作

摘要

在 AI/ML 系統上,對 AI/ML 系統的攻擊沒有問題,可以找到他們前往實體世界的路。 任何可能扭曲為心理或身體傷害使用者的案例,都是您的產品/服務災難性風險。 這延伸至客戶用於定型和設計選擇的任何敏感數據,這些選擇可能會洩漏這些私人數據點。

安全性檢閱中要詢問的問題

  • 您是否使用對立範例進行訓練? 它們對您的實體網域中的模型輸出有何影響?

  • 巨魔對您的產品/服務有何外觀? 如何偵測及回應?

  • 讓模型傳回會導致服務拒絕合法使用者存取的結果需要什麼?

  • 正在複製/遭竊的模型有何影響?

  • 您的模型可用來推斷特定群組中個別人員的成員資格,或只是在定型數據中?

  • 攻擊者是否可以強制產品執行特定動作,造成信譽損害或PR反彈?

  • 如何處理正確格式化但過度偏向的數據,例如來自巨魔?

  • 對於與模型互動或查詢的每個方式都會公開,是否可以詢問該方法以揭露定型數據或模型功能?

  • 成員資格推斷

  • 模型反轉

  • 模型竊取

範例攻擊

  • 藉由重複查詢模型以取得最大信賴結果,以重建和擷取定型數據

  • 完整查詢/回應比對來重複模型本身

  • 以顯示私用數據特定元素的方式查詢模型已包含在定型集中

  • 自動駕駛汽車被騙忽略停車標誌/紅綠燈

  • 用來操縱良性使用者的交談式 Bot

識別 AI/ML 相依性的所有來源,以及數據/模型供應鏈中的前端呈現層

摘要

AI 和 機器學習 中的許多攻擊一開始都是合法存取 API,這些 API 會浮出水面來提供模型的查詢存取權。 由於這裡涉及豐富的數據源和豐富的用戶體驗,因此經過驗證但「不適當」(這裡有灰色區域)3存取您的模型是一種風險,因為能夠作為 Microsoft 提供服務上方的呈現層。

安全性檢閱中要詢問的問題

  • 哪些客戶/合作夥伴經過驗證,以存取您的模型或服務 API?

    -他們是否可以作為服務之上的呈現層?

    -如果遭到入侵,您可以立即撤銷其存取權嗎?

    -發生服務或相依性惡意使用時,您的復原策略為何?

  • 3rd 方可以在您的模型周圍建置外觀,以重新建立其用途,並損害 Microsoft 或其客戶嗎?

  • 客戶是否直接向您提供訓練數據?

    -如何保護該數據?

    -如果它是惡意的,而您的服務是目標,該怎麼辦?

  • 誤判看起來像這樣? 誤判對的影響為何?

  • 您可以追蹤和測量跨多個模型之真判與誤判率的偏差嗎?

  • 您需要哪種遙測,才能向客戶證明模型輸出的可信度?

  • 識別 ML/訓練數據供應鏈中的所有 3個 rd 合作物件相依性 – 不只是 開放原始碼 軟體,而且是數據提供者

    -為什麼您使用它們,以及如何驗證其可信度?

  • 您是否使用 3個 rd 合作物件預先建置的模型,或將定型數據提交至 3rd 方 MLaaS 提供者?

  • 清查有關類似產品/服務攻擊的新聞報導。 瞭解模型類型之間的許多 AI/ML 威脅傳輸,這些攻擊會對您自己的產品產生什麼影響?

  • 類神經網路重新程式撰寫

  • 實體網域中的對抗範例

  • 惡意 ML 提供者正在復原訓練數據

  • 攻擊 ML 供應鏈

  • 後門模型

  • 遭入侵的ML特定相依性

範例攻擊

  • 惡意 MLaaS 提供者會利用特定略過來將您的模型特洛伊木馬程式

  • 敵人客戶在您使用的常見 OSS 相依性中發現弱點,上傳精心製作的定型數據承載來危害您的服務

  • 無良合作夥伴會使用臉部辨識 API,並透過您的服務建立呈現層來產生 Deep Fakes。

AI/ML 特定威脅及其風險降低

#1: 對立的擾動

描述

在干擾式攻擊中,攻擊者會偷偷修改查詢,以從生產部署的模型取得所需的回應[1]。 這是模型輸入完整性的缺口,導致模糊樣式的攻擊,其中最終結果不一定是存取違規或 EOP,而是危害模型的分類效能。 這也可以透過使用特定目標字組的巨魔來表示,AI 會禁止它們,有效地拒絕與「禁止」字組相符之名稱的合法使用者提供服務。

Diagram that shows increasing attack difficulty when complexity is increasing and capability is decreasing.[24]

Variant #1a:目標錯誤分類

在此情況下,攻擊者會產生不在目標分類器的輸入類別中,但模型分類為該特定輸入類別的範例。 對立範例可能會像人類眼睛的隨機雜訊一樣出現,但攻擊者對目標機器學習系統有一些瞭解,以產生非隨機但正在利用目標模型的一些特定層面的白雜訊。 敵人會提供不是合法範例的輸入範例,但目標系統會將它分類為合法類別。

範例

A diagram showing that a photo of targeted noise is incorrectly classified by an image classifier resulting in a photo of a bus.[6]

風險降低

  • 使用對立訓練所引發的模型信賴度來強化對抗強固性 [19]:作者建議高度自信近鄰(HCNN),此架構結合了信賴資訊和最近的鄰近搜尋,以強化基底模型的對立強固性。 這有助於區分從基礎定型分佈取樣的點附近,正確與錯誤的模型預測。

  • 屬性導向的因果分析 [20]:作者會研究對對抗性干擾的復原能力與機器學習模型所產生個別決策的屬性型說明之間的聯繫。 他們報告說,對立輸入在屬性空間中並不強固,也就是說,遮罩具有高屬性的一些特徵會導致對立範例上的機器學習模型不明顯變更。 相反地,自然輸入在屬性空間中很健全。

    An illustration showing two approaches to determining how input values 9,9 becomes misclassified as 9,4.[20]

這些方法可讓機器學習模型對對立攻擊更具彈性,因為愚弄這兩層認知系統不僅需要攻擊原始模型,而且可確保針對對抗範例產生的屬性與原始範例類似。 這兩個系統都必須同時遭到入侵,才能成功進行對立攻擊。

傳統平行處理

遠端提高許可權,因為攻擊者現在控制您的模型

嚴重性

重大

Variant #1b:來源/目標分類錯誤

這被描述為攻擊者嘗試取得模型,以傳回所指定輸入所需的標籤。 這通常會強制模型傳回誤判或誤判。 最終結果是對模型的分類精確度進行細微的接管,攻擊者可以依此方式引發特定的略過。

雖然此攻擊對分類精確度有重大有害影響,但前提是敵人不僅必須操作源數據,使其不再正確加上標籤,而且特別加上所需的詐騙標籤,也可以更耗時地執行。 這些攻擊通常牽涉到多個步驟/嘗試強制分類錯誤 [3]。 如果模型容易受到傳輸學習攻擊而強制將目標分類錯誤,則可能沒有明顯的攻擊者流量使用量,因為探查攻擊可以離線執行。

範例

強制將良性電子郵件分類為垃圾郵件,或造成惡意範例無法偵測。 這些也稱為模型逃避或模擬攻擊。

風險降低

反應式/防禦性偵測動作

  • 實作 API 呼叫之間的最小時間閾值,以提供分類結果。 這會藉由增加尋找成功干擾所需的整體時間量來減緩多步驟攻擊測試的速度。

主動/防護動作

  • 改善對立健全性的功能 Denoising [22]:作者會開發新的網路架構,藉由執行功能去擾來增加對抗性強固性。 具體來說,網路包含使用非本機方式或其他篩選來取消功能通知的區塊;整個網路會以端對端訓練。 與對立訓練結合時,功能可大幅改善白箱和黑匣子攻擊設定中對抗性強固性的最新狀態。

  • 對立訓練和正規化:使用已知的對立範例進行定型,以針對惡意輸入建立復原能力和強固性。 這也可以被視為正規化的形式,其會懲罰輸入漸層的常態,並使分類器的預測函式更平滑(增加輸入邊界)。 這包括信賴率較低的正確分類。

A graph showing the change in the slope of the prediction function with adversarial training.

投資開發單調分類,選擇單調特徵。 這可確保敵人無法藉由只填補負類別 [13] 的特徵來逃避分類器。

  • 功能擠壓 [18] 可藉由偵測對立範例來強化 DNN 模型。 它藉由將原始空間中許多不同特徵向量對應到單一樣本的樣本,來減少敵人可用的搜尋空間。 藉由比較 DNN 模型對原始輸入的預測與擠壓輸入上的預測,特徵擠壓有助於偵測對立範例。 如果原始和擠壓的範例產生與模型截然不同的輸出,則輸入可能是對立的。 藉由測量預測與選取臨界值之間的分歧,系統就可以針對合法範例輸出正確的預測,並拒絕對立輸入。

    An illustration showing the result of feature squeezing.

    A diagram showing the flow of input through a feature-squeezing framework.[18]

  • 針對對抗範例的認證防禦 [22]:作者根據半明確放寬來建議方法,以輸出給定網路和測試輸入的憑證,任何攻擊都無法強制錯誤超過特定值。 其次,由於此憑證是可區分的,作者會與網路參數共同優化,提供可鼓勵針對所有攻擊的強固性進行調適型正規化程式。

回應動作

  • 針對分類器之間差異較高的分類結果發出警示,特別是從單一使用者或小型使用者群組發出警示。

傳統平行處理

遠端提高許可權

嚴重性

重大

Variant #1c:隨機錯誤分類

這是一種特殊的變化,攻擊者的目標分類可以是合法來源分類以外的任何專案。 攻擊通常牽涉到隨機插入要分類的源數據中,以減少未來 [3] 使用正確分類的可能性。

範例

Two photos of a cat. One photo is classified as a tabby cat. After adversarial perturbation, the other photo is classified as guacamole.

風險降低

與 Variant 1a 相同。

傳統平行處理

非持續性阻斷服務

嚴重性

重要

Variant #1d:信賴降低

攻擊者可以製作輸入,以減少正確分類的信賴等級,特別是在高後果案例中。 這也可以採取大量誤判的形式,意在讓系統管理員或監視系統不堪重負,而詐騙警示與合法警示不區分 [3]。

範例

Two photos of a stop sign. The photo on the left shows a confidence level of 96 percent. After adversarial perturbation, the photo on the right shows a confidence level of 13 percent.

風險降低
  • 除了 Variant #1a 所涵蓋的動作之外,還可以使用事件節流來減少來自單一來源的警示數量。
傳統平行處理

非持續性阻斷服務

嚴重性

重要

#2a 目標數據中毒

描述

攻擊者的目標是污染定型階段所產生的 機器模型,以便在測試階段[1] 中修改對新數據的預測。 在目標中毒攻擊中,攻擊者想要錯誤分類特定範例,以造成採取或省略特定動作。

範例

將AV軟體提交為惡意代碼,以強制其誤分類為惡意,並消除在客戶端系統上使用目標AV軟體。

風險降低
  • 定義異常感測器,以每天查看數據分佈,並針對變化發出警示

    -每天測量定型數據變化,扭曲/漂移的遙測

  • 輸入驗證,清理和完整性檢查

  • 中毒會插入郊外訓練樣本。 反擊此威脅的兩個主要策略:

    -數據清理/驗證:從訓練數據中移除有害樣本 -Bagging 用於對抗中毒攻擊 [14]

    -Reject-on-Negative-Impact (RONI) 防禦 [15]

    -健全學習:挑選在有害樣本存在時健全的學習演算法。

    -其中一種方法是在 [21] 中描述,其中作者在兩個步驟中解決數據中毒問題:1)引進新的強固矩陣分解方法,以復原真正的子空間,2) 新的強固原則元件回歸,根據步驟 (1) 復原的基礎來修剪對立實例。 它們的特點是成功復原真實子空間的必要條件和足夠的條件,相較於地面真相,它們對預期的預測損失產生界限。

傳統平行處理

特洛伊木馬主機,攻擊者會保存在網路上。 定型或設定數據遭到入侵,並正在內嵌/信任模型建立。

嚴重性

重大

#2b 不分青紅皂白的數據中毒

描述

目標是破壞遭到攻擊之數據集的品質/完整性。 許多數據集都是公用/不受信任/未清理,因此這會針對第一個位置找出這類數據完整性違規的能力產生額外的疑慮。 在不知不覺中遭入侵的數據上定型是垃圾進出/垃圾的情況。 偵測到之後,分級必須判斷已遭入侵的數據範圍,以及隔離/重新定型。

範例

一家公司為石油期貨數據刮掉了一個知名且受信任的網站,以訓練其模型。 數據提供者的網站隨後會透過 SQL 插入式攻擊遭到入侵。 攻擊者可以任意毒害數據集,而正在定型的模型並不認為數據遭到玷污。

風險降低

與 variant 2a 相同。

傳統平行處理

針對高價值資產驗證的拒絕服務

嚴重性

重要

#3 模型反轉攻擊

描述

機器學習模型中所使用的私人功能可以復原 [1]。 這包括重新建構攻擊者無法存取的私人訓練數據。 也稱為生物特徵辨識社群的登山攻擊 [16, 17] 這是通過尋找可最大化傳回信賴等級的輸入來完成的,受限於符合目標 [4] 的分類。

範例

Two images of a person. One image is blurry and the other image is clear.[4]

風險降低
  • 從敏感數據定型的模型介面需要強式訪問控制。

  • 模型允許的速率限制查詢

  • 對所有建議的查詢執行輸入驗證,拒絕不符合模型輸入正確性定義的任何專案,並只傳回最少量的資訊,以實作使用者/來電者與實際模型之間的網關。

傳統平行處理

針對性、秘密資訊洩漏

嚴重性

這會根據標準 SDL Bug 列預設為重要,但要擷取的敏感性或個人標識數據會提高到關鍵。

#4 成員資格推斷攻擊

描述

攻擊者可以判斷指定的數據記錄是否為模型的定型數據集的一部分[1]。 研究人員能夠根據屬性(如年齡、性別、醫院)[1],預測患者的主要程式(例如:手術患者通過)。

An illustration showing the complexity of a membership inference attack. Arrows show the flow and relationship between training data prediction data.[12]

風險降低

示範此攻擊可行性的研究論文指出差異隱私權 [4, 9] 是有效的緩和措施。 這仍然是 Microsoft 和 AETHER 安全性工程的新興領域,建議在此空間進行研究投資來建置專業知識。 此研究需要列舉差異隱私權功能並評估其實際有效性作為風險降低措施,然後在我們的 線上服務 平臺上以透明方式設計這些防禦方法,類似於Visual Studio中的程式代碼編譯方式,可讓您依預設提供對開發人員和使用者而言透明的安全性保護。

神經元卸除和模型堆疊的使用在一定程度上可能是有效的緩和措施。 使用神經元輟學不僅會增加神經網路對這次攻擊的復原能力,也會增加模型效能 [4]。

傳統平行處理

數據隱私權。 正在對數據點包含在定型集中進行推斷,但不會透露定型數據本身

嚴重性

這是隱私權問題,而不是安全性問題。 因為網域重疊,所以會在威脅模型化指引中加以解決,但此處的任何回應都會由隱私權驅動,而不是安全性。

#5 模型竊取

描述

攻擊者會藉由合法地查詢模型來重新建立基礎模型。 新模型的功能與基礎模型[1] 的功能相同。 重新建立模型之後,就可以反轉復原特徵資訊,或對定型數據進行推斷。

  • 方程式解算 – 對於透過 API 輸出傳回類別機率的模型,攻擊者可以製作查詢來判斷模型中的未知變數。

  • 路徑尋找 – 攻擊會利用 API 特殊性來擷取樹狀結構在分類輸入 [7] 時所採取的「決策」。

  • 可轉移性攻擊 - 敵人可以定型本機模型,可能是藉由向目標模型發出預測查詢 ,並用它來製作傳送至目標模型 [8] 的對立範例。 如果您的模型已擷取並探索到容易受到一種對立輸入類型的影響,則針對生產部署模型的新攻擊,可由擷取模型複本的攻擊者完全脫機開發。

範例

在 ML 模型用來偵測對立行為的設定中,例如識別垃圾郵件、惡意代碼分類和網路異常偵測,模型擷取有助於逃避攻擊 [7]。

風險降低

主動/防護動作

  • 將預測 API 中傳回的詳細數據最小化或模糊化,同時仍維持對「誠實」應用程式[7] 的實用性。

  • 為您的模型輸入定義格式正確的查詢,並只傳回結果以回應已完成且格式正確的輸入,以符合該格式。

  • 傳回四捨五入的信賴值。 大多數合法的呼叫端不需要多個小數字數的有效位數。

傳統平行處理

系統數據未經驗證、只讀的竄改,以高價值資訊洩漏為目標?

嚴重性

在安全性敏感性模型中很重要,否則為中度

#6 類神經網络重新程序設計

描述

藉由來自敵人的特製查詢,機器學習系統可以重新程式設計為偏離建立者原始意圖的工作[1]。

範例

臉部辨識 API 上的弱式訪問控制可讓 3個 Rd 方納入設計來損害 Microsoft 客戶的應用程式,例如深層假貨產生器。

風險降低
  • 模型介面的強式用戶端<->伺服器相互驗證和訪問控制

  • 取消冒犯帳戶。

  • 識別並強制執行 API 的服務等級協定。 判斷回報問題后可接受的修正時間,並確保問題在 SLA 到期后不再重現。

傳統平行處理

這是濫用案例。 您不太可能在此上開啟安全事件,而不只是停用罪犯的帳戶。

嚴重性

重要至重要

#7 實體網域中的對抗範例 (bits-atoms>)

描述

對立範例是來自惡意實體的輸入/查詢,其唯一目的是誤導機器學習系統 [1]

範例

這些範例可以顯示在實體領域,例如一輛自駕汽車被騙去運行停車標誌,因為停止標誌上有一定的光線色彩(對立輸入),迫使圖像辨識系統不再將停止標誌視為停止標誌。

傳統平行處理

提高許可權、遠端程式代碼執行

風險降低

這些攻擊本身會顯現出來,因為機器學習層的問題(AI 驅動決策下方的數據和演算法層)並未減輕。 如同任何其他軟體 *或* 實體系統,目標下方的層一律可透過傳統向量受到攻擊。 因此,傳統安全性做法比以往更加重要,尤其是 AI 與傳統軟體之間所使用的未明確弱點層(數據/algo 層)。

嚴重性

重大

#8 可復原定型數據的惡意 ML 提供者

描述

惡意提供者會呈現後門演算法,其中會復原私人定型數據。 鑒於模型本身,他們能夠重建臉部和文字。

傳統平行處理

目標資訊洩漏

風險降低

示範此攻擊可行性的研究論文表明同型加密是有效的緩和措施。 這是 Microsoft 和 AETHER 安全性工程目前投資很少的領域,建議在此空間進行研究投資來建置專業知識。 這項研究需要列舉同型加密原則,並評估其實際有效性作為面對惡意 ML 即服務提供者的風險降低措施。

嚴重性

如果數據是 PII,則為 「中度」,否則為重要

#9 攻擊 ML 供應鏈

描述

由於定型演算法所需的大量資源(數據 + 計算),目前的做法是重複使用由大型公司定型的模型,並針對手邊的工作稍微修改模型(例如:ResNet 是 Microsoft 的熱門影像辨識模型)。 這些模型是在模型動物園中策劃的(Caffe 裝載熱門影像辨識模型)。 在這次攻擊中,對手攻擊卡菲裝載的模型,從而毒害了其他人的井。 [1]

傳統平行處理
  • 入侵第三方非安全性相依性

  • App Store 不知情地裝載惡意代碼

風險降低
  • 盡可能將模型和數據的第三方相依性降至最低。

  • 將這些相依性併入威脅模型化程式。

  • 利用 1個 st/3rd-party 系統之間的強身份驗證、存取控制和加密。

嚴重性

重大

#10 後門 機器學習

描述

定型程式會外包給惡意第三方,該方會竄改訓練數據,並傳遞特洛伊木馬模型,以強制目標分類錯誤分類,例如將特定病毒分類為非惡意[1]。 這是 ML 即服務模型產生案例的風險。

An example showing how mis-classifications can adversely affect training data. One photo is a correctly classified stop sign. After poisoning, the second photo is labeled as a speed limit sign.[12]

傳統平行處理
  • 入侵第三方安全性相依性

  • 遭入侵的軟體更新機制

  • 證書頒發機構單位遭入侵

風險降低
反應式/防禦性偵測動作
  • 一旦發現此威脅,即已造成損害,因此無法信任惡意提供者所提供的模型和任何定型數據。
主動/防護動作
  • 在內部定型所有敏感性模型

  • 目錄訓練數據,或確保數據來自具有強安全性做法的信任第三方

  • 威脅模型化 MLaaS 提供者與您自己的系統之間的互動

回應動作
  • 與入侵外部相依性相同
嚴重性

重大

#11 惡意探索 ML 系統的軟體相依性

描述

在此攻擊中,攻擊者不會操作演算法。 相反地,惡意探索軟體弱點,例如緩衝區溢位或跨網站腳本[1]。 相較於直接攻擊學習層,AI/ML 下方的軟體層仍然更容易入侵,因此安全性開發生命週期中詳述的傳統安全性威脅風險降低做法至關重要。

傳統平行處理
  • 遭入侵的開放原始碼軟體相依性

  • 網頁伺服器弱點(XSS、CSRF、API 輸入驗證失敗)

風險降低

請與您的安全性小組合作,遵循適用的安全性開發週期/作業安全性保證最佳做法。

嚴重性

變數;根據傳統軟體弱點的類型而定,最多為 [重大]。

參考書目

[1] 機器學習、Ram Shankar Siva Kumar、David O'Brien、Kendra Albert、Salome Viljoen 和 Jeffrey Snover 中的失敗模式https://learn.microsoft.com/security/failure-modes-in-machine-learning

[2] AETHER Security Engineering Workstream, Data Provenance/Lineage v-team

[3] 深度學習中的對抗範例:特徵與差異、魏等 https://arxiv.org/pdf/1807.00051.pdf

[4] ML 洩漏:模型和數據獨立成員資格推斷攻擊和防禦 機器學習 模型、Salesm 等https://arxiv.org/pdf/1806.01246v2.pdf

[5] M. Fredrikson、S. Jha 和 T. Ristenpart,“利用信賴資訊和基本對策的模型反轉攻擊”,在 2015 年 ACM SIGSAC 計算機與通信安全會議 (CCS) 中。

[6] Nicolas Papernot & Patrick McDaniel- 機器學習 AIWTB 2017 中的對抗範例

[7] 透過預測 API、Florian Tramèr、École Polytechnique Fédérale de Lausanne (EPFL) 竊取 機器學習 模型:康奈爾大學張範:Ari Juels,康奈爾科技;邁克爾·賴特,北卡羅來納大學教堂山:湯瑪斯·里斯滕巴特,康奈爾科技

[8] 可轉移對抗範例的空間,弗洛裡安·特拉梅爾,尼古拉斯·帕諾特,伊恩·古德費爾洛,丹·博尼赫和派翠克·麥克達尼爾

[9] 瞭解全能學習模型 雲輝龍1、文森特·賓賽德勒1、雷王2、迪岳布2、小豐王2、海旭唐2、卡爾A.岡特1、凱晨3、4

[10] Simon-Gabriel et al., 類神經網络的對抗弱點隨著輸入維度 ArXiv 2018 而增加;

[11] Lyu et al., 對抗範例的統一漸層正規化系列,ICDM 2015

[12] 狂野模式:對抗性 機器學習 崛起十年後 - NeCS 2019 巴蒂斯塔·比吉奧亞,法比奧·羅利

[13] Adversarially 強固惡意代碼偵測使用Monotonic 分類 Inigo Incer 等。

[14] 巴蒂斯塔·比吉奧、伊吉諾·科羅納、喬治·福梅拉、喬治·賈辛托和法比奧·羅利。 在對立分類工作中打擊中毒攻擊的分類器加上標籤

[15] 對負面影響的改進拒絕,洪江李和派翠克·陳

[16] Adler。 生物特徵辨識加密系統中的弱點。 第 5 屆 Int'l Conf. AVBPA, 2005

[17] Galbally、McCool、Fierrez、Marcel、Ortega-Garcia。 關於臉部驗證系統的弱點,以爬山攻擊。 派特 Rec., 2010

[18] 魏林徐,大衛·埃文斯,嚴軍齊。 特徵擠壓:偵測深度類神經網路中的對立範例。 2018 網路和分散式系統安全性研討會。 2月18-21日。

[19] 使用對抗訓練引起的模型信賴增強對立強固性 - 西武、翁揚、陳潔峰、凌焦陳、薩薩什·賈

[20] 偵測對立範例的屬性驅動因果分析、Susmit Jha、Sunny Raj、Steven Fernandes、Sumit Kumar Jha、Somesh Jha、Gunjan Verma、Brian Jalaian、Ananthram Swami

[21] 針對定型數據中毒的強固線性回歸 – 常柳等。

[22] 改善對立強固性特徵淘汰,Cihang Xie,余新吳,勞倫斯范德馬登,艾倫玉爾,凱明何

[23] 針對對抗範例的認證防禦 - 阿迪蒂·拉古納森,雅各·斯坦哈特,珀西·梁