本项研究由来自英国贝尔法斯特女王大学的Ahmad Al-Zuraiqi和Des Greer共同完成,发表于2025年的IEEE/ACM第6届关键系统工程与网络安全国际研讨会(ENCYCRIS)的会议论文集中。
本研究属于物联网安全与软件工程交叉领域。随着物联网设备数量的激增,其固件中存在的安全漏洞已成为重大隐患,可能导致未经授权的访问、数据泄露甚至关键基础设施的攻击。尽管已有多种静态分析工具用于识别固件漏洞,但现有方法多侧重于孤立漏洞的检测,缺乏对固件层面系统性安全风险的深入探究,也未能提供一个贯穿物联网设备整个开发生命周期的综合性安全缓解框架。特别是针对医疗、工业等关键领域的物联网设备,其固件的脆弱性可能带来灾难性后果。因此,本研究旨在通过大规模静态分析,系统性地揭示物联网固件中普遍存在的漏洞模式,并基于此提出一个主动的、贯穿生命周期的安全设计框架,以从根源上提升物联网生态系统的安全性。
本研究采用了一个系统化、可扩展的方法论,主要包含三大核心步骤:固件数据集准备、静态分析与分类、以及系统性缓解框架的构建与验证。
第一步:固件收集与数据集准备 研究人员从公开的厂商网站和档案平台收集了海量固件样本,最终构建了一个包含1,520个固件映像的精选数据集。为确保分析的广泛代表性,数据集涵盖了不同制造商、设备类别(如无线路由器、DSL调制解调器、物联网集线器)和固件发布日期。同时,研究利用Wikidevi档案库提取了每个固件的元数据,包括硬件规格、CPU架构、内存容量和FCC认证日期等,为后续的上下文分析和趋势发现提供了基础。所有不完整或损坏的固件映像均被排除在外,以保证分析质量。研究在由11台专用裸金属服务器组成的高性能计算环境中进行,以确保处理效率和安全性。
第二步:使用FACT进行静态分析 研究采用固件分析与比较工具(Firmware Analysis and Comparison Tool, FACT) 作为核心静态分析工具。FACT是一个开源的、高度可扩展的框架,本研究通过配置其插件架构来最大化漏洞检测效能。关键的配置和流程包括: 1. 固件解包:解压缩固件映像,提取其中嵌入的文件、配置数据和二进制文件。 2. 组件分析:利用FACT的多个插件对提取的组件进行深入分析: * CVE查找插件:将固件组件与通用漏洞披露(CVE)数据库进行交叉比对,识别已知漏洞。 * 加密材料插件:检测嵌入的加密材料,如密钥、证书,以及已被弃用的加密算法。 * 用户和密码检测器:识别硬编码的凭证,如默认或工厂设置的用户名和密码。 * CWE映射插件:将识别出的漏洞映射到通用缺陷枚举(CWE)类别,实现结构化分类。 * 启发式检查:启用高级启发式方法,以发现隐藏的文件系统、配置数据,并解包复杂的固件映像。 3. 分类与标注:根据CWE代码对漏洞进行分类,并将其与特定的设备类型和制造商关联起来。 4. 结果汇总:将发现的问题整合为可操作的见解,突出显示系统性模式和漏洞。
第三步:分类、趋势分析与RMMIDL框架构建 在完成基础漏洞识别后,研究进行了更深层次的分析以揭示广泛模式: * 设备类型趋势:按设备类别(如路由器、调制解调器)对漏洞进行分组,识别高风险设备类别。 * 制造商趋势:分析不同制造商的漏洞情况,揭示系统性安全问题(如对过时软件库的依赖)。 * 时间趋势:探究固件发布日期与漏洞频率之间的关系。 * 组件依赖集群:识别对第三方库(如BusyBox和OpenSSL)的常见依赖,突显设备间共享的漏洞。
基于这些实证发现,研究提出了物联网开发生命周期风险缓解建模(Risk Mitigation Modeling for IoT Development Lifecycle, RMMIDL)框架。RMMIDL是一个包含十个相互关联阶段的“安全设计(Secure-by-Design)”框架,其核心思想是将安全考量主动嵌入物联网设备从需求到退役的整个生命周期,而不仅仅是事后补救。这十个阶段包括:物联网需求阶段、物联网硬件设计/升级、物联网固件设计、物联网硬件/固件协同验证、物联网“设计漏洞”预测、物联网固件开发/升级、物联网固件测试、物联网漏洞验证、物联网硬件制造、以及物联网支持。每个阶段都设计了具体的安全活动,以应对研究中发现的关键漏洞类型,如硬编码凭证、过时的加密库和暴露的调试接口。
研究通过对1,520个固件样本的分析,揭示了普遍存在的系统性漏洞模式。
高发漏洞分析:研究识别了最常见的CWE类别。其中,格式字符串处理不当(CWE-134) 和暴露的调试工具(CWE-782) 出现频率最高,各占样本的10.07%。紧随其后的是内存管理漏洞,如释放后使用(CWE-416, 10.06%) 和双重释放(CWE-415, 10.03%)。此外,弱加密算法(CWE-327, 9.96%) 也广泛存在。这些数据表明,不安全编码实践和缺乏严格的生产环境检查是固件安全的主要痛点。
软件模块分析:研究发现物联网固件严重依赖一系列共享的软件模块。BusyBox(15.81%)、Linux内核(14.62%)和OpenSSL(12.86%) 是最常出现的前三大组件。这些模块虽然是设备功能的支柱,但也因其普遍存在的已知漏洞而成为系统性风险放大器。例如,大量样本使用了过时的Linux内核版本(如2.6.36)和BusyBox版本(如1.19.4)。
制造商与设备类型差异:分析揭示了明显的模式差异。例如,无线路由器更容易出现CWE-134(格式字符串)漏洞,而DSL调制解调器则更频繁地受到CWE-782(暴露调试工具)的影响。不同制造商之间也存在显著差异,一些厂商因大量共用存在漏洞的第三方组件而表现出更高的整体风险暴露。
RMMIDL框架的实证支持:分析结果为RMMIDL框架的各个阶段提供了直接依据。例如,高发的CWE-134和CWE-782漏洞分别强调了在固件设计阶段纳入自动字符串验证机制、在固件测试阶段进行严格的调试功能禁用检查的必要性。设备类型特定的漏洞趋势也证明了“设计漏洞预测”阶段的价值,即可以针对特定设备类别的常见弱点进行预防性设计。
本研究得出结论,物联网固件中存在广泛的系统性安全漏洞,这些漏洞根源于开发实践、供应链依赖和测试不足。作为应对方案,研究提出并初步验证了RMMIDL框架,这是一个旨在从设计源头解决这些问题的结构化、生命周期导向的方法。该框架不仅有助于制造商主动降低固件风险,还为学术界和工业界提供了评估和改进物联网安全实践的新视角。其科学价值在于将大规模实证分析与前瞻性工程框架相结合,为理解和管理复杂的物联网系统风险提供了方法论。应用价值则体现在为物联网设备制造商、特别是涉及关键基础设施的厂商,提供了一套可操作的安全开发指南,有助于提升整个物联网生态的韧性。
研究在展望部分指出了未来的研究方向,包括:集成大型语言模型以辅助漏洞分析和代码审查;扩大固件数据集的覆盖范围,纳入企业级和车联网等更复杂系统的样本;利用机器学习基于设备类型、架构和历史趋势构建预测模型;以及推动行业协作,促进安全实践和标准的广泛采用。这些方向为后续研究提供了清晰的路线图。