法規(guī)和標(biāo)準(zhǔn)要求醫(yī)療器械制造商編制軟件物料清單(SBOM)。然而,標(biāo)準(zhǔn)化的 SBOM 格式并非總能滿足這些要求。
特別是,不提供和使用軟件 SBOM 的醫(yī)療器械制造商不再被市場接受。原因如下:
1. 軟件物料清單:基礎(chǔ)知識
a) 什么是 "軟件物料清單"?
“SBOM” 一詞的定義
“軟件物料清單"(SBOM)是組成軟件系統(tǒng)的軟件項目(software items)的嵌套清單。制造商使用這份清單來明確說明哪些可清晰識別的組件在哪些版本中構(gòu)成其軟件項目(software items)。
歐盟對 "SBOM"一詞的定義
EU Cyber Resilience Act, Article 3, Section 37
a formal record containing details and supply chain relationships of components included in the software elements of a product with digital elements;
SBOM 映射了軟件項目(software items)的組件層次。
SBOM 與 SOUP的區(qū)別
所使用的 SBOM 和 SOUP 列表并不相同:
SOUP
|
SBOM
|
SOUP "僅"列出醫(yī)療器械本身所包含的軟件項目(software items)。
|
SBOM 還可能包含醫(yī)療器械周圍的系統(tǒng)組件,而醫(yī)療器械則依賴于這些組件。
|
SOUP 是一種未根據(jù) IEC 62304 標(biāo)準(zhǔn)開發(fā)的軟件。
|
SBOM 并未對此加以區(qū)分。
|
自行開發(fā)的軟件項目是醫(yī)療器械的一部分,但不是根據(jù) IEC 62304 標(biāo)準(zhǔn)開發(fā)的,也算作 SOUP。
|
SBOM 不區(qū)分自主開發(fā)軟件的類型。
|
SOUP 列表一般是 "平面列表"。
|
SBOM 可包含組件的層次結(jié)構(gòu)。
|
作為技術(shù)文檔的一部分,SOUP 列表通常是一份獨立的文檔或其中的一部分(如軟件架構(gòu)(software architecture)的一部分)。
|
SBOM 具有機(jī)器可讀性。
|
作為技術(shù)文件的一部分,SOUP 清單是一份內(nèi)部文件。
|
SBOM 提供給運(yùn)營商(醫(yī)院等醫(yī)療服務(wù)提供商)。
|
SOUP 列表包含每個條目所需的屬性,用于識別各自的 SOUP 組件。
|
與 SOUP 列表的元素相比,SBOM 的條目具有更多屬性。例如 HASH/簽名、主機(jī)組件鏈接、全局唯一 ID 等。
|
結(jié)論 IEC 62304 中的 SOUP 和 SBOM 都用于識別和管理軟件組件。不過,它們源自不同的背景,服務(wù)于不同的目的:
-SOUP 是專門針對醫(yī)療器械軟件的概念,尤其是在確保該軟件的安全性和有效性方面。
-SBOM 的概念更為寬泛,各行各業(yè)都在使用它來管理軟件供應(yīng)鏈,并通過提高系統(tǒng)中使用的軟件項目的透明度來改善網(wǎng)絡(luò)安全。
b) SBOM 的目標(biāo)是什么?
SBOM 旨在為制造商及其客戶(如軟件運(yùn)營商)和監(jiān)管機(jī)構(gòu)或公告機(jī)構(gòu)服務(wù)。
制造商的目標(biāo)
-滿足監(jiān)管要求(詳見下文)。
-開源軟件的許可條款包括披露開源軟件是器械組成部分的義務(wù)。
-制造商必須迅速發(fā)現(xiàn)所使用組件中的漏洞(例如,通過與 NIST 數(shù)據(jù)庫進(jìn)行核對)并加以修復(fù)。這就要求他們準(zhǔn)確地知道自己的器械包含哪些組件。SBOM 使這種漏洞分析自動化成為可能。
-這些知識也有助于風(fēng)險分析,尤其是 FMEA。這是因為這種分析方法首先假設(shè)器械的組件存在故障。
-制造商還必須在產(chǎn)品上市后階段繼續(xù)進(jìn)行這種分析,特別是作為上市后監(jiān)督的一部分。
-在開發(fā)過程中,了解(并定義)哪些組件用于哪些版本非常重要。版本沖突和冗余組件經(jīng)常會導(dǎo)致軟件誤動作,增加故障排除的難度。因此,SBOM 成為配置管理的一部分。
-最后,SBOM 可以成為供應(yīng)商管理的一部分。它將組件與供應(yīng)商及其流程和設(shè)備(組件)的要求聯(lián)系起來。它通過唯一標(biāo)識組件并將其分配給相應(yīng)的供應(yīng)商,促進(jìn)了制造商和供應(yīng)商之間的溝通。
運(yùn)營商的目標(biāo)
-操作員可以使用 SBOM 來確定自己是否受到安全漏洞的影響,他們必須向制造商或 "漏洞數(shù)據(jù)庫 "報告這些漏洞,并在必要時自行消除。
-在安裝過程中,SBOM 對于識別和避免組件之間的版本沖突非常有用。例如,當(dāng)運(yùn)營商在一個平臺上安裝多個設(shè)備(來自多個制造商)時,就會發(fā)生此類糾紛。
主管當(dāng)局和公告機(jī)構(gòu)的目標(biāo)
主管當(dāng)局和公告機(jī)構(gòu)必須確保制造商符合法規(guī)要求。
-如果制造商能提供 SBOM,這就表明其符合要求。
-如果制造商還能合理地展示它是如何(自動)創(chuàng)建 SBOM 的,這也表明它了解自己的系統(tǒng)并對配置管理進(jìn)行了控制。
這兩個因素都有助于主管當(dāng)局和公告機(jī)構(gòu)滿足其自身的監(jiān)管要求。
2. 監(jiān)管要求
美國FDA明確要求采用 SBOM。在其他法律領(lǐng)域,SBOM 是必不可少的,因為它們是最先進(jìn)的,沒有它們就無法履行其他法律義務(wù)。
a) 歐盟要求
對醫(yī)療器械的具體要求
MDR 附錄 I 第 17.2 節(jié)以及類推 IVDR 并不要求 SBOM,而 "僅"要求 IT 安全符合最新技術(shù)水平。但 SBOM 就是最新技術(shù)。
MDCG 2019-16 rev. 1 也沒有明確要求使用 SBOM。不過,它確實要求進(jìn)行漏洞監(jiān)測。
MDCG 2019-16 rev. 1
“This may include the infield monitoring of the software’s vulnerabilities and the possibility to perform a device update (outside the context of a field safety corrective action) through, for example delivering patches to ensure the continued security of the device.”
如果沒有 SBOM,就很難實現(xiàn)這一過程的自動化和有意義的實施。
即使是未來的統(tǒng)一標(biāo)準(zhǔn) IEC 81001-5-1,也沒有明確要求 SBOM。但它說
IEC 81001-5-1, note in E.2.4
“The software bill of material (SBOM) is a documentation that tracks all incorporated software.”
IEC TR 60601-4-5 針對醫(yī)療電氣系統(tǒng)的要求,也明確適用于作為醫(yī)療器械的軟件。該標(biāo)準(zhǔn)描述了 "安全材料清單":
IEC TR 60601-4-5
“A SECURITY concept related cyber SECURITY Bill of Material including but not limited to a list of commercial, open source, and off-the-shelf software and hardware components. The list should enable the target groups to effectively manage their ASSETS, to understand the potential impact of identified vulnerabilities to the MEDICAL DEVICE (and the connected IT-NETWORK), and to deploy COUNTERMEASURES to maintain the ESSENTIAL FUNCTION of the MEDICAL DEVICE.”
公告機(jī)構(gòu)的解釋仍然謹(jǐn)慎。IG-NB 的立場文件和 TEAM-NB 的立場文件均未提及 SBOM。
對所有設(shè)備的要求
Cyber Resilience Act確實將醫(yī)療器械排除在外,因為它們已經(jīng)遵循垂直立法。但有趣的是,該法在 13 個段落中提到了 "軟件材料清單"(SBOM)。
Cyber Resilience Act, Annex I, Section 2
Manufacturers of the products with digital elements shall: (1) identify and document vulnerabilities and components contained in the product, including by drawing up a software bill of materials in a commonly used and machine-readable format covering at the very least the top-level dependencies of the product;
為了使以前未公布的法律的實施更加切實可行,BSI(Bundesamt fur Sicherheit in der Informationstechnik)發(fā)布了 Technical Guideline TR03183。TR03183-2 部分的標(biāo)題是 "軟件材料清單 (SBOM)",并制定了相應(yīng)的要求。這些要求可以理解為普遍適用的技術(shù)水平。
3. 總結(jié)和結(jié)論
在沒有 SBOM 的情況下交付軟件是不符合最新技術(shù)水平的。在美國,這是一項法定要求。
有許多工具可用于創(chuàng)建軟件材料清單,并將其與漏洞數(shù)據(jù)庫進(jìn)行自動比對。
醫(yī)療器械制造商尤其必須履行其設(shè)備的 IT 安全責(zé)任。
因此,沒有任何理由不使用 SBOM。
