AI/ML 樞紐至安全性開發生命週期 Bug 列
由安德魯·馬歇爾、朱加爾·帕利赫、埃米爾·基西曼和拉姆·尚卡爾·西瓦·庫瑪律
2019 年 11 月
本文是 AI 工作組Microsoft AETHER 工程實務的交付專案。 本文可作為現有 SDL Bug 列的補充,用來分級傳統安全性弱點。 其用途是做為 AI/ML 相關安全性問題的分級參考。 AI 系統的弱點嚴重性分類(由Microsoft安全性回應中心發佈),會定義涉及 AI 之系統的常見弱點類型和嚴重性層級。
本指南由 Ram Shankar Siva Kumar、David O'Brien、Kendra Albert、Salome Viljoen 和 Jeffrey Snover 所建立的對立 機器學習 威脅分類法組織,並標題為 機器學習 中的失敗模式。 雖然此內容的研究是以 ML 失敗模式中的刻意/惡意和意外行為為基礎,但此 Bug 列補充完全著重於會導致安全性事件和/或修正部署的刻意/惡意行為。
威脅 | 描述/商務風險/範例 |
---|---|
數據中毒 | 損毀定型數據 - 攻擊者的最終目標是污染定型階段中產生的機器模型,以便在測試階段修改對新數據的預測。 在目標中毒攻擊中,攻擊者想要錯誤分類特定範例,以造成採取或省略特定動作。 將AV軟體提交為惡意代碼,以強制其誤分類為惡意,並消除在客戶端系統上使用目標AV軟體。 公司會刮掉一個知名且受信任的網站,供期貨數據定型其模型。 然後,數據提供者的網站會透過 SQL 插入式攻擊遭到入侵。 攻擊者可以任意毒害數據集,而正在定型的模型並不認為數據遭到玷污。 |
模型竊取 | 藉由合法地查詢基礎模型,以重新建立基礎模型。 新模型的功能與基礎模型的功能相同。 重新建立模型之後,就可以反轉復原特徵資訊,或對定型數據進行推斷。 方程式解算 – 對於透過 API 輸出傳回類別機率的模型,攻擊者可以製作查詢來判斷模型中的未知變數。 路徑尋找 – 利用 API 特殊性的攻擊,以在分類輸入時擷取樹狀結構所採取的「決策」。 可轉移性攻擊 - 對手可以訓練本機模型,可能是藉由向目標模型發出預測查詢,並用它來製作傳送至目標模型的對抗範例。 如果您的模型已擷取並探索到容易受到一種對立輸入類型的影響,則針對生產部署模型的新攻擊,可由擷取模型複本的攻擊者完全脫機開發。 在 ML 模型用來偵測對抗行為的設定中,例如識別垃圾郵件、惡意代碼分類和網路異常偵測,模型擷取有助於逃避攻擊 |
模型反轉 | 可以復原機器學習模型中使用的私人功能。 這包括重新建構攻擊者無法存取的私人訓練數據。 這可藉由尋找可最大化所傳回信賴等級的輸入來完成,但受限於符合目標的分類。 範例:從猜測或已知名稱和 API 存取中重建臉部辨識數據,以查詢模型。 |
實體網域中的對抗範例 | 這些範例可以顯示在實體領域,例如一輛被騙去跑停號的自動駕駛汽車,因為停止標誌上有一定顏色的光線(對立輸入),迫使圖像辨識系統不再將停止標誌視為停止標誌。 |
攻擊 ML 供應鏈 | 由於需要大量資源(數據 + 計算)來定型演算法,目前的做法是重複使用由大型公司訓練的模型,並稍微針對手邊的工作修改模型(例如:ResNet 是來自Microsoft的熱門影像辨識模型)。 這些模型是在模型動物園中策劃的(Caffe 裝載熱門影像辨識模型)。 在這次攻擊中,對手攻擊卡菲裝載的模型,從而毒害了其他人的井。 |
來自惡意 ML 提供者的後門演算法 | 危害基礎演算法 惡意 ML 即服務提供者會提供後門演算法,其中會復原私人定型數據。 這可讓攻擊者只根據模型,重新建構敏感數據,例如臉部和文字。 |
類神經網路重新程式撰寫 | 透過攻擊者特製的查詢,ML 系統可以重新程式設計為偏離建立者原始意圖的工作 臉部辨識 API 上的弱式訪問控制可讓 3個 rd 方納入設計來傷害使用者的應用程式,例如深層假貨產生器。 這是濫用/帳戶取消案例 |
對立的擾動 | 在反動式攻擊中,攻擊者會偷偷修改查詢,以從 生產部署的模型取得所需的回應。 這是模型輸入完整性的缺口,導致最終結果不一定是存取違規或 EOP 的模糊樣式攻擊。 相反地,它會危害模型的分類效能。 這可以透過使用特定目標字組的巨魔來表示,AI 會禁止它們,有效地拒絕與「禁止」字組相符之名稱的合法使用者提供服務。 強制將良性電子郵件分類為垃圾郵件,或造成惡意範例無法偵測。 這些也稱為模型逃避或模擬攻擊。 攻擊者可以製作輸入,以減少正確分類的信賴等級,特別是在高後果案例中。 這也可以採用大量誤判的形式,意在讓系統管理員或監視系統無法辨識合法警示。 |
成員資格推斷 | 推斷群組中用來定型模型的個別成員資格 例如:根據年齡/性別/醫院預測手術 |