特约专栏| 2022年5月31日

FDA发布医疗设备网络安全指南

通过约翰Giantsidis, CyberActa, Inc.总裁。

专家网络数字革命带来了物联网(IoT)、医疗物联网(IoMT)、软件即医疗设备(SaMD)以及渗透到医疗保健环境(包括医院和家庭)的连接设备,同时也带来了对受损的连接医疗设备及其所连接的网络进行网络攻击和入侵的可能性。

医疗保健已被证明是网络威胁行为者(也称为黑客)的一个有价值的目标,医疗设备越来越多地成为恶意网络攻击的目标,这不仅会导致数据泄露,还会增加医疗保健交付成本,并最终影响患者的健康结果。1

这些攻击的后果,以及相应的安全和财政影响,促使许多政府机构和其他行为体(行业协会、技术学会、标准组织、研究机构、政策团体和非政府组织)采取措施保护自己和公民。在欧盟,MDR和IVDR要求都要求考虑医疗器械的网络安全,医疗器械协调小组(MDCG)在其指南中指导制造商如何满足MDR和IVDR附件I中关于网络安全的所有相关基本要求。2在澳大利亚,药品管理局将医疗设备网络安全视为基本原则的一部分,TGA要求网络安全“通过应用公认的关于质量管理体系和风险管理框架的最佳实践来满足基本原则,这通常是通过应用最先进的标准。”3.

自2005年以来,FDA一直在努力加强医疗设备的网络安全,FDA的最新努力是期望安全的指导草案贯穿整个产品生命周期(TPLC)。另一项努力是国会两党支持《2022年保护和转变网络医疗保健法案》(PATCH法案),4该法案如果通过,将修改现行的联邦食品、药物和化妆品法案。然而,如果PATCH法案通过了,我们再来讨论一下。

FDA关于医疗设备网络安全的指导草案提供了该机构将如何应用现有监管要求的见解。但是如何才能满足FDA对医疗设备网络安全的期望呢?

首先,重要的是要理解FDA指南的范围非常广泛,涵盖了包含软件(包括固件)或可编程逻辑的设备,以及SaaMD,并且预计将用于:

  • 上市前通知(510(k))提交
  • De Novo请求
  • 上市前批准申请(PMA)和PMA补充
  • 产品开发协议(pdp)
  • 研究器械豁免(IDE)/人道主义器械豁免(HDE)提交
  • 联邦食品、药物和化妆品法案(FD&C法案)所指的所有设备,无论它们是否需要上市前提交。

医疗设备网络安全原则

FDA指南建立了六个广泛的期望,并引入了安全产品开发框架(SPDF)的新概念,它包括产品生命周期的所有方面,包括开发、发布、支持和退役,以满足21 CFR Part 820中的质量体系法规(QSR):

  1. 网络安全是设备安全和QSR的重要组成部分
  2. 设计安全
  3. 透明度
  4. 安全风险管理
  5. 安全体系结构
  6. 测试/客观证据

网络安全是设备安全和QSR不可分割的一部分

FDA指南规定了对具有网络安全风险的设备的安全性和有效性的合理保证与期望此类网络安全风险由QSR管理之间的联系。FDA借鉴了NIST并引入了安全产品开发框架(SPDF)概念,类似于NIST的安全软件开发框架5并建议这种与产品和软件开发、风险管理和质量体系的集成可以满足网络安全QSR。以下原则可以被认为是FDA在SPDF方面的基本做法:

  1. 定义产品开发的安全需求:确保产品开发的安全需求在任何时候都是已知的,这样它们就可以在整个TPLC中被考虑到,并且可以将重复工作减少到最低限度,因为需求信息可以一次性收集并共享。这包括来自内部来源的需求(例如,组织的方针、业务目标和风险管理策略)和外部来源的需求(例如,适用的法律法规)。
  2. 实现角色和责任:确保参与TPLC的组织内外的每个人都准备好在整个TPLC中执行他们与TPLC相关的角色和责任。
  3. 实现支持工具链:使用自动化来减少人力,并在整个TPLC中提高安全实践的准确性、可重复性、可用性和全面性,同时提供一种方法来记录和演示这些实践的使用。
  4. 定义和使用产品安全性检查的标准:通过定义和使用在开发过程中检查产品安全性的标准,帮助确保TPLC产生的产品符合组织的期望。
  5. 实施和维护安全的产品开发环境:确保产品开发环境的所有组件都受到强有力的保护,免受内部和外部威胁,以防止环境或正在其中开发或维护的产品受到损害。
  6. 保护所有形式的代码免受未经授权的访问和篡改:帮助防止对代码的未经授权的更改,无论是无心的还是有意的,这些更改可能会绕过或否定产品预期的安全特性。
  7. 提供一种验证产品发布完整性的机制:帮助产品/软件购买者确保他们获得的产品/软件是合法的,没有被篡改过。
  8. 存档和保护每个产品发布:保存产品/软件发布,以帮助识别、分析和消除发布后在产品/软件中发现的漏洞。
  9. 设计产品以满足安全需求并降低安全风险:识别和评估产品的安全需求;确定软件在运行过程中可能面临哪些安全风险,以及软件的设计和架构应如何减轻这些风险;并证明任何基于风险的分析表明应该放松或放弃安全要求的情况。
  10. 审查产品设计以验证安全要求和风险信息的符合性:帮助确保产品满足安全要求并令人满意地处理识别的风险信息。
  11. 在可行的情况下重用现有的、安全良好的软件,而不是复制功能:通过重用已经检查过安全状况的软件模块和服务,降低软件开发成本,加快软件开发,并降低在产品中引入额外安全漏洞的可能性。这对于实现安全功能的软件尤其重要,比如加密模块和协议。
  12. 通过遵循安全编码实践来创建源代码:通过最小化在源代码创建过程中引入的符合或超过组织定义的漏洞严重标准的漏洞,减少软件中的安全漏洞数量并降低成本。
  13. 配置编译、解释器和构建过程以提高可执行安全性:减少软件中的安全漏洞数量,并通过在测试发生之前消除漏洞来降低成本。
  14. 审查和/或分析人类可读的代码,以识别漏洞并验证是否符合安全需求:帮助识别漏洞,以便在软件发布之前纠正它们,以防止被利用。
  15. 测试可执行代码以识别漏洞并验证是否符合安全需求:帮助识别漏洞,以便在产品发布之前纠正漏洞,以防止被利用。
  16. 将产品配置为默认安全设置:帮助在安装时提高产品的安全性,以降低产品部署时使用弱安全设置的可能性,从而使其面临更大的泄露风险。
  17. 持续识别和确认漏洞:帮助确保快速识别漏洞,以便根据风险快速修复漏洞,减少攻击者的机会窗口。
  18. 评估、优先排序并修复漏洞:帮助确保根据风险对漏洞进行修复,以减少攻击者的机会窗口。
  19. 分析漏洞以确定其根本原因:有助于减少未来漏洞出现的频率。

设计安全

FDA指南设定了设备必须满足真实性、完整性、授权、可用性、机密性以及安全和及时更新和可修补性的安全目标的期望。为达到这些目标所需的保安要求的程度将取决于:

  • 器械的预期用途和使用适应症,
  • 电子数据接口的存在和功能,
  • 预期的和实际的使用环境,
  • 目前网络安全漏洞的类型,
  • 漏洞的可利用性,以及
  • 利用脆弱性对患者造成伤害的风险。

例如,当设备评估和确保以下方面的真实性时,它将被视为适当地说明了真实性:

  1. 静止(存储)的信息,
  2. 传输中的信息,
  3. 通信端点的实体身份验证,无论这些端点是由软件还是硬件组成,
  4. 软件的二进制文件,
  5. 当前运行软件的执行状态的完整性
  6. 制造商的威胁模型和/或风险分析显示需要的系统的任何其他适当部分。

对展示的期望完整性(代码,数据或执行)提供了一个说明性的例子:

代码

  1. 验证软件/固件内容、版本号和其他元数据的身份验证标记(例如,签名、消息身份验证码[mac])。
  2. 安装加密认证的固件和软件更新,不允许在没有加密认证或认证失败的地方进行安装。使用加密签名更新可以确保新更新代表授权的版本更改,从而帮助防止任何未经授权的保护级别降低。
  3. 确保在执行之前验证软件、固件和配置的真实性,例如,基于数字签名的“allow-listing”。
  4. 在交付产品之前,禁用或以其他方式限制对所有测试和调试端口(例如,JTAG, UART)的未授权访问。
  5. 在设备框及其敏感通信端口上使用防篡改封条,有助于验证设备的物理完整性。

数据

  1. 验证所有输入数据的完整性,确保数据在传输或静止时没有被修改。
  2. 验证所有来自外部源的数据是否格式良好,并且符合预期的协议或规范。此外,验证数据范围以确保它们在安全范围内。
  3. 保护必要的数据完整性,以确保设备的安全性和有效性。

执行

  1. 当代码在设备上执行时,验证其完整性。
  2. 检查所有使用自动(例如,静态和动态分析)和手动(例如,代码审查)方法处理外部数据解析的代码。

透明度

FDA指南的结论是,透明度对于确保设备和系统的安全有效使用和集成至关重要,这种透明度可以通过设备标签和漏洞管理计划传达。

对于存在网络安全风险的设备,FDA还认为,通过标签告知用户安全信息可能是QSR设计控制的重要组成部分,有助于减轻网络安全风险,并有助于确保设备的持续安全性和有效性。然而,需要提醒的是:任何转移给用户的风险都应该被详细描述,并考虑在可用性测试(例如,人为因素测试)期间作为任务来包含,以确保用户有能力采取适当的行动来管理这些风险。FDA概述了以下标签,以向用户传达安全信息:

  1. 设备说明和产品规范涉及适合预期使用环境的推荐网络安全控制(例如,反恶意软件、防火墙的使用、密码要求)。
  2. 为用户提供足够详细的图表,允许实施建议的网络安全控制。
  3. 预期用于接收和/或发送数据的网络端口和其他接口的列表。
  4. 关于支持基础设施要求的用户指南,以便设备能够按预期运行(例如,最低网络要求,支持的加密接口)。
  5. 软件物料清单(SBOM),其格式供用户有效地管理其资产,了解已识别的漏洞对设备(和连接的系统)的潜在影响,并部署对策以维护设备的安全性和有效性。
  6. 描述用户下载可识别版本的制造商授权软件和固件的系统程序,包括描述用户如何知道软件何时可用。
  7. 描述设计如何使设备能够在检测到异常情况(即安全事件)时做出响应,以保持安全性和有效性。
  8. 对保护关键功能的设备特性的高级描述(例如,备份模式,禁用端口/通信等)。
  9. 备份和恢复特性的描述,以及恢复已验证配置的过程。
  10. 通过认证的授权用户保留和恢复设备配置的方法的描述。
  11. 对已发货设备的安全配置的描述,对设备制造商实现的强化选项可能做出的风险权衡的讨论,以及用户可配置更改的说明。
  12. 描述如何捕获法医证据,包括但不限于为安全事件保存的任何日志文件。日志文件描述应该包括日志文件的定位、存储、回收、归档方式和位置,以及自动化分析软件如何使用它。
  13. 允许安全网络部署和服务的技术说明,以及用户在检测到网络安全漏洞或事件时如何响应的说明。
  14. 有关设备网络安全支持终止和生命终止的信息(如果已知或预期)。如果设备在支持结束后仍在服务中,制造商应该有一个预先建立和事先沟通的风险转移流程,强调终端用户面临的网络安全风险可能会随着时间的推移而增加。
  15. 关于通过对敏感、机密和专有数据和软件的产品进行消毒来安全地退役设备的信息。

FDA的指导进一步期望制造商制定一个正式的计划,说明他们将如何识别和传达在向用户发布设备后发现的漏洞。本计划应与21 CFR 820.30(g)项下的风险管理流程和21 CFR 820.100项下的纠正和预防措施流程保持一致。

安全风险管理

“安全风险管理应该成为制造商质量体系的一部分。”这是FDA的期望,并进一步阐明了执行安全风险管理的过程与执行ISO 14971:2019中所述的安全风险管理不同。FDA指南设定了安全风险评估的预期,即重点关注可利用性,或利用设备和/或系统中存在的漏洞的能力,FDA建议制造商建立安全风险管理流程,该流程至少包括设计控制、生产流程验证以及纠正和预防措施,以确保充分解决安全和安全风险。FDA指南强调了以下安全风险管理实践:

威胁建模

FDA认为威胁建模是“基础的”,是安全风险管理的一个组成部分。威胁建模文档最终应说明评估的风险和为系统实施的控制如何解决安全性和有效性问题。FDA指南对威胁建模设定了以下期望:

  • 识别系统风险和缓解措施,并告知作为安全风险评估一部分考虑的缓解前和缓解后风险,
  • 说明对系统或使用环境的任何假设(例如,医院网络本质上是敌对的;因此,建议制造商假定攻击者通过更改、丢弃和重放数据包的能力控制网络),并且
  • 捕捉贯穿始终的网络安全风险
    • 供应链,
    • 制造、
    • 部署,
    • 与其他设备的互操作,
    • 维护/更新活动,以及
    • 退役活动流程。

3.理查德·道金斯方软件

FDA明确表示,为了证明符合质量体系设计控制并支持供应链风险管理流程,所有软件,包括设备制造商开发并从第三方获得的软件(“专有软件”),都应评估网络安全风险,并应对该风险进行处理。此外,制造商必须实施流程和控制,以确保其供应商符合制造商的网络安全要求。这意味着网络安全必须扩展到供应商管理实践,并按照21 CFR 820.181的要求记录在设备主记录中。

软件物料清单

FDA指南非常强调软件物料清单(SBOM)的流程和发布,并将SBOM中的更改视为设计历史文件(21 CFR 820.30)和设备主记录(21 820.181)的一部分。任何业界接受的soms格式都可以使用,但必须包括以下信息:

  1. 软件组件所在的资产,
  2. 软件组件名称,
  3. 软件组件版本
  4. 软件组件制造商,
  5. 软件组件制造商通过监控和维护提供的软件级别支持;
  6. 软件组件的支持终止日期和
  7. 任何已知的漏洞。

安全体系结构

FDA概述了制造商有责任识别其设备和他们期望这些设备运行的系统中的网络安全风险,并实施适当的控制来减轻这些风险。这些风险可能包括由设备依赖于医院网络或云基础设施而引入的风险,因此,FDA指南草案要求安全架构信息证明在风险管理过程中考虑的风险得到了充分控制,这反过来又支持了医疗设备系统的安全性和有效性的证明。

FDA指南依赖于21 CFR 820.30(b)、(c)和(d)的现有监管框架,期望设备安全架构的设计流程、设计要求和验收标准全面解决设备和设备运行系统的网络安全考虑因素。预期对整个系统进行分析,以了解设备预期运行的完整环境和上下文,安全架构应包括对系统级风险的考虑,包括但不限于与供应链相关的风险(例如,确保设备不受恶意软件或继承自上游依赖关系(如第三方软件)的漏洞的影响)、设计、生产和部署(即:进入一个连接的/网络化的环境)。

除了设计控制要求(即21 CFR 820.30(b)、21 CFR 820.30(c)、21 CFR 820.30(d)和21 CFR 820.30(g))之外,FDA建议,根据21 CFR 820.100,制造商开发和维护安全架构视图文档作为系统设计、开发和维护过程的一部分。如果确定了纠正和预防措施,这些视图可以用来帮助确定受影响的功能和解决风险的解决方案。

FDA建议在上市前提交的文件中至少提供以下类型的安全架构视图(图表和解释性文本):

  • 全局系统视图,
  • 多病人伤害观,
  • 可更新性/可补丁性视图和
  • 安全用例视图。

这些安全体系结构视图分别是:

  • 识别与安全相关的系统元素及其接口,
  • 定义系统的安全上下文、域、边界和外部接口,
  • 使架构与以下内容保持一致:
    • 系统安全目标和要求,
    • 安全设计特点,以及
  • 建立架构元素到用户和系统安全需求的可追溯性。

网络安全测试/客观证据

根据现有的QSR, FDA指南草案声明,验证和验证活动应包括对系统网络安全进行的充分测试,制造商通过该测试验证和验证其输入和输出。FDA进一步总结说,网络安全控制需要在标准软件验证和验证活动之外进行测试,以证明控制在适当的安全环境中的有效性,从而证明该设备具有合理的安全性和有效性保证。以下网络安全测试和相应的客观证据将被视为支持上市前提交的最低要求:

  • 安全需求
    • 证明每个设计输入安全要求都成功实现了。
    • 边界分析的证据和边界假设的基本原理。
  • 缓解气候变化的威胁
    • 根据系统、用例和调用流视图中提供的威胁模型演示有效风险控制措施的测试证据。
    • 每个网络安全风险控制的充分性的证据。
  • 漏洞测试-关于以下测试的证据:
    • 滥用案件,畸形和意外的输入
      • 鲁棒性
      • 模糊测试
    • 攻击面分析
    • 漏洞链接
    • 已知漏洞扫描的闭箱测试
    • 二进制可执行文件的软件组成分析
    • 静态和动态代码分析,包括测试“硬编码”、默认、容易猜测和容易泄露的凭证。
  • 渗透测试——通过专注于发现和利用产品中的安全漏洞的测试来识别和描述与安全相关的问题。
  • 定期进行网络安全测试——定期进行网络安全测试,以确保在潜在漏洞被利用之前识别并解决它们。

总结

FDA的医疗设备网络安全指南将要求制造商的带有软件、固件或可编程逻辑的设备,以及作为医疗设备的软件(SaMD)的设备,最大限度地降低与这些设备的设计、安全性和使用相关的网络安全风险。制造商必须生成和维护有关用于管理医疗设备网络安全的质量管理体系和风险管理框架的证据,以证明合规性。总体而言,FDA认识到网络安全威胁形势正在迅速演变,需要医疗设备制造商持续监测并采取适当的纠正和预防措施,同时及时与医疗设备用户沟通,以建立他们对网络安全威胁的意识。感兴趣的利益相关者可以在2022年7月7日前就本指南草案提交意见,供FDA审议。FDA-2021-D-1158可在https://www.regulations.gov/docket/FDA-2021-D-1158

作者简介:

约翰·吉安特西迪斯是最棒的CyberActa公司是一家精品咨询公司,为医疗设备、数字健康和制药公司提供网络安全、隐私、数据完整性、风险、监管合规和商业化方面的支持。他是佛罗里达律师技术委员会的副主席,也是美国海军陆战队的网络助理。他持有克拉克大学(Clark University)理学学士学位,新罕布什尔大学(University of New Hampshire)法学博士学位,以及乔治华盛顿大学(the George Washington University)网络安全政策和合规工程硕士学位。可以在……找到他john.giantsidis@cyberacta.com