在2023年,医疗设备中发现的漏洞数量增长了59%,达到993个,其中64%的漏洞是在软件中发现的。另一项分析国家漏洞数据库的研究预测,在2024年和2025年,医疗设备和软件中的关键漏洞数量将继续增加。
未被发现的漏洞和错误可能导致设备故障、患者受伤,甚至在最严重的情况下导致死亡。一份记录案例表明,由于缓冲区溢出问题导致泵在患者使用时出现故障代码,最终导致患者死亡。
根据Forrester的《2024年预测;医疗行业》报告,与网络攻击相关的患者死亡人数将翻倍,这也是为什么像美国食品和药物管理局 (FDA)这样的政府机构越来越关注医疗设备的网络安全。
为了确保医疗设备的安全性和网络安全性,FDA支持一系列标准和指南,强烈建议医疗设备制造商遵循如果不遵循这些指南,您将无法获得美国市场的准入批准。
涵盖医疗设备网络安全要求的最重要文件包括:
这些文件适用于所有类别的医疗器械:
上述前两个指南建议采用模糊测试作为漏洞和鲁棒性测试的手段
什么是模糊测试
模糊测试(Fuzzing),又称为模糊测试技术,是一种动态应用安全测试方法,用于发现软件中的漏洞和缺陷。在模糊测试中,通过向程序输入无效、意外或随机的数据,旨在揭示潜在漏洞或导致应用程序崩溃的问题。
模湖测试在缓解缓冲区溢出、内存损坏、代码注入,拒绝服务以及其他在C/C++编程中常见的漏洞方面特别有效,因此受到嵌入式软件工程师的广泛欢迎。
使用源码(白盒)模糊测试时,模糊测试不仅可以发现漏洞,还能够增强根本原因分析。由于与源代码直接相关,它能够精确定位问题发生的位置以及触发问题的输入,从而帮助开发人员快速重现漏洞并立即着手修复。
模糊测试在FDA医疗设备网络安指导中的作用
FDA的指导文件,标题为《医疗设备中的网络安全:质量体系考量与上市前提交内容》,强调了在医疗设备全生命周期的设计和开发中整合网络安全措施的重要性。FDA建议的核心是采用安全产品开发枢架(SPDF),旨在通过测试和缓解新兴网络安全风险来减少漏洞,SPDF的关键在于实施强大的安全测试方法。
FDA建议将模糊测试作为一种漏洞测试方法,用于测试和分析误用或滥用以及格式错误和意外输入的情况,如在”C.网络安全测试”部分所述。
安全测试文档和任何相关报告或评估应提交至上市前申查中。FDA建议以下测试类型可被纳入提交内容:
▶制造商应提供以下测试和分析的详细信息和证据:
▶ 涨用或误用案例,格式错误和意外输入:
鲁棒性测试
模糊测试
▶攻击面分析
▶漏洞链分析
▶已知漏洞扫描的封闭式测试;
▶ 进制可执行文件的软件组成分析;
▶静态和动态代码分析,包括测试硬编码、默认,易猜测或易被攻的的凭证。
模糊测试在 AAMI TIR57:2016《医疗设备安全原则-风险管理》中的作用
AAMI(医疗器械促进协会)也推荐将模糊测试作为证安全风险的鲁棒性测试方法。
其技术信息报告 TIR 57:2016《医疗设备安全原则风险管理》旨在帮助制造商实施有效的风险管理实践,以确保设备的安全性和网络安全性。该文件为在 ISO 14971和 NISTSP 800-30 要求的安全风险管理流程下实施医疗设备信息安全风险管理提供了指导方法。
TIR 结合了IEC 80001-1 对风险管理的扩展视角,涵盖了安全性、有效性以及数据与系统安全的关键属性,并附有提供流程细节和示例的附录。
为什么模糊测试非常推荐用于医疗设备
模糊测试在测试嵌入式系统(包括医疗设备和器械方面特别高效。原因如下:
检测关键漏洞和安全隐患,包括内在损坏问题。通过向医疗软件输入意外或无效的数据,现代模糊测试工具能够发现与内存通信相关的危险边界案例和行为。这些问题包括缓中区溢出、内存损坏以及与内存不安全语言(如 C/C++)相关的其他问题。部分问题列举如下:
不需要源代码,高度自动化快速发现漏洞
黑盒模糊测试工具着眼于程序外部结构,不需要了解程序的内部逻辑和代码,且不依赖测试人员的经验,以用户的角度,从输入数据与输出数据的对应关系出发进行测试。高度自动化的特性,使模糊测试工具可以在没有人工干预的情况下持续运行,从而高效地发现程序中的错误,并且误报率低。
在程序开发时尽早发现漏洞
模糊测试可以集成到开发流程中,在你有可执行程序后立即进行自动测试一包括集成测试和系统测试阶段。通过尽早利用模糊测试,你可以在医疗设备上市之前就发现漏洞和安全问题。
能够发现其他测试方式无法发现的漏洞
模糊测试可以随机生成各种不同的输入数据,可以增强测试的覆盖率,从而测试系统的容错性和鲁棒性,发现更多的潜在问题。黑盒模糊测试更接近系统的真实使用环境,覆盖更多的输入场景和边界条件,能够发现灰白盒模糊测试无法发现的问题例如芯片以及驱动层的漏洞),并且发现的问题更有价值。
模糊测试工具
Wisdom 是由我们提供的一种自动化黑盒协议模糊测试解决方案,专为自动化安全测试设计,无需任何协议或模糊测试相关知识开箱即用。它在医疗设备发布前期检测关键漏洞,并提供极具价值的测试结果。以下是其主要优势:
检测关键漏洞和安全隐患
通过建立完整的协议数据交互模板以及状态转换流程,Wisdom最大化测试覆盖率并发现各种漏洞,包括深层次问题。每个监控到的问题都代表运行代码中的实际缺陷。可以检测到的关键漏洞,例如缓冲区溢 出、越界读取/写入,空指针引用、资源耗尽等问题。
让您的工程师在几分钟内复现并修复问题,而非数周
借助 Wisdom,每个被发现的漏洞都会附带具体的证明,包括触发的测试用例、程序的异常监控信息、可复现漏洞的修复包。这能帮助开发者轻松找到问题根本原因,快速修复漏洞并加速功能发。
让 AI 自动生成测试用例和漏洞分析
创建高质量的测试用例是充分利用模糊测试优势的关键,但对于开发人员来说也会带来显著的工作负担。基于大语言模型(LLMs)自动生成测试用例,并可以根据监控日志分析漏洞原因,使您的团队更轻松地进行模糊测试。
轻松将模糊测试集成到您的CI/CD 中
将Wisdom集成到您的 CI/CD 流水线中,可在每次编译部署时自动测试您的软件,在产品上线之前,能够及时发现问题。
如果您有兴趣想了解模糊测试工具,试用,请和我们联系。
相关内容:
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。