老生常談:聽安全人員講人工智慧的安全與隱私問題!

點擊上方關注,All in AI中國

關於機器學習(ML)和人工智能(AI)以及它們如今為各行各業提供的各種使用案例,人們在提起時包含著太多的興奮情緒。在很多領域,我們現在已經有了成熟的解決方案,我們不時地聽到有關ML和AI在迄今尚未探索的的問題上的有趣且富有洞察力的應用,這些問題讓我們不禁發出感嘆。

老生常談:聽安全人員講人工智能的安全與隱私問題!

隨著部署的場景變得更加豐富和廣泛,我們必須確保AI和ML的安全性和隱私性方面得到充分考慮。為了做到這一點,重要的是要了解安全和隱私與AI和ML領域交叉路徑的不同方式。在本系列中,我們將探索這些"交叉點",瞭解所涉及風險的性質和程度,併為每種交叉"路徑"提供或正在探索的保護措施。

雖然我在信息安全和隱私領域有多年的工作經驗,但我對AI和ML還比較陌生。(我們剛剛開始在我們的雲安全和正在開發的項目使用ML技術。)因此,這個系列的文章更多的是從安全人員的角度出發,系統地推理AI和ML環境中的安全性和隱私性的觀點。

在第一部分中,我將從網絡安全的角度出發,從"讓我們掌握正確的基礎信息"開始,而不會深入瞭解AI和ML的內部內容。在接下來的部分中,我們將開始更仔細地觀察AI和ML組件。

老生常談:聽安全人員講人工智能的安全與隱私問題!

AI和ML解決方案的傳統網絡安全

與任何新領域一樣,AI和ML帶來了一系列有趣的事物,相關的細微差別和注意事項,從安全角度對我們提出了挑戰。

下面的兩張圖片(來自Microsoft Azure文檔)展示了典型工件和利益相關方,它們涉及到終端AI / ML工作流程的各個階段。

老生常談:聽安全人員講人工智能的安全與隱私問題!

老生常談:聽安全人員講人工智能的安全與隱私問題!

這些圖表突出了我們面臨的安全挑戰的性質和類型的以下特徵:

  • 有一個龐大的生態系統工具、語言、框架 - 具有從數據攝取、數據預處理、建模、模型評估、集成、可視化、打包和部署等功能。
  • 從傳統軟件工程師到機器學習工程師,數據科學家和統計人員等多個利益相關方團體參與項目。
  • 完整的工作解決方案通常涉及多個系統在不同的接口上聯合在一起。

從安全角度來看,這是許多新的和未知的事情。我們正在研究許多新工具和框架,新人(利益相關者群體)和新系統或系統組合。暫且不談AI和ML的細節/內部,即使只是傳統的網絡安全,在這樣的環境中也很難做好。這是因為通常新的工具和框架需要時間才能變得"足夠安全",新的利益相關方團體可能並不總是對安全性有統一的理解或認識。而且,涉及許多系統和接口的解決方案已經出現了失敗的例子。

老生常談:聽安全人員講人工智能的安全與隱私問題!

現在讓我們來看看"數據安全"方面。在AI和ML背景下,數據安全挑戰的以下特徵尤為突出:

  • 在大多數解決方案中,涉及到大量的業務數據。我們正在談論的是數百萬甚至數十億的記錄。並且,根據問題領域的不同,這些數據可能具有巨大的價值(例如,經紀公司過去的交易)或敏感性(例如,來自連鎖醫院的醫療記錄)。
  • 與傳統的軟件工程不同,在AI和ML中通常不能使用"虛擬數據"進行測試/預生產階段。因此,在生態系統的各個方面,我們都在談論各種利益相關者和處理珍貴實際數據的各種系統。對各種數據的多次迭代和請求可能會破壞你可能擁有的任何現有數據治理。
  • 鑑於AI和ML已經涉足各行各業,我們正在研究數百種數據和記錄格式(以及相應的閱讀器、編碼器和解碼器)。我們在少數幾種更流行的編碼格式中擁有豐富的安全漏洞歷史。當我們考慮乘數效應時,請考慮未來的情況。

雖然它們確實令人生畏,但上述許多挑戰對安全從業者來說並不是什麼新鮮事。我們過去曾經歷過技術的轉變。我們已經看到了安全至上的基本原則是不可改變的,以及在仔細瞭解新環境/生態系統的細微差別和獨特要求之後如何應用它們。

· 確保所有團隊成員/利益相關者對安全和隱私有基本的瞭解。例如數據分類、數據保護技術、身份驗證/授權、隱私原則、適用的監管要求等。我們的目標應該是確保所有利益相關者都對安全和隱私有著基本的理解,每個人都使用相同的術語,並瞭解和熟知相關的政策和標準。

· 具備良好的數據治理結構。對於每個工作流程的不同階段數據的變化,各利益相關方應明確所有權和問責制。鑑於ML&AI項目中不可避免的數據廣泛傳播,這一點尤為重要。

· 對解決方案執行威脅建模——無論是在組件級別還是從端到端的角度來說。這將確保在設計中"內置"安全性,並且在端到端系統中的每個點(處理、存儲或傳輸有價值的數據)都滿足適用的安全要求。

· 在進行威脅建模時,應特別注意不同子系統之間的邊界和接口。任何一方在這些界面上做出的假設都應該清楚地記錄和驗證。

· 此外,由於生產數據無處不在,因此請務必詳盡地涵蓋威脅模型中的所有工作流程——從最早的實驗和概念證明開始,直到完全操作系統,就好比在生產中部署的那樣。

· 確保在實施過程中遵循良好的編程實踐,並且根據所使用的技術,避免一些漏洞(例如,如果解決方案的某些部分是基於Web的,則必須保護身份驗證/ cookie免受XSS、CSRF等攻擊)。

· 確保執行功能安全測試和滲透評估的通過,這可以保證威脅建模期間識別出所有威脅/風險並使其得到修復。

· 確保不同框架和子系統的安全模型得到最優解,以實現整個系統的統一安全性。這一點尤其重要,因為多個可能完全不同的組件和框架將被"粘合"在一起,從而構成最終解決方案。

· 仔細考慮項目不同階段的各利益相關方使用的軟件組件,或導入不同的"管道"。儘可能使用經過驗證和簽名的組件,要考慮到其他因素,如開發人員聲譽、使用範圍、存儲庫的可信度、評論、安全問題/漏洞的歷史記錄等。這些應該有助於評估組件的安全質量。

· 考慮部署(CICD)管道的安全性。你是否可以很好地控制誰可以更改構建/發佈環境?你是否正在保護部署所需的任何秘密/連接字符串?你的生產設置是否已鎖定,以至於人們無法進行臨時配置更改?

· 保持良好的監控和安全衛生。確保所有軟件組件都處於最新的安全補丁級別,進行定期訪問檢查,輪換密鑰/證書等。

· 最後,制定良好的事故應急預案,以便在發生災難時能夠及時應對。

對於安全專業人員來說,上述所有內容都不應該是新穎的。你必須在過去的各種問題環境中完成部分或全部的這些操作。因此,AI和ML中安全性和隱私性的第一個方面就是在與所有相關利益相關方合作的同時將所有專業知識應用於新環境中。

老生常談:聽安全人員講人工智能的安全與隱私問題!


分享到:


相關文章: